Provided by: manpages-de-dev_0.10-1_all bug

BEZEICHNUNG

       putenv - eine Umgebungsvariable ändern oder hinzufügen

ÜBERSICHT

       #include <stdlib.h>

       int putenv(char *zeichenkette);

   Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

       putenv(): _SVID_SOURCE || _XOPEN_SOURCE

BESCHREIBUNG

       Die  Funktion  putenv() fügt Umgebungsvariablen hinzu oder ändert ihren
       Wert. Das Argument zeichenkette hat die Form Name = Wert. Wenn Name  in
       der  Umgebung  noch  nicht  existiert,  dann  wird  zeichenkette zu der
       Umgebung hinzugefügt. Wenn Name existiert, dann wird der Wert von  Name
       in   der   Umgebung  auf  Wert  geändert.  Die  Zeichenkette,  auf  die
       zeichenkette  zeigt,  wird  Teil  der  Umgebung,  daher  verändert  das
       Abändern der Zeichenkette die Umgebung.

RÜCKGABEWERT

       Die  Funktion  putenv()  gibt  bei Erfolg null zurück und einen anderen
       Wert als null, wenn ein Fehler auftritt.

FEHLER

       ENOMEM nicht  ausreichend  Speicher  vorhanden,  um  neue  Umgebung  zu
              reservieren

KONFORM ZU

       SVr4, POSIX.1-2001, 4.3BSD.

ANMERKUNGEN

       Die Funktion putenv() muss nicht ablaufinvariant sein und die in Libc4,
       Libc5 und Glibc 2.0 ist es auch nicht, wohl  aber  die  in  Version  in
       Glibc 2.1.

       Beschreibung   für   Libc4,   Libc5   und  Glibc:  Falls  das  Argument
       zeichenkette die Form Name hat und nicht das Zeichen »=« enthält,  dann
       wird  die  Variable Name aus der Umgebung entfernt. Falls putenv() eine
       neues Feld umgebung reservieren muss und das vorherige Feld auch  durch
       putenv()  reserviert  wurde,  wird es freigegeben. Auf keinen Fall wird
       der alte Speicher freigegeben, der mit  der  Umgebungsvarialben  selbst
       verbunden ist.

       Die  Versionen  von Libc4, Libc5 und Glibc 2.1.2 sind konform zu SUSv2:
       Der  an  putenv()  übergebene   Zeiger   zeichenkette   wird   benutzt.
       Insbesondere  wird  die  Zeichenkette  Teil der Umgebung; sie später zu
       ändern wird die Umgebung ändern. (Daher ist es ein Fehler putenv()  mit
       einer  automatischen  Variable als Argument aufzurufen und dann von der
       aufrufenden Funktion zurückzukehren, während  zeichenkette  noch  immer
       Teil  der  Umgebung  ist.)  Glibc  2.0-2.1.1  unterscheidet sich jedoch
       davon:  Es  wird  eine  Kopie  der  Zeichenkette  benutzt.   Einerseits
       verursacht dies ein Speicherleck, andererseits verstößt es gegen SUSv2.
       Dies wurde in Glibc 2.1.2 behoben.

       Die 4.4BSD-Version, wie Glibc 2.0, benutzt eine Kopie.

       SUSv2 entfernt die Konstante aus dem  Prototyp,  daher  tut  dies  auch
       Glibc 2.1.3.

SIEHE AUCH

       clearenv(3), getenv(3), setenv(3), unsetenv(3), environ(7)

KOLOPHON

       Diese   Seite   ist   Teil   der  Veröffentlichung  3.32  des  Projekts
       Linux-man-pages. Eine Beschreibung des Projekts und Informationen,  wie
       Fehler     gemeldet     werden     können,     finden     sich    unter
       http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Patrick  Rother
       <krd@gulu.net>,  Martin  Schulze  <joey@infodrom.org>  und  Chris Leick
       <c.leick@vollbio.de> erstellt.

       Diese Übersetzung ist Freie Dokumentation; lesen Sie  die  GNU  General
       Public   License   Version   3  oder  neuer  bezüglich  der  Copyright-
       Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn  Sie  Fehler  in  der  Übersetzung  dieser  Handbuchseite  finden,
       schicken     Sie     bitte     eine     E-Mail     an     <debian-l10n-
       german@lists.debian.org>.