unsetenv(3) - Linux man page
Name
setenv - change or add an environment variable
Synopsis
#include <stdlib.h>
int setenv(const char *name, const char *value, int overwrite);
int unsetenv(const char *name);
Description
The
setenv() function adds the variable
name to the environment with the value
value, if
name does not already exist. If
name does exist in the environment, then its value is changed to
value if
overwrite is non-zero; if
overwrite is zero, then the value of
name is not changed.
The unsetenv() function deletes the variable name from the environment.
Return Value
The
setenv() function returns zero on success, or -1 if there was insufficient space in
the environment. The
unsetenv() function returns zero on success, or -1 on error, with
errno set to indicate the cause of the error.
Errors
- EINVAL
- name contained an '=' character.
Conforming to
4.3BSD, POSIX.1-2001.
Notes
Prior to glibc 2.2.2,
unsetenv() was prototyped as returning
void; more recent glibc
versions follow the POSIX.1-2001-compliant prototype shown in the SYNOPSIS.
Bugs
POSIX.1-2001 specifies that if
name contains an '=' character, then
setenv() should fail
with the error
EINVAL; however, versions of glibc before 2.3.4 allowed an '=' sign in
name.
See Also
clearenv(3),
getenv(3),
putenv(3),
environ(7)
Referenced By
environ(5)