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

GNU                                              11 octobre 2013                                       SETENV(3)