Provided by: manpages-dev_3.35-0.1ubuntu1_all bug

NAME

       clearenv - clear the environment

SYNOPSIS

       #include <stdlib.h>

       int clearenv(void);

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

       clearenv(): _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.

RETURN VALUE

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

VERSIONS

       Not in libc4, libc5.  In glibc since glibc 2.0.

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  (cf.  B.4.6.1).    However,
       POSIX.1-2001 only adds putenv(3), and rejected clearenv().

NOTES

       Used in security-conscious applications.  If it is unavailable the assignment

           environ = NULL;

       will probably do.

       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 3.35 of the Linux man-pages project.  A description of the
       project, and information about reporting bugs, can be found at  http://man7.org/linux/man-
       pages/.