BIND
Section: Manuel du programmeur Linux (2) Updated: 18 juillet 2003 Index
NOM
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
BOGUES
CONFORMITÉ
NOTE
VOIR AUSSI
TRADUCTION
NOM
bind - Fournir un nom à une socket.
SYNOPSIS
DESCRIPTION
bind
fournit à la socket
sockfd,
l'adresse locale
my_addr.
my_addr
est longue de
addrlen
octets. Traditionnellement cette opération est appelée "affectation d'un
nom à une socket"
(Quand une socket est créée, par l'appel-système
socket(2),
elle existe dans l'espace des noms mais n'a pas de nom assigné).
Il est normalement nécessaire d'affecter une adresse locale avec
bind
avant qu'une socket
SOCK_STREAM
puisse recevoir des connexions (voir
accept(2)).
Les règles d'affectation de nom varient suivant le domaine de communication.
Consultez le manuel Linux section 7 pour de plus amples informations. Pour
AF_INET
voir
ip(7),
pour
AF_UNIX
voir
unix(7),
pour
AF_APPLETALK
voir
ddp(7),
pour
AF_PACKET
voir
packet(7),
pour
AF_X25
voir
x25(7)
et pour
AF_NETLINK
voir
netlink(7).
VALEUR RENVOYÉE
L'appel renvoie 0 s'il réussit, ou -1 s'il échoue, auquel cas
errno
contient le code d'erreur.
ERREURS
- EBADF
-
sockfd
n'est pas un descripteur valide.
- EINVAL
-
La socket possède déjà une adresse. Ceci peut changer dans l'avenir :
voir
linux/unix/sock.c
pour les détails.
- EACCES
-
L'adresse est protégée et l'utilisateur n'est pas le Super-User.
- ENOTSOCK
-
L'argument est un descripteur de fichier, pas une socket.
Les erreurs suivantes sont spécifiques aux sockets
du domaine UNIX
( AF_UNIX) :
- EINVAL
-
La longueur
addr_len
est fausse, ou la socket n'est pas de la
famille
AF_UNIX.
- EROFS
-
L'i-noeud se trouverait dans un système de fichiers en lecture seule.
- EFAULT
-
my_addr
pointe en dehors de l'espace d'adresse accessible.
- ENAMETOOLONG
-
my_addr
est trop long
- ENOENT
-
Le fichier n'existe pas.
- ENOMEM
-
pas assez de mémoire pour le noyau.
- ENOTDIR
-
Un composant du chemin d'accès n'est pas un répertoire.
- EACCES
-
L'accès à un composant du chemin d'accès n'est pas autorisé.
- ELOOP
-
my_addr
contient des références circulaires (à travers un lien symbolique).
BOGUES
Les options de proxy transparent ne sont pas décrites.
CONFORMITÉ
SVr4, BSD 4.4 (l'appel système
bind
est apparu dans BSD 4.2). SVr4 indique des erreurs générales supplémentaires
EADDRNOTAVAIL,
EADDRINUSE,
et
ENOSR,
ainsi que les conditions d'erreurs spécifiques au
domaine
Unix
EIO
et
EISDIR.
NOTE
Le troisième argument de
bind
est en fait un int (et c'est ce qu'utilisent BSD 4.*, libc4 et libc5).
Une certaine confusion POSIX résulte du "socklen_t" actuel. Voir
accept(2).
VOIR AUSSI
TRADUCTION
Christophe Blaess, 1996-2003.
|