Funzione getpeername (winsock.h)

La funzione getpeername recupera l'indirizzo del peer a cui è connesso un socket.

Sintassi

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

Parametri

[in] s

Descrittore che identifica un socket connesso.

[out] name

Struttura SOCKADDR che riceve l'indirizzo del peer.

[in, out] namelen

Puntatore alla dimensione, in byte, del parametro name .

Valore restituito

Se non si verifica alcun errore, getpeername restituisce zero. In caso contrario, viene restituito un valore di SOCKET_ERROR e è possibile recuperare un codice di errore specifico chiamando WSAGetLastError.

Codice di errore Significato
WSANOTINITIALISED
Prima di usare questa funzione, è necessario che venga eseguita una chiamata WSAStartup riuscita.
WSAENETDOWN
Il sottosistema di rete non è riuscito.
WSAEFAULT
Il nome o il parametro namelen non si trova in una parte valida dello spazio indirizzi utente oppure il parametro namelen è troppo piccolo.
WSAEINPROGRESS
È in corso una chiamata di Windows Sockets 1.1 bloccante oppure il provider di servizi sta ancora elaborando una funzione di callback.
WSAENOTCONN
Il socket non è connesso.
WSAENOTSOCK
Il descrittore non è un socket.

Commenti

La funzione getpeername recupera l'indirizzo del peer connesso al socket s e archivia l'indirizzo nella struttura SOCKADDR identificata dal parametro name . Questa funzione funziona con qualsiasi famiglia di indirizzi e restituisce semplicemente l'indirizzo a cui è connesso il socket. La funzione getpeername può essere usata solo su un socket connesso.

Per i socket del datagram, verrà restituito solo l'indirizzo di un peer specificato in una chiamata di connessione precedente. Qualsiasi indirizzo specificato da una chiamata sendto precedente non verrà restituito da getpeername.

In caso di chiamata, il parametro namelen contiene le dimensioni, in byte, del buffer dei nomi . In caso di restituzione, il parametro namelen contiene le dimensioni effettive, in byte, del parametro name restituito.

Windows Phone 8: questa funzione è supportata per le app dello Store di Windows Phone in Windows Phone 8 e versioni successive.

Windows 8.1 e Windows Server 2012 R2: questa funzione è supportata per le app di Windows Store in Windows 8.1, Windows Server 2012 R2 e versioni successive.

Requisiti

Requisito Valore
Client minimo supportato Windows 8.1, Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2003 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione winsock.h (include Winsock2.h)
Libreria Ws2_32.lib
DLL Ws2_32.dll

Vedi anche

Funzioni Winsock

Informazioni di riferimento su Winsock

bind

connect

getsockname

Sendto

socket