getsockname(3N) UNIX System V getsockname(3N)
NAME
getsockname - get socket name
SYNOPSIS
int getsockname(int s, caddrt name, int *namelen);
DESCRIPTION
getsockname returns the current name for socket s. The namelen 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).
RETURN VALUE
0 is returned if the call succeeds; -1 if it fails.
ERRORS
The call succeeds unless:
EBADF The argument s is not a valid descriptor.
ENOTSOCK The argument s is a file, not a socket.
ENOMEM There was insufficient user memory for the operation
to complete.
ENOSR There were insufficient STREAMS resources available
for the operation to complete.
SEE ALSO
bind(3N), getpeername(3N), socket(3N)
NOTES
The type of address structure passed to accept depends on the address
family. UNIX domain sockets (address family AFUNIX) require a
socketaddrun structure as defined in sys/un.h; Internet domain sockets
(address family AFINET) require a sockaddrin structure as defined in
netinet/in.h. Other address families may require other structures. Use
the structure appropriate to the address family; cast the structure
address to a generic caddrt in the call to getsockname and pass the size
of the structure in the namelen argument.
See ``The Sockets Interface'' section in the Programmer's Guide:
Networking Interfaces for details.
The functionality of getsockname is provided by tgetname in TLI.
tgetname will be replaced in the next release of System V.
The syntax for tgetname is as follows:
tgetname(fd, name, type)
int fd;
struct netbuf *name;
register int type;
10/89 Page 1
getsockname(3N) UNIX System V getsockname(3N)
If type is equal to LOCALNAME, then the address of the local side of the
connection is returned; otherwise, the address of the remote side is
returned.
Page 2 10/89