|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Nov 2004
Città: Napoli
Messaggi: 999
|
[C] funzione per socket
salve,
mi stò avventurando nel mondo del network programming, purtroppo in giro ci sono solo guide in inglese che non mi semplificano la vita beh il mio problema è questo con questa istruzione: connfd=Accept(listenfd,(struct sockaddr*)NULL,NULL); accetto connessioni da qualsiasi client e creo la nuova socket connfd (listenf è la socket del server in ascolto) ora voglio sapere qualcosa riguardo il client che ha contattato il mio server... mi baserebbe l'host, magari l'ip in modo poi da recuperarmi la struttura Hostent consigli ??
__________________
Intel Pentium IV 3,0 GHz, Asus P5SD2-X , 1.0 Gb ddr2, Radeon X550 , Maxtor 160Gb sata, Hitachi 100 gb pata,Piooner Dvr-109 ,Microsoft Windows XP Professional Service Pack 2 |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
|
struct sockaddr_in their_addr; // connector's address information
socklen_t sin_size; if ((new_fd = accept(sockfd, (struct sockaddr *)&their_addr, &sin_size)) == -1) { perror("accept"); continue; } printf("server: got connection from %s\n",inet_ntoa(their_addr.sin_addr)); recuperato in giro |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Nov 2004
Città: Napoli
Messaggi: 999
|
ti ringrazio, io invece ho risolto utilizzando :
getsockname(.....) prende in input la socket inizializza un sockaddr_in passato come argomento con l'indirizzo della socket.... da qui poi ho recuperato l'ip dove ho trovato getsocketname c'era anche la tua soluzione, che in effetti sarebbe più intuitiva, dopo magari provo anche in quest'altro modo grazie !
__________________
Intel Pentium IV 3,0 GHz, Asus P5SD2-X , 1.0 Gb ddr2, Radeon X550 , Maxtor 160Gb sata, Hitachi 100 gb pata,Piooner Dvr-109 ,Microsoft Windows XP Professional Service Pack 2 |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:11.


















