Public feed #725729

Miscellany

public python v1 · immutable
Raw Edit
·published 2007-10-04 17:41 UTC
rendered paste body
import selectimport socketimport sysimport threadingimport timehost = sys.argv[1]port = 1337backlog = 5size = 1024class server(threading.Thread):	def run(self):		server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)		server.bind(('',port))		server.listen(backlog)		input = [server]		running=True		while running:			inputready,outputready,exceptready = select.select(input,[],[]) 			for s in inputready:				if s == server:					client, address = server.accept()					input.append(client)					print 'Accepted connection from ', address								else:					data=s.recv(size)					if data:						print 'Received: ',data					else:						s.close()						print 'Closed connection to ',address						input.remove()		server.close()class client(threading.Thread):	print 'Waiting 5 Seconds before connecting to other client...'	time.sleep(5)	def run(self):		s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)		s.connect((host,port))		sys.stdout.write('Send:')		line=''		while line!='ENDCHAT':			line = sys.stdin.readline()			if line=='':				break			s.send(line)			sys.stdout.write('Send:')		s.close()def main():	server().start()	client().start()	    main()