NAME
clearenv - clear the environment
SYNOPSIS
#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 (DGUX, HPUX, 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, SUSv3
only adds
putenv(), and rejected
clearenv().
NOTES
Used in security-conscious applications. If it is unavailable
the assignment
-
environ = NULL;
will probably do.
The DGUX 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(5)
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUE
-
- AVAILABILITY
-
- CONFORMING TO
-
- NOTES
-
- SEE ALSO
-