NAME

bind - bind a name to a socket

SYNOPSIS

#include <sys/socket.h>

int bind(int s , const struct sockaddr *name , socklen_t namelen );

DESCRIPTION

bind() assigns a name to an unnamed socket. When a socket is created with socket(), 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, a 0 value is returned. A return value of -1 indicates an error, which is further specified in the global errno.

ERRORS

This function is a member of Unison's IOLIB family of functions. IOLIB is implemented as a message passing and generalized interface layer. Each Unison I/O server is responsible for its own error reporting.

For an exact list of error codes returned by a particular server, refer to that server's documentation in the Unison Programmer's Guide for each specific platform.

Servers may implement these errors codes in response to this function.

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. Or, the socket is already bound to an address.
ENOTSOCK
s is a descriptor for a file, not a socket.

SEE ALSO

socket()



< Copyright Rowebots Research Inc. and Multiprocessor Toolsmiths Inc. 1987-2011 >