| Current File : //usr/man/man3lib/libnvpair.3lib |
'\" te
.\" Copyright (c) 2008, 2011, Oracle and/or its affiliates. All rights reserved.
.TH libnvpair 3LIB "23 Aug 2011" "SunOS 5.11" "Interface Libraries"
.SH NAME
libnvpair \- name-value pair library
.SH SYNOPSIS
.LP
.nf
cc [ \fIflag\fR... ] \fIfile\fR... \fB-lnvpair\fR [ \fIlibrary\fR... ]
#include <\fBlibnvpair.h\fR>
.fi
.SH DESCRIPTION
.sp
.LP
The \fBlibnvpair\fR library exports a set of functions for managing name-value pairs.
.sp
.LP
The library defines four opaque handles:
.sp
.ne 2
.mk
.na
\fB\fBnvpair_t\fR\fR
.ad
.RS 18n
.rt
handle to a name-value pair
.RE
.sp
.ne 2
.mk
.na
\fB\fBnvlist_t\fR\fR
.ad
.RS 18n
.rt
handle to a list of name-value pairs
.RE
.sp
.ne 2
.mk
.na
\fB\fBnv_alloc_t\fR\fR
.ad
.RS 18n
.rt
handle to a pluggable allocator
.RE
.sp
.ne 2
.mk
.na
\fB\fBnv_alloc_ops_t\fR\fR
.ad
.RS 18n
.rt
handle to pluggable allocator operations
.RE
.sp
.LP
The library supports the following operations:
.RS +4
.TP
.ie t \(bu
.el o
Allocate and free an \fBnvlist_t\fR.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Specify the allocater to be used when manipulating an \fBnvlist_t\fR.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Add and remove an \fBnvpair_t\fR from a list.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Search \fBnvlist_t\fR for a specified name pair.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Pack an \fBnvlist_t\fR into a contiguous buffer.
.RE
.RS +4
.TP
.ie t \(bu
.el o
Expand a packed nvlist into a searchable \fBnvlist_t\fR.
.RE
.SH INTERFACES
.sp
.LP
The shared object \fBlibnvpair.so.1\fR provides the public interfaces defined below. See \fBIntro\fR(3) for additional information on shared object interfaces.
.sp
.sp
.TS
tab();
lw(2.75i) lw(2.75i)
lw(2.75i) lw(2.75i)
.
\fBnvlist_add_boolean\fR\fBnvlist_add_boolean_value\fR
\fBnvlist_add_boolean_array\fR\fBnvlist_add_byte\fR
\fBnvlist_add_byte_array\fR\fBnvlist_add_double\fR
\fBnvlist_add_int8\fR\fBnvlist_add_int8_array\fR
\fBnvlist_add_int16\fR\fBnvlist_add_int16_array\fR
\fBnvlist_add_int32\fR\fBnvlist_add_int32_array\fR
\fBnvlist_add_int64\fR\fBnvlist_add_int64_array\fR
\fBnvlist_add_nvlist\fR\fBnvlist_add_nvlist_array\fR
\fBnvlist_add_nvpair\fR\fBnvlist_add_string\fR
\fBnvlist_add_string_array\fR\fBnvlist_add_uint8\fR
\fBnvlist_add_uint8_array\fR\fBnvlist_add_uint16\fR
\fBnvlist_add_uint16_array\fR\fBnvlist_add_uint32\fR
\fBnvlist_add_uint32_array\fR\fBnvlist_add_uint64\fR
\fBnvlist_add_uint64_array\fR\fBnvlist_alloc\fR
\fBnvlist_dup\fR\fBnvlist_exists\fR
\fBnvlist_free\fR\fBnvlist_lookup_boolean\fR
\fBnvlist_lookup_boolean_value\fR\fBnvlist_lookup_boolean_array\fR
\fBnvlist_lookup_byte\fR\fBnvlist_lookup_byte_array\fR
\fBnvlist_lookup_double\fR\fBnvlist_lookup_int8\fR
\fBnvlist_lookup_int8_array\fR\fBnvlist_lookup_int16\fR
\fBnvlist_lookup_int16_array\fR\fBnvlist_lookup_int32\fR
\fBnvlist_lookup_int32_array\fR\fBnvlist_lookup_int64\fR
\fBnvlist_lookup_int64_array\fR\fBnvlist_lookup_nvlist\fR
\fBnvlist_lookup_nvlist_array\fR\fBnvlist_lookup_nv_alloc\fR
\fBnvlist_lookup_nvpair\fR\fBnvlist_lookup_pairs\fR
\fBnvlist_lookup_string\fR\fBnvlist_lookup_string_array\fR
\fBnvlist_lookup_uint8\fR\fBnvlist_lookup_uint8_array\fR
\fBnvlist_lookup_uint16\fR\fBnvlist_lookup_uint16_array\fR
\fBnvlist_lookup_uint32\fR\fBnvlist_lookup_uint32_array\fR
\fBnvlist_lookup_uint64\fR\fBnvlist_lookup_uint64_array\fR
\fBnvlist_merge\fR\fBnvlist_next_nvpair\fR
\fBnvlist_nvflag\fR\fBnvlist_pack\fR
\fBnvlist_remove\fR\fBnvlist_remove_all\fR
\fBnvlist_size\fR\fBnvlist_unpack\fR
\fBnvlist_xalloc\fR\fBnvlist_xdup\fR
\fBnvlist_xpack\fR\fBnvlist_xunpack\fR
\fBnvpair_name\fR\fBnvpair_type\fR
\fBnvpair_value_boolean_array\fR\fBnvpair_value_boolean_value\fR
\fBnvpair_value_byte\fR\fBnvpair_value_byte_array\fR
\fBnvpair_value_double\fR\fBnvpair_value_int8\fR
\fBnvpair_value_int8_array\fR\fBnvpair_value_int16\fR
\fBnvpair_value_int16_array\fR\fBnvpair_value_int32\fR
\fBnvpair_value_int32_array\fR\fBnvpair_value_int64\fR
\fBnvpair_value_int64_array\fR\fBnvpair_value_nvlist\fR
\fBnvpair_value_nvlist_array\fR\fBnvpair_value_string\fR
\fBnvpair_value_string_array\fR\fBnvpair_value_uint8\fR
\fBnvpair_value_uint8_array\fR\fBnvpair_value_uint16\fR
\fBnvpair_value_uint16_array\fR\fBnvpair_value_uint32\fR
\fBnvpair_value_uint32_array\fR\fBnvpair_value_uint64\fR
\fBnvpair_value_uint64_array\fR\fBnv_alloc_init\fR
\fBnv_alloc_fini\fR\fBnv_alloc_reset\fR
.TE
.SH FILES
.sp
.ne 2
.mk
.na
\fB\fB/lib/libnvpair.so.1\fR\fR
.ad
.RS 26n
.rt
shared object
.RE
.sp
.ne 2
.mk
.na
\fB\fB/lib/64/libnvpair.so.1\fR\fR
.ad
.RS 26n
.rt
64-bit shared object
.RE
.SH ATTRIBUTES
.sp
.LP
See \fBattributes\fR(5) for description of the following attributes:
.sp
.sp
.TS
tab() box;
cw(2.75i) |cw(2.75i)
lw(2.75i) |lw(2.75i)
.
ATTRIBUTE TYPEATTRIBUTE VALUE
_
Availabilitysystem/library
_
Interface StabilityCommitted
_
MT-LevelMT-Safe
.TE
.SH SEE ALSO
.sp
.LP
\fBIntro\fR(3), \fBattributes\fR(5)