Bonjour!

J'ai un soucis lorsque j'essaie de me connecter avec le client sur le serveur (qui marche très bien).

voila le code cote serveur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
 
# -*- coding:Utf-8 -*-
 
# Définition d'un serveur réseau gérant un système de CHAT simplifié.
# Utilise les threads pour gérer les connexions clientes en parallèle. 
 
HOST = '172.16.60.54'  
PORT = 45000
#HOST = '127.0.0.1'  
#PORT = 40000 
import socket, sys, threading, getpass ,  time 
from ConnexionBD import * 
from SessionInachevee import *
from Session_J import *
 
 
class ThreadClient(threading.Thread):
    '''dérivation d\'un objet thread pour gérer la connexion avec un client'''  
 
    def __init__(self, conn, adr):  
        threading.Thread.__init__(self) 
        self.connexion = conn
        self.adresse = adr 
 
    def run(self):
        # Dialogue avec le client :
        nom = self.getName()  
        # Chaque thread possède un nom              
        msgClient = self.connexion.recv(1024).decode("Utf8")                                        
        id_post = id_poste(msgClient) 
        if(exisitSessionPoste(id_post) != 0):
            session = Session_J("", "", "", "", "", "") 
            if(session.utilConnectePriorite(id_post)<5):
                duree = session.dureeRestante(id_post)
                if(duree > 0): 
                    inacheve = SessionInachevee("", "", "")
                    inacheve.inserer(id_post, duree) 
 
            extraireSession(id_post)             
            miseAjourPoste(id_post, 'N')  
            miseAjourEnreg() 
        else:
            self.stop() 
        print(msgClient)            
        # Fermeture de la connexion : 
        self.connexion.close()		# couper la connexion côté serveur
        del conn_client[nom]		# supprimer son entrée dans le dictionnaire 
 
        print("Client %s déconnecté." % nom)
 
# Le thread se termine ici
 
    def stop(self):
        self.Terminated = True
 
 
# Initialisation du serveur - Mise en place du socket :
 
mySocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)   
try:
	mySocket.bind((HOST, PORT))
except socket.error:
	print("La liaison du socket à l'adresse choisie a échoué.")   
	sys.exit()
print("Controlleur prêt, en attente de requêtes ...")
mySocket.listen(50) 
 
# Attente et prise en charge des connexions demandées par les clients :
 
conn_client = {}
 
# dictionnaire des connexions clients
 
while 1:
	connexion, adresse = mySocket.accept() 
	# Créer un nouvel objet thread pour gérer la connexion :
	th = ThreadClient(connexion, adresse) 
	th.start()
	# Mémoriser la connexion dans le dictionnaire : 
	it = th.getName() 
	# identifiant du thread 
	conn_client[it] = connexion
	print("Client %s connecté, adresse IP %s, port %s." %(it, adresse[0], adresse[1]))
	# Dialogue avec le client :
	#msg ="Vous etes connecte. Envoyez vos messages."
	#connexion.send(msg.encode("Utf8"))
et le cote client:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
#!/usr/bin/python
# -*- coding:Utf-8 -*-
 
# Définition d'un client réseau gérant en parallèle l'émission
# et la réception des messages (utilisation de 2 THREADS). 
 
host = '172.16.60.54' 
port = 45000 
 
import socket, sys, threading , getpass 
 
class ThreadControle(threading.Thread):
	"""objet thread gérant la réception des messages"""
	def __init__(self, conn):
		threading.Thread.__init__(self)
		self.connexion = conn				# réf. du socket de connexion
 
	def run(self):		
		message_emis = socket.gethostname()
		self.connexion.send(message_emis.encode("Utf8"))		 						
		self.connexion.close()
 
	def stop(self):
	        self.Terminated = True
 
 
# Programme principal - Établissement de la connexion :
 
connexion = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
	connexion.connect((host, port))
except socket.error:
	print("La connexion a échoué.")
	sys.exit()
print("Connexion établie avec le serveur.")
 
# Dialogue avec le serveur : on lance deux threads pour gérer
# indépendamment l'émission et la réception des messages :
 
th_C = ThreadControle(connexion)
th_C.start()
et voila l'erreur qui m'affiche quand un client qui veut se connecter:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
root@brahim:/home/brahim/Bureau/workspace_cherrypy# python controle_connexion_seveur.py
Controlleur prêt, en attente de requêtes ...
^CTraceback (most recent call last):
  File "controle_connexion_seveur.py", line 75, in <module>
    connexion, adresse = mySocket.accept() 
  File "/usr/lib/python2.7/socket.py", line 202, in accept
    sock, addr = self._sock.accept()
KeyboardInterrupt
cordialement.