GETSOCKNAME(2) | System Calls Manual | GETSOCKNAME(2) |
getsockname
— get
socket name
#include
<sys/socket.h>
int
getsockname
(int socket,
struct sockaddr *restrict address,
socklen_t *restrict address_len);
The
getsockname
()
function returns the current address for 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.
Note: For the UNIX domain, the address length returned is the address_len parameter passed to the previous bind(2) system call and not the sa_len field of the address parameter passed to bind(2).
The getsockname
() 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 getsockname
() system call will succeed
unless:
EBADF
]EFAULT
]EINVAL
]ENOBUFS
]ENOTSOCK
]EOPNOTSUPP
]getsockname
() is not supported for the protocol in
use by socket.Names bound to sockets in the UNIX domain are inaccessible;
getsockname
() returns a zero-length address.
The getsockname
() call appeared in
4.2BSD.
June 4, 1993 | BSD 4.2 |