Provided by: manpages-fr-dev_4.21.0-2_all bug

NOM

       bindresvport - Affecter une 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.

STANDARDS

       Absent de POSIX.1. 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)

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  <tvi‐
       gnaud@mandriva.com>,  François  Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fe‐
       vrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau  <jcristau@de‐
       bian.org>,   Thomas   Huriaux   <thomas.huriaux@gmail.com>,  Nicolas  François  <nicolas.francois@centra‐
       liens.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.boutil‐
       lier@gmail.com>,   Frédéric   Hantrais   <fhantrais@gmail.com>   et  Jean-Pierre  Giraud  <jean-pierregi‐
       raud@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 à de‐
       bian-l10n-french@lists.debian.org.

Pages du manuel de Linux 6.03                    5 février 2023                                  bindresvport(3)