GETPEERNAME(3XNET) X/Open Networking Services Library Functions
NAME
getpeername - get the name of the peer socket
SYNOPSIS
cc [
flag ... ]
file ...
-lxnet [
library ... ]
#include <sys/socket.h>
int getpeername(
int socket,
struct sockaddr *restrict address,
socklen_t *restrict address_len);
DESCRIPTION
The
getpeername() function retrieves the peer address of the specified
socket, stores this address in the
sockaddr structure pointed to by the
address argument, and stores the length of this address in the object
pointed to by the
address_len argument.
If the actual length of the address is greater than the length of the
supplied
sockaddr structure, the stored address will be truncated.
If the protocol permits connections by unbound clients, and the peer is
not bound, then the value stored in the object pointed to by
address is
unspecified.
RETURN VALUES
Upon successful completion, 0 is returned. Otherwise, -1 is returned and
errno is set to indicate the error.
ERRORS
The
getpeername() function will fail if:
EBADF The
socket argument is not a valid file descriptor.
EFAULT The
address or
address_len parameter can not be accessed
or written.
EINVAL The socket has been shut down.
ENOTCONN The socket is not connected or otherwise has not had the
peer prespecified.
ENOTSOCK The
socket argument does not refer to a socket.
EOPNOTSUPP The operation is not supported for the socket protocol.
The
getpeername() function may fail if:
ENOBUFS Insufficient resources were available in the system to
complete the call.
ENOSR There were insufficient STREAMS resources available for the
operation to complete.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Standard |
+--------------------+-----------------+
|MT-Level | MT-Safe |
+--------------------+-----------------+
SEE ALSO
sockaddr(3SOCKET),
accept(3XNET),
bind(3XNET),
getsockname(3XNET),
socket(3XNET),
attributes(7),
standards(7) June 10, 2002
GETPEERNAME(3XNET)