getpeername(2) BSD System Calls Manual getpeername(2)
getpeername -- get name of connected peer
#include <sys/socket.h> int getpeername(int socket, struct sockaddr *restrict address, socklen_t *restrict address_len);
Getpeername() returns the name of the peer connected to socket socket. The address_len parameter should be initialized to indicate the amount of space pointed to by name. On return it contains the actual size of the name returned (in bytes). The name is truncated if the buffer provided is too small.
The getpeername() function returns the value 0 if successful; otherwise the value -1 is returned and the global variable errno is set to indicate the error.
The call succeeds unless: [EBADF] The argument socket is not a valid descriptor. [EFAULT] The address parameter points to memory not in a valid part of the process address space. [EINVAL] socket has been shut down. [ENOBUFS] Insufficient resources were available in the system to perform the operation. [ENOTCONN] Either the socket is not connected or it has not had the peer pre-specified. [ENOTSOCK] The argument socket refers to something other than a socket (e.g., a file). [EOPNOTSUPP] getpeername() is not supported for the protocol in use by socket.
The getpeername() function call appeared in 4.2BSD. 4.2 Berkeley Distribution June 4, 1993 4.2 Berkeley Distribution
Mac OS X 10.7 - Generated Sun Nov 6 18:29:36 CST 2011