diff options
Diffstat (limited to 'tests/tcpserver.py')
-rwxr-xr-x | tests/tcpserver.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/tcpserver.py b/tests/tcpserver.py new file mode 100755 index 0000000..621bf8b --- /dev/null +++ b/tests/tcpserver.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python + +import SocketServer + +class MyTCPHandler(SocketServer.BaseRequestHandler): + """ + The RequestHandler class for our server. + + It is instantiated once per connection to the server, and must + override the handle() method to implement communication to the + client. + """ + + def handle(self): + # self.request is the TCP socket connected to the client + self.data = self.request.recv(1024).strip() + print "{} wrote:".format(self.client_address[0]) + print self.data + # just send back the same data, but upper-cased + self.request.sendall(self.data.upper()) + +if __name__ == "__main__": + import sys + HOST, PORT = "localhost", 9999 + if len(sys.argv)>1: + PORT=int(sys.argv[1]) + print("binding to %s:%s" % (HOST, PORT)) + + # Create the server, binding to localhost on port 9999 + server = SocketServer.TCPServer((HOST, PORT), MyTCPHandler) + + # Activate the server; this will keep running until you + # interrupt the program with Ctrl-C + server.serve_forever() |