Advertisement
Guest User

Trivial multi-port (one-client-per-port) server with fork

a guest
Oct 29th, 2012
363
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.50 KB | None | 0 0
  1. #!/usr/bin/python
  2.  
  3. import os
  4. import socket
  5. import sys
  6.  
  7. for port in (int(arg) for arg in sys.argv[1:]):
  8.   if os.fork() == 0:
  9.     s = socket.socket()
  10.     s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
  11.     s.bind(('127.0.0.1', port))
  12.     s.listen(5)
  13.     s.setblocking(True)
  14.     while True:
  15.       c, a = s.accept()
  16.       print(s.getsockname(), ' <- ', a)
  17.       while True:
  18.         buf = c.recv(80)
  19.         if not buf:
  20.           print('EOF')
  21.           break
  22.         print(buf)
  23. os.wait()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement