All rights reserved.
%sccs.include.redist.man%
@(#)bind.2 6.8 (Berkeley) 06/23/90
#include <sys/types.h> #include <sys/socket.h>bind(s, name, namelen) int s; struct sockaddr *name; int namelen;
The rules used in name binding vary between communication domains. Consult the manual entries in section 4 for detailed information.
20 [EBADF] S is not a valid descriptor.
20 [ENOTSOCK] S is not a socket.
20 [EADDRNOTAVAIL] The specified address is not available from the local machine.
20 [EADDRINUSE] The specified address is already in use.
20 [EINVAL] The socket is already bound to an address.
20 [EACCES] The requested address is protected, and the current user has inadequate permission to access it.
20 [EFAULT] The name parameter is not in a valid part of the user address space.
The following errors are specific to binding names in the UNIX domain.
15 [ENOTDIR] A component of the path prefix is not a directory.
15 [EINVAL] The pathname contains a character with the high-order bit set.
15 [ENAMETOOLONG] A component of a pathname exceeded 255 characters, or an entire path name exceeded 1023 characters.
15 [ENOENT] A prefix component of the path name does not exist.
15 [ELOOP] Too many symbolic links were encountered in translating the pathname.
15 [EIO] An I/O error occurred while making the directory entry or allocating the inode.
15 [EROFS] The name would reside on a read-only file system.
15 [EISDIR] A null pathname was specified.