def __init__( self, port, peer ): self.accepter = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.accepter.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) self.accepter.bind(('', port)) self.accepter.listen(1) self.conn = None self.port = self.accepter.getsockname()[1] self.peer = peer RunForeverThread(self.accept).start() self.state = StateLock(['connected','disconnected']) self.connected = threading.Event() self.connected.clear() HeaderedStream.__init__( self, self.read_from_socket, self.write_to_socket )
def read( self ): return HeaderedStream.read(self)[0]