Etat Socket Linux

cybermax62 Messages postés 54 Date d'inscription mercredi 9 juin 2004 Statut Membre Dernière intervention 10 janvier 2006 - 14 avril 2005 à 10:57
meech Messages postés 209 Date d'inscription vendredi 11 avril 2003 Statut Membre Dernière intervention 14 août 2007 - 14 avril 2005 à 17:43
Existe-t-il un moyen de connaître sur un server (socket,C) l'état d'un
connection client (socket,C) utilisant le protocole SOCK_STREAM ?

Actuellement lorsque le client se déconnecte, la socket sur le server (nouvelle lors de la connexion) n'est pas mise à jour.



merci d'avance de votre aide...

1 réponse

meech Messages postés 209 Date d'inscription vendredi 11 avril 2003 Statut Membre Dernière intervention 14 août 2007
14 avril 2005 à 17:43
Salut,

Je ne suis pas certain de ce que j'avance, mais je te propose ceci :

1. Sélection du descripteur de socket concerné :
int retval = select(sd, &sdRcpt, (fd_set *)NULL, (fd_set *)NULL, (struct timeval *) NULL);
où sd constitue l'identifiant de la socket et sdRcpt son descripteur associé.

2. Vérification de la modification du flux si l'instruction suivante :
if (FD_ISSET(sd, &sdRcpt))

s'avère vraie (ie. différent de zéro).

En espérant t'avoir aidé, je te conseille d'aller jeter un oeil sur cet excellent source :
http://www.cppfrance.com/code.aspx?ID=11141

Ciao.
0
Rejoignez-nous