-
connect sans accept
Bonjour,
quelqu'un pourrait -il m'éclairer sur le fonctionnement suivant?
Dans le cas de socket UNIX:
Mon serveur fait le socket, bind, listen(taille = 4 par exemple) et PAS DE ACCEPT(en peut faire un sleep long ou autre pour bloquer dans cet état).
Mon client fait le socket puis le connect est voila mon problème:
au lieu que le connect soit bloquant dans l'attente du ACCEPT côté serveur,
la connexion est acceptée avec code retour OK et je peux faire mais écriture dans la socket puis quitter sans aucun problème.
Côté serveur, si je m'arrête, les infos sont perdus sans traces.
Si je fait le accept, même après la fin du processus client, la connexion est établie et les infos sont disponnibles.
Quelqu'un peut-il m'informer sur le fonctionnement de ceux-ci et me dire si il n'y a pas moyen de bloquer le connect du client tant qu'il n'y a pas eu l'accept du Client?
Noyau 2.6.
Merci d'avance
Gui
-
Pour ce genre de question, va plutôt sur le forum Développement réseau
-
Un peu de lumière par
Alan Cox
Merci
A+
Gui
-
En effet c'est intéressant
Avec le listen, le client se connecte en file d'attente sur la socket d'écoute, et seulement lorsque l'accept arrive coté serveur, une autre socket est créée et la communication peut commencer.
Je pense que les données que ton client envoie avant que le serveur accepte la connection sont cachées quelquepart, puis envoyées dès que la connection est acceptée.