Provided by: manpages-fr-dev_4.27.0-1_all bug

NOM

       bindresvport - Affecter un socket à un port IP privilégié

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

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  socket auquel fait référence le descripteur de fichier
       sockfd à 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éfini  pour
       indiquer l'erreur.

ERREURS

       bindresvport() peut échouer pour les mêmes raisons que bind(2). De plus, les erreurs suivantes peuvent se
       produire :

       EACCES Le  processus  appelant  n'était  pas  privilégié  (sur  Linux  : le processus appelant n'a pas la
              capacité CAP_NET_BIND_SERVICE dans l'espace de noms utilisateur  contrôlant  son  espace  de  noms
              réseau).

       EADDRINUSE
              Tous les ports privilégiés sont utilisés.

       EAFNOSUPPORT (EPFNOSUPPORT dans la glibc 2.7 et antérieure)
              sin est non NULL et sin->sin_family n'est pas AF_INET.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).
       ┌────────────────┬──────────────────────┬───────────────────────────────────────────────────────────────┐
       │ InterfaceAttributValeur                                                        │
       ├────────────────┼──────────────────────┼───────────────────────────────────────────────────────────────┤
       │ bindresvport() │ Sécurité des threads │ glibc >= 2.17 : MT-Safe; glibc < 2.17 : MT-Unsafe             │
       └────────────────┴──────────────────────┴───────────────────────────────────────────────────────────────┘

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

VERSIONS

       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.

STANDARDS

       BSD.

VOIR AUSSI

       bind(2), getsockname(2)

TRADUCTION

       La   traduction   française   de   cette   page   de   manuel   a   été   créée   par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>,  François  Micaux,  Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,      Thomas      Huriaux      <thomas.huriaux@gmail.com>,     Nicolas     François
       <nicolas.francois@centraliens.net>,    Florentin    Duneau    <fduneau@gmail.com>,     Simon     Paillard
       <simon.paillard@resel.enst-bretagne.fr>,     Denis    Barbier    <barbier@debian.org>,    David    Prévot
       <david@tilapin.org>,    Cédric    Boutillier     <cedric.boutillier@gmail.com>,     Frédéric     Hantrais
       <fhantrais@gmail.com> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>

       Cette  traduction  est  une  documentation libre ; veuillez vous reporter à la GNU General Public License
       version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel,  veuillez  envoyer  un  message  à
       debian-l10n-french@lists.debian.org.

Pages du manuel de Linux 6.9.1                     2 mai 2024                                    bindresvport(3)