petite adaptation d'un morceau de code en C contenant la fonction "select" qui devrait te convenir :
fd_set fdsr;
struct timeval tv_timeout;
int findelai, tpslimite;
FD_ZERO(&fdsr);
FD_SET(c, &fdsr);
tv_timeout.tv_sec = tpslimite;
tv_timeout.tv_usec = 0;
findelai = 0;
do
{
if (select(c+1, &fdsr, NULL, NULL, &tv_timeout) <= 0)
{
// Dans le cas où le temps est écoulé, on veut sortir de la boucle
printf("D\202lai d'attente depass\202.\n");
findelai = 1;
}
if (FD_ISSET(c, &fdsr))
{
// Dans le cas où le buffer du socket contient des données
recu(c, loginr, len);
}
}while(findelai == 0);