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

NOM

       getenv, secure_getenv - Lire une variable d'environnement

SYNOPSIS

       #include <stdlib.h>

       char *getenv(const char *name);

       char *secure_getenv(const char *name);

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

       secure_getenv(): _GNU_SOURCE

DESCRIPTION

       La fonction getenv() recherche dans la liste des variables  d'environnement  une  variable
       nommée name, et renvoie un pointeur sur la chaîne value correspondante.

       La  fonction  secure_getenv()  spécifique  à  GNU  est  simplement  comme  getenv(),  à la
       différence qu'elle renvoie NULL dans les cas où « secure execution » (exécution sécurisée)
       est  nécessaire.  L'exécution  sécurisée  est nécessaire si l'une des conditions suivantes
       était vraie quand le programme exécuté pour le processus appelant a été chargé :

       *  l'UID effectif du processus ne correspondait pas son UID réel, ou le  GID  effectif  du
          processus  ne  correspondait  pas  son  GID  réel  (c'est  typiquement  le  cas lors de
          l'exécution d'un programme Set-UID ou Set-GID) ;

       *  le bit de capacité effective a été défini sur le fichier exécutable ;

       *  le processus a une capacité non vide permise définie.

       L'exécution sécurisée pourrait aussi être nécessaire si elle est déclenchée  par  certains
       modules de sécurité Linux.

       La fonction secure_getenv() a pour but d'être utilisée dans les bibliothèques polyvalentes
       pour éviter les vulnérabilités qui  pourraient  survenir  si  des  programmes  Set-UID  ou
       Set-GID faisaient accidentellement confiance à l'environnement.

VALEUR RENVOYÉE

       La   fonction   getenv()   renvoie   un   pointeur  sur  la  valeur  correspondante,  dans
       l'environnement du processus, ou NULL s'il n'y a pas de correspondance.

VERSIONS

       secure_getenv() a été introduite dans la glibc dans sa version 2.17.

CONFORMITÉ

       getenv() : SVr4, POSIX.1-2001, BSD 4.3, C89, C99.

       secure_getenv() est une extension GNU.

NOTES

       Les chaînes dans la liste des variables d'environnement sont de la forme nom=valeur.

       Telle qu'elle est généralement implémentée, getenv() renvoie un pointeur vers  une  chaîne
       de  la  liste  d'environnement.  L'appelant  doit faire attention de ne pas modifier cette
       chaîne car cela modifierait l'environnement du processus.

       L'implémentation de getenv() ne nécessite pas qu'elle soit réentrante. La  chaîne  pointée
       par  la  valeur de retour de getenv() peut être allouée statiquement et peut être modifiée
       par un appel ultérieur à getenv(), putenv(3), setenv(3) ou unsetenv(3).

       Le mode « secure execution » (exécution sécurisée) de  secure_getenv()  est  contrôlé  par
       l'attribut  AT_SECURE  contenu  dans  le  vecteur  auxiliaire  passé  du  noyau à l'espace
       utilisateur.

VOIR AUSSI

       clearenv(3), getauxval(3), putenv(3), setenv(3), unsetenv(3), capabilities(7), environ(7)

COLOPHON

       Cette page fait partie de la publication 3.65 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> ».