Provided by: manpages-ru-dev_4.27.0-1_all bug

НАИМЕНОВАНИЕ

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

БИБЛИОТЕКА

       Стандартная библиотека языка C (libc, -lc)

ОБЗОР

       #include <stdlib.h>

       int clearenv(void);

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

       clearenv():
           /* glibc >= 2.19: */ _DEFAULT_SOURCE
               || /* glibc <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE

ОПИСАНИЕ

       Функция clearenv() очищает окружение от всех пар имя-значение и устанавливает значение внешней переменной
       environ  равным NULL. После этого вызова новые переменные можно добавлять в окружение с помощью putenv(3)
       и setenv(3).

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

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

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).
       ┌──────────────────────────────────────────────────────────┬──────────────────────┬─────────────────────┐
       │ ИнтерфейсАтрибутЗначение            │
       ├──────────────────────────────────────────────────────────┼──────────────────────┼─────────────────────┤
       │ clearenv()                                               │ Безвредность в нитях │ MT-Unsafe const:env │
       └──────────────────────────────────────────────────────────┴──────────────────────┴─────────────────────┘

СТАНДАРТЫ

       putenv()
              POSIX.1-2008.

       clearenv()
              Отсутствуют.

ИСТОРИЯ

       putenv()
              glibc 2.0.  POSIX.1-2001.

       clearenv()
              glibc 2.0.

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

ПРИМЕЧАНИЯ

       В системах, где clearenv() отсутствует, присваивайте

           environ = NULL;

       самостоятельно.

       Функция clearenv() может пригодиться  в  приложениях,  которые  для  безопасности  полностью  контролирую
       окружение,  передаваемое  программам,  запускающимся  посредством  exec(3).  Для этого приложение сначала
       очищает окружение, а затем добавляет выборочные переменные окружения.

       Заметим, что главным свойством clearenv() является присвоение значения указателю environ(7); эта  функция
       не стирает содержимое буферов, содержащих само окружение.

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

СМОТРИТЕ ТАКЖЕ

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

ПЕРЕВОД

       Русский перевод этой страницы  руководства  разработал(и)  Azamat  Hackimov  <azamat.hackimov@gmail.com>,
       Dmitriy   S.   Seregin  <dseregin@59.ru>,  Dmitry  Bolkhovskikh  <d20052005@yandex.ru>,  Katrin  Kutepova
       <blackkatelv@gmail.com>, Yuri Kozlov  <yuray@komyakino.ru>,  Иван  Павлов  <pavia00@gmail.com>  и  Kirill
       Rekhov <krekhov.dev@gmail.com>

       Этот  перевод является свободной программной документацией; он распространяется на условиях общедоступной
       лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html  версии  3  или
       более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

       Если  вы  обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом
       разработчику(ам)  по  его(их)  адресу(ам)  электронной  почты  или  по   адресу   списка рассылки русских
       переводчиков.

Справочные страницы Linux 6.9.1                   2 мая 2024 г.                                      clearenv(3)