Provided by: manpages-fr-dev_3.57d1p1-1_all bug

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);

DESCRIPTION

       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 (EPFNOSUPPORT dans la glibc 2.7 et les versions précédentes)
              sin est non NULL et sin->sin_family n'est pas AF_INET.

ATTRIBUTS

   Multithreading (voir pthreads(7))
       Avant glibc 2.17, la fonction bindresvport() utilisait une variable statique non protégée,
       et n’était donc pas sûre dans un contexte multithread.

       Depuis glibc 2.17, la fonction bindresvport() utilise un verrou de protection de  variable
       statique, donc elle est sûre dans un contexte multithread.

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.57 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

       Depuis   2010,   cette   traduction   est   maintenue   à   l'aide   de    l'outil    po4a
       <http://po4a.alioth.debian.org/>  par l'équipe de traduction francophone au sein du projet
       perkamon <http://perkamon.alioth.debian.org/>.

       Christophe   Blaess   <http://www.blaess.fr/christophe/>   (1996-2003),    Alain    Portal
       <http://manpagesfr.free.fr/>  (2003-2006).  Florentin  Duneau  et  l'équipe francophone de
       traduction de Debian (2006-2009).

       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> ».

                                           21 juin 2013                           BINDRESVPORT(3)