Provided by: manpages-fr-dev_4.13-4_all bug

NOM

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

SYNOPSIS

       #include <unistd.h>

       size_t confstr(int name, char *buf, size_t len);

   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)
              A string which identifies the GNU C library version on this system (e.g., "glibc 2.3.4").

       _CS_GNU_LIBPTHREAD_VERSION (Bibliothèque GNU C seulement ; depuis la glibc 2.3.2)
              A  string which identifies the POSIX implementation supplied by this C library (e.g., "NPTL 2.3.4"
              or "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 len est différent de 0, alors confstr() copie la valeur de la chaîne dans le
       tampon buf, en limitant la longueur à len - 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 len.

       Si len est nulle, 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 valide, confstr() renvoie le nombre d'octets (incluant le
       caractère nul) qui doit être utilisé pour enregistrer la variable. Cette valeur peut être plus grande que
       len, 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éfinie  à
       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 │
       └──────────┴──────────────────────┴─────────┘

CONFORMITÉ

       POSIX.1-2001, POSIX.1-2008.

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)

COLOPHON

       Cette page fait partie de la publication 5.10 du projet man-pages Linux. Une description du projet et des
       instructions pour signaler des anomalies et la dernière version de cette page  peuvent  être  trouvées  à
       l'adresse https://www.kernel.org/doc/man-pages/.

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>   et   David   Prévot
       <david@tilapin.org>

       Cette traduction est une documentation libre ; veuillez vous reporter à la  GNU  General  Public  License
       version 3   ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   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 ⟨⟩.