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

NOM

       setenv, unsetenv - Changer ou ajouter une variable d'environnement

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <stdlib.h>

       int setenv(const char *name, const char *value, int overwrite);
       int unsetenv(const char *name);

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

       setenv(), unsetenv() :
           _POSIX_C_SOURCE >= 200112L
               || /* glibc <= 2.19 : */ _BSD_SOURCE

DESCRIPTION

       La fonction setenv() ajoute la variable name dans l'environnement  en  lui  attribuant  la
       valeur  value si name n'existe pas encore. Si name existe déjà dans l'environnement, alors
       sa valeur est modifiée en value si overwrite est non nul ;  si  overwrite  vaut  zéro,  la
       valeur  de  name  n'est pas modifiée et setenv() renvoie un code de succès. Cette fonction
       crée des copies des chaînes pointées par name et value (contrairement à putenv(3)).

       La fonction unsetenv() efface la variable name de l'environnement. Si  name  n'existe  pas
       dans l'environnement, la fonction réussit et l'environnement n'est pas modifié.

VALEUR RENVOYÉE

       Les  fonctions  setenv()  et  unsetenv()  renvoient  O si elles réussissent et -1 si elles
       échouent, auquel cas errno contient le code d'erreur.

ERREURS

       EINVAL name est NULL, pointe vers une chaîne de taille 0 ou contient un caractère « = ».

       ENOMEM Pas assez de mémoire pour ajouter une nouvelle variable à l'environnement.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).

       ┌────────────────────────────────────────────┬──────────────────────┬─────────────────────┐
       │InterfaceAttributValeur              │
       ├────────────────────────────────────────────┼──────────────────────┼─────────────────────┤
       │setenv(), unsetenv()                        │ Sécurité des threads │ MT-Unsafe const:env │
       └────────────────────────────────────────────┴──────────────────────┴─────────────────────┘

STANDARDS

       POSIX.1-2001, POSIX.1-2008, 4.3BSD.

NOTES

       POSIX.1 n'impose pas que setenv() ou unsetenv() soient réentrantes.

       Avant la glibc 2.2.2, unsetenv() était prototypée pour renvoyer void ; les versions de  la
       glibc plus récentes suivent le prototype conforme à POSIX.1 comme montré dans le SYNOPSIS.

BOGUES

       POSIX.1  indique  que  si name contient un caractère « = », alors setenv() devrait échouer
       avec l'erreur EINVAL ; toutefois, les versions antérieures à la  glibc 2.3.4  autorisaient
       l'utilisation du caractère « = » dans name.

VOIR AUSSI

       clearenv(3), getenv(3), putenv(3), environ(7)

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   Grégoire   Scano
       <gregoire.scano@malloc.fr>

       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⟩.