begin process at 2012 05 30 17:18:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Windows

 > 

Réseau & Internet

 > 

Socket avec Time out sous windows


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Socket avec Time out sous windows

mardi 1 septembre 2009 à 15:18:18 | Socket avec Time out sous windows

ghanmi04_05

Bonjour,
J'ai un programme qui intercept les paquets sur une ip(de l'une de mes cartes réseaux) sous windows.

Code C/C++ :

SOCKET sock;
if((sock = socket(AF_INET, SOCK_RAW, IPPROTO_IP)) == INVALID_SOCKET)
{
printf("\n[!]Impossible de creer le socket.\n--- Erreur avec socket() : %d\n\n", WSAGetLastError());
system("pause");
return 0;
}

je voulais lorsque je reçois rien au bout de quelque seconde mon programme se ferme, j'ai ajouter un time out
Code C/C++ :
 struct timeval tv;

tv.tv_sec = 1;
tv.tv_usec =500;

if (setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO,(char *)&tv, sizeof(tv))!=0)
///
///
nbrepacket=recv(sock, packet, sizeof(packet), 0);
if(nbrepacket<0)
{
///0 paquet reçu
//Traitement avant fermeture
exit(-1);
}

mais ça foncionne pas, en faite lorsque je change mon adresse Ip le programme doit se fermer puisque il recoit plus de paquet!
Help :(

mardi 1 septembre 2009 à 17:57:48 | Re : Socket avec Time out sous windows

fregolo52

Membre Club
Réponse acceptée !

Quand je regarde dans MSDN la fonction setsockopt il y a d'écrit :

the recv function returns WSAETIMEDOUT


WSAETIMEDOUT = 10060, donc ton test

if(nbrepacket<0)

n'est pas correct.

mercredi 2 septembre 2009 à 10:43:37 | Re : Socket avec Time out sous windows

ghanmi04_05

Réponse acceptée !



Merci pour votre réponse, j'ai fais des modif sur mon code, mais aparament j'ai pas compris le fonctionnement du

Code C/C++ :
recv(..)
avec un time out au début , et oui
Code C/C++ :
if(nbrepacket<0)
nbrepacket retourn -1 si pas reception de paquet au bout de 1s 500ms(nbrepacket c'est pas vraiment nombre de paquets ^^)...



Cette discussion est classée dans : code, socket, time, sock, tv


Répondre à ce message

Sujets en rapport avec ce message

Winsock probleme [ par greg13 ] J'ai une erreur de compilation dans le code suivant :#include #include #include #pragma comment(lib, "wsock32.lib")SOCKET Sock;int main(int argc, char winsock probleme 2 [ par greg13 ] J'ai une erreur de compilation dans le code suivant :#include #include #include #pragma comment(lib, "wsock32.lib")SOCKET Sock;int main(int argc, char Difference [ par xionoxid ] C'est koi la difference entre time (0) et time (NULL) les 2 font des nbr aleatoire !??#include #include #i LERREUR QUI TUE §§§§§§§§§§§§§§§§ [ par Avalon10101 ] Vla jai fé mon prog tout é juste mais ya une erreur que je narrive vraiment pas à comprendre ! :C:\Documents and Settings\Alex\Mes documents\Makefile. pb socket [ par surfeurnet ] voici mon programme qui a pour l'instant pour unique but de se connecter à un serveur :# include # include # pragma comment (lib,"w32_32.lib")char ip, Probleme sockets de mer** [ par zzzzzz ] bé je suis plus quoi faire j'en suis toujours au meme prob y'en a 1 qui me dit d'utiliser strstr() l'autre strcmp() fin bref ca serrais sympas si quel J'arrive pas à recevoir (C++) [ par lukilou ] Salut, j'ai un petit problème pour la réception d'info mais j'arrive bien à envoyer.Je passe la déclaration du socket etc car ca fonctionne.listen(soc Probleme de Client Serveur [ par Krox68 ] voila jaimerais faire un programme client qui puisse se connecter a ce serveur : #include void main(){ WSADATA WSAData; WSAStartup(MAKEWORD(2,0), &WS prob sock [ par epoc ] voilà, g commencé la prog des socks en vc++, mais rien ne transitte alors que la connexion semble être bien effectuée, voilà le code :**************** Erreur 10049 sur socket UDP [ par Ezekiel69 ] Salut tous le monde...Me voici depuis plusieurs jour confronté un a problème étrange.Je veux envoyer un message par l'intermédiaire d'un packet UDP su


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales