Fixed issue-number mistake in NEWS update.
[python.git] / Demo / sockets / echosvr.py
blobf8a9623d7130db97003095f09a4e1d5218ddfc7e
1 #! /usr/bin/env python
3 # Python implementation of an 'echo' tcp server: echo all data it receives.
5 # This is the simplest possible server, servicing a single request only.
7 import sys
8 from socket import *
10 # The standard echo port isn't very useful, it requires root permissions!
11 # ECHO_PORT = 7
12 ECHO_PORT = 50000 + 7
13 BUFSIZE = 1024
15 def main():
16 if len(sys.argv) > 1:
17 port = int(eval(sys.argv[1]))
18 else:
19 port = ECHO_PORT
20 s = socket(AF_INET, SOCK_STREAM)
21 s.bind(('', port))
22 s.listen(1)
23 conn, (remotehost, remoteport) = s.accept()
24 print 'connected by', remotehost, remoteport
25 while 1:
26 data = conn.recv(BUFSIZE)
27 if not data:
28 break
29 conn.send(data)
31 main()