Averiguar Ip y puerto del Cliente

Tengo un programa cliente y otro de servidor, cuando el cliente se conecta al servidor quiero averiguar la ip del cliente y el puerto que usa para conectarse con el servidor, estoy haciéndolo así:
sockaddr_in  AddrCliente;
 while((Sa=accept(m_socket,(struct sockaddr *)&AddrCliente,&yes))==SOCKET_ERROR);
 printf("%s %d", inet_ntoa(AddrCliente.sin_addr) ,AddrCliente.sin_port);
Me muestra la ip y el puerto del cliente. El asunto es, cuando verifico en el cliente cual es el puerto abierto para esta conexión, netstat -a, me muestra otro numero de puerto, el ip si es el correcto.
Que puede estar pasando, hay algo que estoy pasando por alto.

1 Respuesta

Respuesta
1
No se si ya lo has averiguado, si es así, pues puedes ignorar respuesta :)
El member ntohl te lo da en network byte order, tienes que convertirlo a host byte order usando la función ntohl(), y debería funcionar ...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas