manpagez: man pages & more
man getpeername(2)
Home | html | info | man
getpeername(2)              BSD System Calls Manual             getpeername(2)


NAME

     getpeername -- get address of connected peer


SYNOPSIS

     #include <sys/socket.h>

     int
     getpeername(int socket, struct sockaddr *restrict address,
         socklen_t *restrict address_len);


DESCRIPTION

     The getpeername() function returns the address of the peer connected to
     the specified socket.

     The address_len parameter should be initialized to indicate the amount of
     space pointed to by address.  On return it contains the actual size of
     the address returned (in bytes).

     The address is truncated if the buffer provided is too small.


RETURN VALUES

     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.


ERRORS

     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.


SEE ALSO

     accept(2), bind(2), getsockname(2), socket(2)


HISTORY

     The getpeername() function call appeared in 4.2BSD.

4.2 Berkeley Distribution        June 4, 1993        4.2 Berkeley Distribution

Mac OS X 10.9.1 - Generated Mon Jan 6 05:55:07 CST 2014
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.