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

NOM

       confstr - Lire une chaîne de caractères dépendant de la configuration

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <unistd.h>

       size_t confstr(int name, char buf[.size], size_t size);

   Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

       confstr() :
           _POSIX_C_SOURCE >= 2 || _XOPEN_SOURCE

DESCRIPTION

       La fonction confstr() fournit la valeur d'une chaîne de caractères dépendante de la configuration.

       L'argument name est la variable système réclamée. Les variables suivantes sont supportées :

       _CS_GNU_LIBC_VERSION (Bibliothèque GNU C seulement ; depuis la glibc 2.3.2)
              Une  chaîne  qui  identifie  la  version  de  la  bibliothèque  GNU  C  du  système  (par exemple,
              « glibc 2.3.4 »).

       _CS_GNU_LIBPTHREAD_VERSION (Bibliothèque GNU C seulement ; depuis la glibc 2.3.2)
              Une chaîne qui identifie l'implémentation POSIX fournie par la  bibliothèque  C  du  système  (par
              exemple, « NPTL 2.3.4 » ou « linuxthreads-0.10 »).

       _CS_PATH
              Une  valeur  de  la  variable  PATH indiquant les emplacements où les utilitaires standard POSIX.2
              peuvent être trouvés.

       Si buf n'est pas NULL et si size est différent de 0, alors confstr() copie la valeur de la chaîne dans le
       tampon buf, en limitant la longueur à size - 1 octets si nécessaire, terminée par un octet nul (« \0  »).
       On peut détecter la troncature de la chaîne en comparant le résultat de confstr() avec le paramètre size.

       Si  size  est  égal  à  zéro  et  si  buf vaut NULL, alors confstr() renvoie simplement la valeur définie
       ci-dessus.

VALEUR RENVOYÉE

       Si name est une variable de configuration valable, confstr() renvoie le nombre d'octets (incluant l'octet
       nul terminal) qui doit être utilisé pour enregistrer la variable. Cette valeur peut être plus grande  que
       size, ce qui signifie que la valeur de buf est tronquée.

       Si  name  est  une  variable  de configuration valable sans valeur, alors confstr() renvoie 0. Si name ne
       correspond pas à une variable de configuration valable, confstr() renvoie 0 et errno est défini à EINVAL.

ERREURS

       EINVAL La valeur de name n'est pas valable.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).
       ┌──────────────────────────────────────────────────────────────────────┬──────────────────────┬─────────┐
       │ InterfaceAttributValeur  │
       ├──────────────────────────────────────────────────────────────────────┼──────────────────────┼─────────┤
       │ confstr()                                                            │ Sécurité des threads │ MT-Safe │
       └──────────────────────────────────────────────────────────────────────┴──────────────────────┴─────────┘

STANDARDS

       POSIX.1-2008.

HISTORIQUE

       POSIX.1-2001.

EXEMPLES

       Le fragment de code ci-dessous détermine le chemin d'accès aux utilitaires POSIX.2 :

           char *pathbuf;
           size_t n;

           n = confstr(_CS_PATH, NULL, (size_t) 0);
           pathbuf = malloc(n);
           if (pathbuf == NULL)
               abort();
           confstr(_CS_PATH, pathbuf, n);

VOIR AUSSI

       getconf(1), sh(1), exec(3), fpathconf(3), pathconf(3), sysconf(3), system(3)

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> 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                    15 juin 2024                                        confstr(3)