clearenv – linux man page

August 27th, 2009 | Tags: , , , , ,

clearenv – clear the environment

USAGE
       #include <stdlib.h>

       int clearenv(void);

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  non-zero  value
       on failure.

AVAILABILITY
       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(),  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(),
       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 manpages write: If environ  has  been  modified  by
       anything  other  than  the putenv(), getenv(), 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)

Comments are closed.