getsockname(3N) getsockname(3N)
getsockname - get socket name
int getsockname(int s, caddr_t name, int *namelen);
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).
0 is returned if the call succeeds; -1 if it fails.
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.
bind(3N), getpeername(3N), socket(3N)
The type of address structure passed to accept depends on the address
family. UNIX domain sockets (address family AF_UNIX) require a
socketaddr_un structure as defined in sys/un.h; Internet domain sockets
(address family AF_INET) require a sockaddr_in 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 caddr_t in the call to getsockname and pass the size
of the structure in the namelen argument.
The functionality of getsockname is provided by t_getname in TLI.
t_getname will be replaced in the next release of System V.
The syntax for t_getname is as follows:
t_getname(fd, name, type)
int fd;
struct netbuf *name;
register int type;
Page 1
getsockname(3N) 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.
PPPPaaaaggggeeee 2222 [ Back ]
|