16.9.4 Who is Connected to Me?

Function: int getpeername (int socket, struct sockaddr *addr, socklen_t *length-ptr)

Preliminary: | MT-Safe | AS-Safe | AC-Safe | See POSIX Safety Concepts.

The getpeername function returns the address of the socket that socket is connected to; it stores the address in the memory space specified by addr and length-ptr. It stores the length of the address in *length-ptr.

See Socket Addresses, for information about the format of the address. In some operating systems, getpeername works only for sockets in the Internet domain.

The return value is 0 on success and -1 on error. The following errno error conditions are defined for this function:

EBADF

The argument socket is not a valid file descriptor.

ENOTSOCK

The descriptor socket is not a socket.

ENOTCONN

The socket socket is not connected.

ENOBUFS

There are not enough internal buffers available.