summaryrefslogtreecommitdiff
path: root/static/freebsd/man9/dnv.9 3.html
diff options
context:
space:
mode:
authorJacob McDonnell <jacob@jacobmcdonnell.com>2026-04-25 19:55:43 -0400
committerJacob McDonnell <jacob@jacobmcdonnell.com>2026-04-25 19:55:43 -0400
commitac5e55f5f2af5b92794c2aded46c6bae85b5f5ed (patch)
tree9367490586c84cba28652e443e3166d66c33b0d9 /static/freebsd/man9/dnv.9 3.html
parent253e67c8b3a72b3a4757fdbc5845297628db0a4a (diff)
docs: Added All FreeBSD Manuals
Diffstat (limited to 'static/freebsd/man9/dnv.9 3.html')
-rw-r--r--static/freebsd/man9/dnv.9 3.html153
1 files changed, 153 insertions, 0 deletions
diff --git a/static/freebsd/man9/dnv.9 3.html b/static/freebsd/man9/dnv.9 3.html
new file mode 100644
index 00000000..3e295eaf
--- /dev/null
+++ b/static/freebsd/man9/dnv.9 3.html
@@ -0,0 +1,153 @@
+<table class="head">
+ <tr>
+ <td class="head-ltitle">DNV(9)</td>
+ <td class="head-vol">Kernel Developer's Manual</td>
+ <td class="head-rtitle">DNV(9)</td>
+ </tr>
+</table>
+<div class="manual-text">
+<section class="Sh">
+<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
+<p class="Pp"><code class="Nm">dnvlist_get</code>,
+ <code class="Nm">dnvlist_take</code> &#x2014; <span class="Nd">API for
+ getting name/value pairs with a default value</span></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="LIBRARY"><a class="permalink" href="#LIBRARY">LIBRARY</a></h1>
+<p class="Pp"><span class="Lb">Name/value pairs library (libnv, -lnv)</span></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
+<p class="Pp"><code class="In">#include
+ &lt;<a class="In">sys/dnv.h</a>&gt;</code></p>
+<p class="Pp"><var class="Ft">bool</var>
+ <br/>
+ <code class="Fn">dnvlist_get_bool</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">bool
+ defval</var>);</p>
+<p class="Pp"><var class="Ft">uint64_t</var>
+ <br/>
+ <code class="Fn">dnvlist_get_number</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">uint64_t
+ defval</var>);</p>
+<p class="Pp"><var class="Ft">char *</var>
+ <br/>
+ <code class="Fn">dnvlist_get_string</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *defval</var>);</p>
+<p class="Pp"><var class="Ft">nvlist_t *</var>
+ <br/>
+ <code class="Fn">dnvlist_get_nvlist</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">nvlist_t
+ *defval</var>);</p>
+<p class="Pp"><var class="Ft">int</var>
+ <br/>
+ <code class="Fn">dnvlist_get_descriptor</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">int
+ defval</var>);</p>
+<p class="Pp"><var class="Ft">void *</var>
+ <br/>
+ <code class="Fn">dnvlist_get_binary</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">size_t
+ *sizep</var>, <var class="Fa" style="white-space: nowrap;">void
+ *defval</var>, <var class="Fa" style="white-space: nowrap;">size_t
+ defsize</var>);</p>
+<p class="Pp"><var class="Ft">bool</var>
+ <br/>
+ <code class="Fn">dnvlist_take_bool</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">bool
+ defval</var>);</p>
+<p class="Pp"><var class="Ft">uint64_t</var>
+ <br/>
+ <code class="Fn">dnvlist_take_number</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">uint64_t
+ defval</var>);</p>
+<p class="Pp"><var class="Ft">char *</var>
+ <br/>
+ <code class="Fn">dnvlist_take_string</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *defval</var>);</p>
+<p class="Pp"><var class="Ft">nvlist_t *</var>
+ <br/>
+ <code class="Fn">dnvlist_take_nvlist</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">nvlist_t
+ *defval</var>);</p>
+<p class="Pp"><var class="Ft">int</var>
+ <br/>
+ <code class="Fn">dnvlist_take_descriptor</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">int
+ defval</var>);</p>
+<p class="Pp"><var class="Ft">void *</var>
+ <br/>
+ <code class="Fn">dnvlist_take_binary</code>(<var class="Fa" style="white-space: nowrap;">const
+ nvlist_t *nvl</var>, <var class="Fa" style="white-space: nowrap;">const char
+ *name</var>, <var class="Fa" style="white-space: nowrap;">size_t
+ *sizep</var>, <var class="Fa" style="white-space: nowrap;">void
+ *defval</var>, <var class="Fa" style="white-space: nowrap;">size_t
+ defsize</var>);</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+<p class="Pp">The <code class="Nm">libnv</code> library permits easy management
+ of name/value pairs and can send and receive them over sockets. For more
+ information, see <a class="Xr">nv(9)</a>.</p>
+<p class="Pp">The <code class="Nm">dnvlist_get</code> functions return the value
+ associated with <var class="Fa">name</var>. If an element named
+ <var class="Fa">name</var> does not exist, the function returns the value
+ provided in <var class="Fa">defval</var>. Returned strings, nvlists,
+ descriptors, binaries, or arrays must not be modified by the user since they
+ still belong to the nvlist. If the nvlist is in an error state, attempts to
+ use any of these functions will cause the program to abort.</p>
+<p class="Pp" id="free">The <code class="Nm">dnvlist_take</code> functions
+ return the value associated with <var class="Fa">name</var> and removes the
+ associated element from <var class="Fa">nvl</var>. If an element named
+ <var class="Fa">name</var> does not exist, the value provided in
+ <code class="Nm">defval</code> is returned. When the value is a string,
+ binary, or array value, the caller is responsible for freeing returned
+ memory with
+ <a class="permalink" href="#free"><code class="Fn">free</code></a>(<var class="Fa">3</var>).
+ When the value is an nvlist, the caller is responsible for destroying the
+ returned nvlist with
+ <a class="permalink" href="#nvlist_destroy"><code class="Fn" id="nvlist_destroy">nvlist_destroy</code></a>().
+ When the value is a descriptor, the caller is responsible for closing the
+ returned descriptor with
+ <a class="permalink" href="#close"><code class="Fn" id="close">close</code></a>(<var class="Fa">2</var>).</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
+ ALSO</a></h1>
+<p class="Pp"><a class="Xr">close(2)</a>, <a class="Xr">free(3)</a>,
+ <a class="Xr">nv(9)</a></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
+<p class="Pp">The <code class="Nm">dnv</code> API appeared in
+ <span class="Ux">FreeBSD 11.0</span>.</p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
+<p class="Pp">The <code class="Nm">dnv</code> API was implemented by
+ <span class="An">Pawel Jakub Dawidek</span>
+ &lt;<a class="Mt" href="mailto:pawel@dawidek.net">pawel@dawidek.net</a>&gt;
+ under sponsorship from the FreeBSD Foundation. This manual page was written
+ by <span class="An">Adam Starak</span>
+ &lt;<a class="Mt" href="mailto:starak.adam@gmail.com">starak.adam@gmail.com</a>&gt;</p>
+</section>
+</div>
+<table class="foot">
+ <tr>
+ <td class="foot-date">January 3, 2025</td>
+ <td class="foot-os">FreeBSD 15.0</td>
+ </tr>
+</table>