Question sur les sockets - C - Programmation
Marsh Posté le 08-05-2006 à 02:08:13
non, c'est juste une façon tordue d'écrire
while ((csock = accept(...)) == -1) { /* NOP */ }
je pense
Marsh Posté le 08-05-2006 à 23:12:15
Merci
Sinon j'ai un petit souci, je n'arrive pas à établir de connexion entre mon serveur et mon client, pourtant je n'ai pas l'impression d'avoir oublié quelque chose...
Si vous auriez une idée...
Le code serveur:
Code :
|
La code client:
Code :
|
Lorsque je définis l'adresse IP du serveur en local (127.0.0.1) ça fonctionne bien mais lorsque je teste vraiment à distance. J'ai l'impression que le serveur est en attente de connexion...
Marsh Posté le 08-05-2006 à 23:26:00
t'as bien verifie que le port 4444 est accessible sur le pc ou tourne ton programme serveur?
Marsh Posté le 08-05-2006 à 23:27:36
hmm ben j'ai rien entre mes deux machines et j'ai pas de routage non plus...
Marsh Posté le 08-05-2006 à 23:36:24
debugage printf
Tu mets des printf tour a tour dans chacune de tes fonctions et tu vois la ou ca bloque vraiment (a moins que tu le saches deja )
edit: j'suis un peu con tiens, t'en a dja partout des printf.Auquel il bloque?il reste a "en attente de connexion" c'est ca?
Marsh Posté le 08-05-2006 à 23:44:39
gocho a écrit : debugage printf |
Vi...
Je commence à désespérer. J'ai fait l'erreur d'avoir fait tous mes tests en local, pensant que ça marcherait en réseau, mais au final... même pas de connexion...
Marsh Posté le 08-05-2006 à 23:51:13
ReplyMarsh Posté le 09-05-2006 à 00:02:55
gocho a écrit : et le client bloque a quel message? |
...
Ca marche...
Je suis dans un état hybride entre une immense joie et une profonde incompréhension...
Je viens de retester pour pouvoir te répondre et ça a marché...
On va mettre ça sur le compte de la fatigue, faut dire que je bosse depuis 15h
Marsh Posté le 09-05-2006 à 00:11:05
En tout cas merci et désolée Gocho
J'ai dû m'emmêler durant la compilation avec les 36000 versions de mon pgm... ^^
Marsh Posté le 10-05-2006 à 01:18:17
pas d'soucis ca arrive
Par contre sauvegarde bien cette version dans un coin histoire de pas retourner en arriere, ca m'est deja arrive en faisant un truc client/serv en C et j'ai trouve ca vraiment desagreable.
Sinon hesites pas si t'as d'autres questions.
ps : j'ai reussi a remettre la main sur mon topic ou j'avais fait un truc comme toi mais sous linux.
Ca pourra p'tet t'aider, on sait jamais.
edit : p'tin c'est dur le soir... J'l'ai retrouve mais en donnant le lien ca l'fra mieux
le voila donc
Marsh Posté le 10-05-2006 à 05:12:36
gocho a écrit : |
Vivi t'inquiète pas, je l'ai sauvegardé dans un endroit bien au chaud en purgeant les versions antérieures ^^
Et merci pour le lien
Par contre... ton pgm était un "mastodonte" comparé au mien ^^;
Allez zou dodo moi... (Même si je me lève dans deux heures, mais bon c'est mieux que rien)
Marsh Posté le 10-05-2006 à 20:52:03
lynxia a écrit : |
de rien
lynxia a écrit : |
enfin c'etait un projet, on etait 3 dessus (enfin ce code, c'etait ma partie ) et j'ai rajoute quelques petits trucs par ci par la apres.
Et c'est le resultat de plusieurs mois de travail a "galerer comme un malade "
Tu peux arriver au meme resultat sans problemes (je n'etais ni ne suis particulierement expert en C )
lynxia a écrit : |
caymal!!!
Marsh Posté le 08-05-2006 à 01:50:58
Bonsoir,
Dans cet extrait de code, lors d'un bind(), je ne saisis pas l'intérêt d'initialiser le socket csock = INVALID_SOCKET
Aurait-on pu mettre une autre valeur? Est-elle obligatoire?
Merci pour vos lumières