Sockets
Library Functions
bind(3SOCKET)
NAME
bind - bind a name to a socket
SYNOPSIS
cc [ flag ... ] file ...
-lsocket -lnsl [ library ... ]
#include <sys/types.h>
#include <sys/socket.h>
int bind(int s, const struct sockaddr *name, int
namelen);
DESCRIPTION
bind() assigns a name to an unnamed socket. When a socket
is
created with
socket(3SOCKET), it exists
in a name space
(address family) but has no name assigned. bind() requests
that the name pointed to by name
be assigned to the socket.
RETURN VALUES
If the bind is successful, 0 is returned.
A return value of
-1
indicates an error,
which is further specified in the
global errno.
ERRORS
The bind() call will fail if:
EACCES
The requested address is protected and the
current
user has
inadequate permission to access it.
EADDRINUSE
The specified address is already in use.
EADDRNOTAVAIL
The specified address is not
available on the local
machine.
EBADF s is not a valid
descriptor.
EINVAL
namelen is not the size of
a valid address for the
specified address
family.
EINVAL
The socket is already bound to an
address.
ENOSR There
were insufficient STREAMS
resources for the
operation to complete.
ENOTSOCK
s is a descriptor for a file, not a socket.
The following errors are specific to
binding names in the
UNIX domain:
SunOS
5.8 Last change: 22 Oct
1999 1
Sockets
Library Functions
bind(3SOCKET)
EACCES
Search permission is denied for
a component of
the
path prefix
of the pathname in name.
EIO An I/O error occurred while
making the directory entry
or allocating the inode.
EISDIR
A null
pathname was specified.
ELOOP Too many symbolic links were encountered in translat-
ing the pathname in name.
ENOENT
A component of the path prefix of the pathname in name
does not exist.
ENOTDIR
A
component of the path prefix of the pathname in name
is not a directory.
EROFS The inode would reside on a
read-only file system.
ATTRIBUTES
See attributes(5) for descriptions of the following
attri-
butes:
| ATTRIBUTE TYPE | ATTRIBUTE VALUE
|
|||
| MT-Level | Safe |
|||
SEE
ALSO
unlink(2),
socket(3SOCKET), attributes(5), socket(3HEAD)
NOTES
Binding a name in the UNIX domain creates
a socket in the
file system that must be deleted by the
caller when it is no
longer
needed (using unlink(2)).
The rules used in name binding
vary between communication
domains.
SunOS
5.8 Last change: 22 Oct
1999 2