KENV(2) | System Calls Manual | KENV(2) |
kenv
— kernel
environment
Standard C Library (libc, -lc)
#include
<kenv.h>
int
kenv
(int
action, const char
*name, char *value,
int len);
The
kenv
()
system call manipulates kernel environment variables. It supports the well
known userland actions of getting, setting and unsetting environment
variables, as well as the ability to dump all of the entries in the kernel
environment.
The action argument can be one of the following:
KENV_GET
KENV_MVALLEN
+ 1 bytes to avoid truncation and to
ensure NUL termination.KENV_SET
KENV_MNAMELEN
and
KENV_MVALLEN
characters, respectively (not
including the NUL terminator.) The len argument
indicates the length of the value and must include
the NUL terminator. This option is only available to the superuser.KENV_UNSET
KENV_DUMP
NULL
,
kenv
()
will return the number of bytes required to copy out the entire
environment. The name is ignored.The kenv
() system call returns 0 if
successful in the case of KENV_SET
and
KENV_UNSET
, and the number of bytes copied into
value in the case of KENV_DUMP
and KENV_GET
. If an error occurs, a value of -1 is
returned and the global variable errno is set to
indicate the error.
The kenv
() system call will fail if:
EINVAL
]KENV_SET
.ENOENT
]KENV_GET
or
KENV_UNSET
.EPERM
]EFAULT
]ENAMETOOLONG
]KENV_MNAMELEN
or
KENV_MVALLEN
characters, respectively, or
len did not include the NUL terminator for a
KENV_SET
.This manual page was written by Chad David <davidc@FreeBSD.org>.
The kenv
() system call was written by
Maxime Henrion
<mux@FreeBSD.org>.
February 20, 2017 | Debian |