Provided by: manpages-de-dev_2.5-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(): _XOPEN_SOURCE
           || /* Glibc seit 2.19: */ _DEFAULT_SOURCE
           || /* Glibc-Versionen <= 2.19: */ _SVID_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. Im  Fehlerfall  wird  errno  gesetzt,  um  die  Ursache  des  Fehlers
       anzuzeigen.

FEHLER

       ENOMEM nicht ausreichend Speicher vorhanden, um neue Umgebung zu reservieren

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

       ┌──────────────┬───────────────────────┬─────────────────────┐
       │SchnittstelleAttributWert                │
       ├──────────────┼───────────────────────┼─────────────────────┤
       │putenv()      │ Multithread-Fähigkeit │ MT-Unsafe const:env │
       └──────────────┴───────────────────────┴─────────────────────┘

KONFORM ZU

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

ANMERKUNGEN

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

       Seit Version 2.1.2  ist  die  Glibc-Implementation  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  Fehle,r
       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  bis  2.1.1  unterscheidet  sich  jedoch  davon:  Es wird eine Kopie der
       Zeichenkette benutzt. Zum einen verursacht dies ein  Speicherleck,  außerdem  verstößt  es
       gegen SUSv2.

       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  4.15  des  Projekts  Linux-man-pages. Eine
       Beschreibung des Projekts, Informationen, wie Fehler  gemeldet  werden  können  sowie  die
       aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die  deutsche  Übersetzung  dieser  Handbuchseite wurde von Patrick Rother <krd@gulu.net>,
       Martin Schulze <joey@infodrom.org>, Chris Leick <c.leick@vollbio.de> und Mario Blättermann
       <mario.blaettermann@gmail.com> 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>.