NAME
getenv, setenv, unsetenv - manipulate environmental
variables
SYNOPSIS
char *getenv(name)
const char *name;
int setenv(name, value,
overwrite)
const char *name, value;
int overwrite;
void unsetenv(name)
const char *name;
DESCRIPTION
Getenv searches the environment list (see environ(7)) for a
string
of the form name=value and returns a pointer to the string
value if
such a string is present, and 0 (NULL) if it is not.
Setenv searches the environment
list as getenv does; 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. Setenv returns 0 on success and -1 on
failure, where failure is caused by an inability to allocate
space
for the environment.
Unsetenv 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[1];
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 ALSO
csh(1), sh(1), execve(2), environ(7)