NOM
bindresvport - Affecter une socket à un port IP privilégié
SYNOPSIS
#include <sys/types.h>
#include <netinet/in.h>
int bindresvport(int sockfd, struct sockaddr_in *sin);
bindresvport() est utilisée pour affecter un descripteur de socket à un
port IP privilégié anonyme, c’est-à-dire un numéro de port
arbitrairement sélectionné dans l’intervalle [512, 1023].
Si le bind(2) réalisé par bindresvport() réussi et si sin est non NULL,
alors sin->sin_port renvoie le numéro de port alloué.
sin peut être NULL, dans ce cas sin->sin_family est simplement
considéré comme AF_INET. Cependant, dans ce cas, bindresvport() ne peut
renvoyer le port actuellement alloué (cette information peut être
obtenu ultérieurement avec getsockname(2)).
VALEUR RENVOYÉE
bindresvport() renvoie 0 en cas de succès. En cas d’erreur, -1 est
renvoyé et errno est définie.
ERREURS
bindresvport() peut échouer pour les mêmes raisons que bind(2). De
plus, les erreurs suivantes peuvent se produire :
EACCES L’appelant n’a pas les privilèges suffisants (la capacité
CAP_NET_BIND_SERVICE est nécessaire).
EADDRINUSE
Tous les ports privilégiés sont utilisés.
EAFNOSUPPORT (EPFNOSUPPORTdans la glibc2.7et les versions précédentes)
sin est non NULL et sin->sin_family n’est pas AF_INET.
CONFORMITÉ
Absent de POSIX.1-2001. Présent sur les systèmes BSD, Solaris et
beaucoup d’autres.
NOTES
Contrairement à d’autres implémentations de bindresvport(),
l’implémentation de la glibc ignore toutes les valeurs que l’appelant
passe à sin->sin_port.
VOIR AUSSI
bind(2), getsockname(2)
COLOPHON
Cette page fait partie de la publication 3.23 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent être trouvées à l’adresse
http://www.kernel.org/doc/man-pages/.
TRADUCTION
Cette page de manuel a été traduite et mise à jour par Christophe
Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
disposition sur http://manpagesfr.free.fr/.
Les mises à jour et corrections de la version présente dans Debian sont
directement gérées par Florentin Duneau <fduneau@gmail.com> et l’équipe
francophone de traduction de Debian.
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document
en utilisant la commande « man -L C <section> <page_de_man> ».
3 décembre 2008