funzione getpeername (winsock2.h)

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

Sintassi

int WSAAPI 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 alle dimensioni, 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 un codice di errore specifico può essere recuperato chiamando WSAGetLastError.

Codice di errore Significato
WSANOTINITIALISED
Prima di usare questa funzione, è necessario eseguire 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 degli indirizzi utente oppure il parametro namelen è troppo piccolo.
WSAEINPROGRESS
Una chiamata windows Sockets 1.1 bloccata è in corso 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 in un socket connesso.

Per i socket 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 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 nome restituito.

Windows Phone 8: questa funzione è supportata per le app Windows Phone Store 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 winsock2.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