def _before_send(self): super(TcpSender, self)._before_send() self._data = self._get_data() if not self.args.reconnect: addr = (self.args.destip, self.args.destport) self._sock = TcpSocket() self._sock.connect(addr)
def run(self): sock = TcpSocket() sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sock.bind((self._args.ip, self._args.port)) sock.listen(10) sockets = [sock,] while True: infds, outfds, errfds = select.select(sockets, [], []) for fd in infds: if fd == sock: client, client_addr = sock.accept() sockets.append(client) if not self._args.quiet: print(_("accept connection from {0}".format(client_addr))) else: buffer = fd.recv(1024) if len(buffer) != 0: if not self._args.quiet: print(fd.getpeername(),buffer) else: client_addr = fd.getpeername() fd.close() if not self._args.quiet: print(_("close connection from {0}".format(client_addr))) sockets.remove(fd)
def _send(self): if self.args.reconnect: addr = (self.args.destip, self.args.destport) self._sock = TcpSocket() self._sock.connect(addr) self._sock.send(self._data) if self.args.reconnect: self._sock.close()