Función getpeername (winsock.h)

La función getpeername recupera la dirección del mismo nivel al que está conectado un socket.

Sintaxis

int getpeername(
  [in]      SOCKET   s,
  [out]     sockaddr *name,
  [in, out] int      *namelen
);

Parámetros

[in] s

Descriptor que identifica un socket conectado.

[out] name

Estructura SOCKADDR que recibe la dirección del mismo nivel.

[in, out] namelen

Puntero al tamaño, en bytes, del parámetro name .

Valor devuelto

Si no se produce ningún error, getpeername devuelve cero. De lo contrario, se devuelve un valor de SOCKET_ERROR y se puede recuperar un código de error específico mediante una llamada a WSAGetLastError.

Código de error Significado
WSANOTINITIALISED
Debe producirse una llamada WSAStartup correcta antes de usar esta función.
WSAENETDOWN
Error en el subsistema de red.
WSAEFAULT
El nombre o el parámetro namelen no están en una parte válida del espacio de direcciones del usuario o el parámetro namelen es demasiado pequeño.
WSAEINPROGRESS
Una llamada de Bloqueo de Windows Sockets 1.1 está en curso o el proveedor de servicios sigue procesando una función de devolución de llamada.
WSAENOTCONN
El socket no está conectado.
WSAENOTSOCK
El descriptor no es un socket.

Comentarios

La función getpeername recupera la dirección del mismo nivel conectada al socket s y almacena la dirección en la estructura SOCKADDR identificada por el parámetro name . Esta función funciona con cualquier familia de direcciones y simplemente devuelve la dirección a la que está conectado el socket. La función getpeername solo se puede usar en un socket conectado.

En el caso de los sockets de datagramas, solo se devolverá la dirección de un elemento del mismo nivel especificado en una llamada de conexión anterior. Getpeername no devolverá ninguna dirección especificada por una llamada de sendto anterior.

En la llamada, el parámetro namelen contiene el tamaño, en bytes, del búfer de nombres . En la devolución, el parámetro namelen contiene el tamaño real, en bytes, del parámetro name devuelto.

Windows Phone 8: esta función es compatible con las aplicaciones de Windows Phone Store en Windows Phone 8 y versiones posteriores.

Windows 8.1 y Windows Server 2012 R2: esta función es compatible con las aplicaciones de la Tienda Windows en Windows 8.1, Windows Server 2012 R2 y versiones posteriores.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 8.1, Windows Vista [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado winsock.h (incluya Winsock2.h)
Library Ws2_32.lib
Archivo DLL Ws2_32.dll

Consulte también

Funciones winsock

Referencia de Winsock

bind

connect

getsockname

sendto

socket