getenv, setenv, unsetenv - manipulate environment variables
setenv(name, value, overwrite)
char *name, value;
The subroutine searches the environment list for a string of the form
name = value and returns a pointer to the string value if such a string
is present, otherwise returns the value 0 (NULL). For further informa‐
The subroutine searches the environment list in the same manner as If
the string name is not found, a string of the form name=value is added
to the environment. If it is found, and overwrite is non-zero, its
value is changed to value. The subroutine returns 0 on success and -1
on failure, where failure is caused by an inability to allocate space
for the environment.
The subroutine removes all occurrences of the string name from the
environment. There is no library provision for completely removing the
current environment. It is suggested that the following code be used
to do so.
static char *envinit;
extern char **environ;
environ = envinit;
All of these routines permit, but do not require, a trailing equals
sign (=) on name or a leading equals sign on value.
See Alsocsh(1), sh(1), execve(2), putenv(3), environ(7)getenv(3)