clearenv(3) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

clearenv(3)

CLEARENV(3)                Linux Programmer's Manual               CLEARENV(3)



NAME
       clearenv - clear the environment

SYNOPSIS
       #include <stdlib.h>

       int clearenv(void);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       clearenv():
           /* Glibc since 2.19: */ _DEFAULT_SOURCE
               || /* Glibc versions <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE

DESCRIPTION
       The  clearenv() function clears the environment of all name-value pairs
       and sets the value of the external variable  environ  to  NULL.   After
       this  call,  new  variables  can  be  added  to  the  environment using
       putenv(3) and setenv(3).

RETURN VALUE
       The clearenv() function returns zero on success, and a nonzero value on
       failure.

VERSIONS
       Available since glibc 2.0.

ATTRIBUTES
       For   an   explanation   of   the  terms  used  in  this  section,  see
       attributes(7).

       allbox; lb lb  lb  l  l  l.   Interface Attribute Value  T{  clearenv()
       T}   Thread safety MT-Unsafe const:env


CONFORMING TO
       Various  UNIX variants (DG/UX, HP-UX, QNX, ...).  POSIX.9 (bindings for
       FORTRAN77).  POSIX.1-1996 did not accept clearenv() and putenv(3),  but
       changed  its mind and scheduled these functions for some later issue of
       this  standard  (see  §B.4.6.1).   However,  POSIX.1-2001   adds   only
       putenv(3), and rejected clearenv().

NOTES
       On systems where clearenv() is unavailable, the assignment

           environ = NULL;

       will probably do.

       The  clearenv()  function  may be useful in security-conscious applica‐
       tions that want to precisely control the environment that is passed  to
       programs  executed  using  exec(3).   The  application would do this by
       first clearing the environment and then adding select environment vari‐
       ables.

       Note  that  the main effect of clearenv() is to adjust the value of the
       pointer environ(7); this function does not erase the  contents  of  the
       buffers containing the environment definitions.

       The  DG/UX  and  Tru64 man pages write: If environ has been modified by
       anything other than the putenv(3), getenv(3), or clearenv()  functions,
       then  clearenv()  will return an error and the process environment will
       remain unchanged.

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

COLOPHON
       This page is part of release 5.02 of the Linux  man-pages  project.   A
       description  of  the project, information about reporting bugs, and the
       latest    version    of    this    page,    can     be     found     at
       https://www.kernel.org/doc/man-pages/.



Linux                             2017-09-15                       CLEARENV(3)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3