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 |
---|---|
Prima di usare questa funzione, è necessario che venga eseguita una chiamata WSAStartup riuscita. | |
Il sottosistema di rete non è riuscito. | |
Il nome o il parametro namelen non si trova in una parte valida dello spazio indirizzi utente oppure il parametro namelen è troppo piccolo. | |
È in corso una chiamata di Windows Sockets 1.1 bloccante oppure il provider di servizi sta ancora elaborando una funzione di callback. | |
Il socket non è connesso. | |
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 |