1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| #!usr/bin/env python
import os, sys, socket, select
#nb = 1
#first = 1
host = ''
port = 5000
add = (host, port)
server = socket.socket (socket.AF_INET, socket.SOCK_STREAM) #creation socket serveur
server.bind (add) # on attribue au server une adresse et port d'ecoute
server.listen (1) # le server est actif et est attente ac queue max = 1
input = [server]
run = 1
print "Serveur connecte avec succes depuis %s sur le port %d...\n" % (host, port)
try:
while run:
read, write, error = select.select (input, [], [], 5) # on surveiller input (=server, stdin (clavier)), timeout 20
for i in read:
if i == server:
raw_input ("Appuyez sur entree pour continuer...\n")
client, (hostc, portc) = server.accept () # s'il y'a demande de connexion, creation socket client
input.append (client) # on ajoute le socket client aux choses a surveiller
print "Client %s connecte avec succes depuis le port %d...\n" % (hostc, portc)
else: # protocole test
msg = i.recv(100)
test = "TEST"
stop = "STOP"
if (test.rstrip () in msg.rstrip ()):
os.write(1, "test reussi...\n")
elif (msg.rstrip() == stop.rstrip()):
os.write (1, "Serveur arreter...BYE\n")
run = 0
else:
print ("Aucun message...BYE")
run = 0
finally:
server.close ()
print "Server shutdown...BYE"
sys.exit (0) |
Partager