Bijour' !
J'ai un petit problème... Je suis entraint de créer un programme p2p pour les cours et je bloque sur l'envoye d'une adresse avec son ip...
En fait, de mon tracker, j'envoie une structure sockaddr_in à mon client...
Le prolème est que le client ne recoit pas correctement cette structure, en faisant des printf, la structure sockaddr_in reponse dans le client avant et après réception du message reste la meme alors qu'elle devrai contenir la structure envoyé par le tracker.![]()
Merci d'avance pour votre aide !
CLIENT:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 struct sockaddr_in reponse ; // DEMANDER AU PROF PK CA MARCHE PAS AVEC * reponse printf("%s\n", inet_ntoa(reponse.sin_addr.s_addr)) ; if(recvfrom(s,&reponse,sizeof(struct sockaddr_in *), 0, (struct sockaddr *) &tracker, &lg)<0) { perror("Erreur lors de la reception de la réponse") ; exit(-1) ; } printf("%s\n", inet_ntoa(reponse.sin_addr.s_addr)) ;
TRACKER
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 int bloc ; sscanf(buf, "%d", &bloc) ; //printf("%d\n", bloc) ; reponse = envoiInfoBloc(tab, bloc) ; // choisi quelle adresse prendre printf("%s\n", inet_ntoa(reponse->sin_addr.s_addr)) ; if(sendto(s,reponse,sizeof(struct sockaddr_in *),0,(struct sockaddr *) &client, sizeof(client))<0) { perror("erreur envoi reponse") ; exit(2) ; }
Partager