NVLIST_REMOVE(9F) Kernel Functions for Drivers NVLIST_REMOVE(9F)

nvlist_remove, nvlist_remove_all - remove name-value pairs

#include <sys/nvpair.h>
int nvlist_remove(nvlist_t *nvl, const char *name, data_type_t type);

int  nvlist_remove_all(nvlist_t *nvl, const char *name);

illumos DDI specific (illumos DDI)

nvl
The list of name-value pairs (nvlist_t) to be processed.

name

Name of the name-value pair (nvpair) to be removed.

type

Data type of the nvpair to be removed.

The nvlist_remove() function removes the first occurrence of nvpair that matches the name and the type.

The nvlist_remove_all() function removes all occurrences of nvpair that match the name, regardless of type.

Multiple threads can simultaneously read the same nvlist_t but only one thread may actively change a given nvlist_t at a time. The caller is responsible for the synchronization.

These functions return 0 on success and an error value on failure.

The nvlist_remove() and nvlist_remove_all() functions can be called from user, interrupt, or kernel context.

EINVAL
There is an invalid argument.

ENOENT

No name-value pairs were found to match the criteria specified by name and type.

January 16, 2006 OmniOS