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

NOM

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

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   (consultez
   feature_test_macros(7)) :

       setenv(), unsetenv() :
           _BSD_SOURCE || _POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600

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

       La  fonction setenv() renvoie zéro si elle réussit, et -1 si elle échoue, auquel cas errno
       contient le code de l'erreur.

       La fonction unsetenv() renvoie zéro si elle réussit, et -1  si  elle  échoue,  auquel  cas
       errno contient le code de l'erreur.

ERREURS

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

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

CONFORMITÉ

       BSD 4.3, POSIX.1-2001.

NOTES

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

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

BOGUES

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

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).  Nicolas  François  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> ».