In un programma per la comunicazione client/server mi viene richiesto di visualizzare sullo std output del server un messaggio contenente l'indirizzo IP del client con cui è stata stabilita la connessione; Io ho fatto così:
*lato server; cad è la struttura sockaddr_in utilizzata con la funzione accept del server*
printf("Connessione stabilita con il client il cui indirizzo e' %s sulla porta %d\n\n", inet_ntoa(cad.sin_addr), ntohs(cad.sin_port));
Ho aggiunto la porta come test. Infatti quando viene stampata è diversa da quella che io ho impostato nei due programmi per farli comunicare...
volevo capire se fosse solo un problema di conversione, oppure se la porta che io imposto non la vede proprio. Infatti mi è pure sorto il dubbio che l'IP visualizzato sia effettivamente quello del client, dato che comunque è 127.0.0.1 della mia macchina.
Grazie.
*lato server; cad è la struttura sockaddr_in utilizzata con la funzione accept del server*
printf("Connessione stabilita con il client il cui indirizzo e' %s sulla porta %d\n\n", inet_ntoa(cad.sin_addr), ntohs(cad.sin_port));
Ho aggiunto la porta come test. Infatti quando viene stampata è diversa da quella che io ho impostato nei due programmi per farli comunicare...
volevo capire se fosse solo un problema di conversione, oppure se la porta che io imposto non la vede proprio. Infatti mi è pure sorto il dubbio che l'IP visualizzato sia effettivamente quello del client, dato che comunque è 127.0.0.1 della mia macchina.
Grazie.