ghanmi04_05
Messages postés20Date d'inscriptionmardi 10 mai 2005StatutMembreDernière intervention23 mars 2010
-
10 juil. 2009 à 15:20
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 2014
-
18 juil. 2009 à 20:14
Bonjour
j'ai un programme qui lance des threads de contrôle des interfaces réseaux disponible sur une machine quelconque(windows).
Si je lance une fonction qui sniff une adresse ip, ça marche,pas de soucie, j'aurai un paquet qui contient l'@ip source/destination, les ports, cheksum, ttl et le protocol(tcp/udp..)
Par contre si je lance un thread qui sniff une interface(@ip) ça me retourne que les packets de protocol icmp
je suis coincé là
Je code en c++/c, socket et Thread avec api
/*****************/
ThreadHandle=CreateThread(NULL,NULL,LaunchThreadNetInterface,(void*)(&Interface),0,&ThreadID);
/****************/
Windows(pas Linux)
help
cs_rt15
Messages postés3874Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention 7 novembre 201413 18 juil. 2009 à 20:14
Salut,
* Relis trois fois.
* Relis une quatrième fois.
Aaaaaaaaaaaaaaaaah.
LaunchThreadNetInterface(&Interface); /* Marche */
ThreadHandle=CreateThread(NULL,NULL,LaunchThreadNetInterface,(void*)(&Interface),0,&ThreadID); /* Marche a moitié, voir moins */
Heu comme ça là, je vois pas. Tant que tu n'as qu'un thread... Et ton thread principal, tu as essayé de le faire attendre dans un premier temps ?. Un WaitForSingleObject juste après le CreateThread. Pour être sûr que la cause n'est pas le thread principal qui vient interférer. Une CRT mono thread ou autre chose.