CLEARENV(3)

НАЗВАНИЕ
clearenv - очищает окружение

СИНТАКСИС
#include <stdlib.h>

int clearenv(void);

ОПИСАНИЕ
Функция clearenv() очищает окружение всех пар имя-значение и устанавливает значение внешней переменной environ в значение NULL.

ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
Функция clearenv() вовзвращает ноль при нормальном завершении работы и ненулевое значение при ошибках.

ДОСТУПНОСТЬ
Не в libc4, libc5. В glibc начиная с glibc 2.0.

СООТВЕТСТВИЕ СТАНДАРТАМ
Разные версии Unix (DGUX, HPUX, QNX, ...). POSIX.9 (привязки для FORTRAN77). POSIX.1-1996 не воспринимал clearenv() и putenv(), но затем его поведение изменилось и эти функции были включены в последующие версии этого стандарта (B.4.6.1). Однако, SUSv3 добавляет только putenv() и отвергает clearenv().

ЗАМЕЧАНИЯ
Используется в приложениях, заботящихся о безопасности. Если это неизбежно, то исполните:
    	environ = NULL;

В страницах руководства DGUX и Tru64 написано: Если environ изменяется не с помощью функций putenv(), getenv(), или clearenv(), то clearenv() возвратит ошибку и окружение процесса не будет изменяться.

СМ. ТАКЖЕ
getenv(3), putenv(3), setenv(3), unsetenv(3), environ(5)