bind(3N) NETWORK FUNCTIONS bind(3N)
NAME
bind - bind a name to a socket
SYNOPSIS
#include <sys/types.h>
#include <sys/socket.h>
bind(s, name, namelen)
int s;
struct sockaddr *name;
int namelen;
DESCRIPTION
bind() assigns a name to an unnamed socket. When a socket
is created with socket(3N), 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.
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.
RETURN VALUE
If the bind is successful, a 0 value 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:
EBADF s is not a valid descriptor.
ENOTSOCK s is a descriptor for a file, not a
socket.
EADDRNOTAVAIL The specified address is not available
on the local machine.
EADDRINUSE The specified address is already in use.
EINVAL namelen is not the size of a valid
address for the specified address fam-
ily.
EINVAL The socket is already bound to an
address.
EACCES The requested address is protected and
Last change: 1
bind(3N) NETWORK FUNCTIONS bind(3N)
the current user has inadequate permis-
sion to access it.
ENOSR There were insufficient STREAMS
resources for the operation to complete.
The following errors are specific to binding names in the
UNIX domain:
ENOTDIR A component of the path prefix of the
pathname in name is not a directory.
ENOENT A component of the path prefix of the
pathname in name does not exist.
EACCES Search permission is denied for a com-
ponent of the path prefix of the path-
name in name.
ELOOP Too many symbolic links were encountered
in translating the pathname in name.
EIO An I/O error occurred while making the
directory entry or allocating the inode.
EROFS The inode would reside on a read-only
file system.
EISDIR A null pathname was specified.
SEE ALSO
unlink(2)
Last change: 2