Linux Man на русском

  User    Syst    Libr    Device    Files    Other    Admin  



   clearenv - очищает окружение

clearenv(3) очищает окружение


ОБЗОР

#include <stdlib.h>


int clearenv(void);

Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

clearenv(): _SVID_SOURCE || _BSD_SOURCE


ОПИСАНИЕ

Функция clearenv() очищает окружение от всех пар имя-значение и устанавливает значение внешней переменной environ равным NULL.


ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

Функция clearenv() возвращает ноль при успешном выполнении и ненулевое значение при ошибках.

ВЕРСИИ

Доступна в glibc с версии 2.0.


АТРИБУТЫ

Описание терминов данного раздела смотрите в attributes(7).

Интерфейс Атрибут Значение
clearenv() безвредность в потоках: небезопасно (MT-Unsafe const:env)


СООТВЕТСТВИЕ СТАНДАРТАМ

Есть в различных версиях UNIX (DG/UX, HP-UX, QNX, …). В POSIX.9 (привязки для FORTRAN77). В POSIX.1-1996 функции clearenv() и putenv() не приняты, но указано, что они войдут в следующие версии стандарта (B.4.6.1). Однако, в POSIX.1-2001 добавлена только putenv(), а clearenv() — отклонена.


ЗАМЕЧАНИЯ

Используется в приложениях, заботящихся о безопасности. Если функция отсутствует, то присвойте
    environ = NULL;
самостоятельно.

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