about summary refs log tree commit diff
path: root/docs/libnm-util/html/libnm-util-nm-utils.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/libnm-util/html/libnm-util-nm-utils.html')
-rw-r--r--docs/libnm-util/html/libnm-util-nm-utils.html1074
1 files changed, 1074 insertions, 0 deletions
diff --git a/docs/libnm-util/html/libnm-util-nm-utils.html b/docs/libnm-util/html/libnm-util-nm-utils.html
new file mode 100644
index 00000000..9e0a9182
--- /dev/null
+++ b/docs/libnm-util/html/libnm-util-nm-utils.html
@@ -0,0 +1,1074 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>nm-utils</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
+<link rel="home" href="index.html" title="libnm-util Reference Manual">
+<link rel="up" href="ch01.html" title="libnm-util API Reference">
+<link rel="prev" href="NMSettingVPN.html" title="NMSettingVPN">
+<link rel="next" href="object-tree.html" title="Object Hierarchy">
+<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="NMSettingVPN.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">libnm-util Reference Manual</th>
+<td><a accesskey="n" href="object-tree.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#libnm-util-nm-utils.synopsis" class="shortcut">Top</a>
+                   | 
+                  <a href="#libnm-util-nm-utils.description" class="shortcut">Description</a>
+</td></tr>
+</table>
+<div class="refentry" title="nm-utils">
+<a name="libnm-util-nm-utils"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="libnm-util-nm-utils.top_of_page"></a>nm-utils</span></h2>
+<p>nm-utils — Utility functions</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="libnm-util-nm-utils.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+#include &lt;nm-utils.h&gt;
+
+#define             <a class="link" href="libnm-util-nm-utils.html#nm-print-backtrace" title="nm_print_backtrace">nm_print_backtrace</a>
+#define             <a class="link" href="libnm-util-nm-utils.html#nm-get-timestamp" title="nm_get_timestamp()">nm_get_timestamp</a>                    (timestamp)
+#define             <a class="link" href="libnm-util-nm-utils.html#nm-info" title="nm_info()">nm_info</a>                             (fmt,
+                                                         args...)
+#define             <a class="link" href="libnm-util-nm-utils.html#nm-info-str" title="nm_info_str()">nm_info_str</a>                         (fmt_str,
+                                                         args...)
+#define             <a class="link" href="libnm-util-nm-utils.html#nm-debug" title="nm_debug()">nm_debug</a>                            (fmt,
+                                                         args...)
+#define             <a class="link" href="libnm-util-nm-utils.html#nm-debug-str" title="nm_debug_str()">nm_debug_str</a>                        (fmt_str,
+                                                         args...)
+#define             <a class="link" href="libnm-util-nm-utils.html#nm-warning" title="nm_warning()">nm_warning</a>                          (fmt,
+                                                         args...)
+#define             <a class="link" href="libnm-util-nm-utils.html#nm-warning-str" title="nm_warning_str()">nm_warning_str</a>                      (fmt_str,
+                                                         args...)
+#define             <a class="link" href="libnm-util-nm-utils.html#nm-error" title="nm_error()">nm_error</a>                            (fmt,
+                                                         args...)
+#define             <a class="link" href="libnm-util-nm-utils.html#nm-error-str" title="nm_error_str()">nm_error_str</a>                        (fmt_str,
+                                                         args...)
+<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="libnm-util-nm-utils.html#nm-utils-init" title="nm_utils_init ()">nm_utils_init</a>                       (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="libnm-util-nm-utils.html#nm-utils-deinit" title="nm_utils_deinit ()">nm_utils_deinit</a>                     (<em class="parameter"><code><span class="type">void</span></code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="libnm-util-nm-utils.html#nm-utils-is-empty-ssid" title="nm_utils_is_empty_ssid ()">nm_utils_is_empty_ssid</a>              (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *ssid</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> len</code></em>);
+const <span class="returnvalue">char</span> *        <a class="link" href="libnm-util-nm-utils.html#nm-utils-escape-ssid" title="nm_utils_escape_ssid ()">nm_utils_escape_ssid</a>                (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *ssid</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> len</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="libnm-util-nm-utils.html#nm-utils-same-ssid" title="nm_utils_same_ssid ()">nm_utils_same_ssid</a>                  (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid1</code></em>,
+                                                         <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid2</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> ignore_trailing_null</code></em>);
+<span class="returnvalue">char</span> *              <a class="link" href="libnm-util-nm-utils.html#nm-utils-ssid-to-utf8" title="nm_utils_ssid_to_utf8 ()">nm_utils_ssid_to_utf8</a>               (<em class="parameter"><code>const <span class="type">char</span> *ssid</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> len</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *        <a class="link" href="libnm-util-nm-utils.html#nm-utils-gvalue-hash-dup" title="nm_utils_gvalue_hash_dup ()">nm_utils_gvalue_hash_dup</a>            (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *hash</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="libnm-util-nm-utils.html#nm-utils-slist-free" title="nm_utils_slist_free ()">nm_utils_slist_free</a>                 (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> elem_destroy_fn</code></em>);
+enum                <a class="link" href="libnm-util-nm-utils.html#NMUtilsSecurityType" title="enum NMUtilsSecurityType">NMUtilsSecurityType</a>;
+<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="libnm-util-nm-utils.html#nm-utils-security-valid" title="nm_utils_security_valid ()">nm_utils_security_valid</a>             (<em class="parameter"><code><a class="link" href="libnm-util-nm-utils.html#NMUtilsSecurityType" title="enum NMUtilsSecurityType"><span class="type">NMUtilsSecurityType</span></a> type</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> wifi_caps</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> have_ap</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> adhoc</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> ap_flags</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> ap_wpa</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> ap_rsn</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip4-addresses-from-gvalue" title="nm_utils_ip4_addresses_from_gvalue ()">nm_utils_ip4_addresses_from_gvalue</a>  (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip4-addresses-to-gvalue" title="nm_utils_ip4_addresses_to_gvalue ()">nm_utils_ip4_addresses_to_gvalue</a>    (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip4-routes-from-gvalue" title="nm_utils_ip4_routes_from_gvalue ()">nm_utils_ip4_routes_from_gvalue</a>     (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip4-routes-to-gvalue" title="nm_utils_ip4_routes_to_gvalue ()">nm_utils_ip4_routes_to_gvalue</a>       (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a>             <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip4-netmask-to-prefix" title="nm_utils_ip4_netmask_to_prefix ()">nm_utils_ip4_netmask_to_prefix</a>      (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> netmask</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a>             <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip4-prefix-to-netmask" title="nm_utils_ip4_prefix_to_netmask ()">nm_utils_ip4_prefix_to_netmask</a>      (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> prefix</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a>             <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip4-get-default-prefix" title="nm_utils_ip4_get_default_prefix ()">nm_utils_ip4_get_default_prefix</a>     (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> ip</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip6-addresses-from-gvalue" title="nm_utils_ip6_addresses_from_gvalue ()">nm_utils_ip6_addresses_from_gvalue</a>  (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip6-addresses-to-gvalue" title="nm_utils_ip6_addresses_to_gvalue ()">nm_utils_ip6_addresses_to_gvalue</a>    (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip6-routes-from-gvalue" title="nm_utils_ip6_routes_from_gvalue ()">nm_utils_ip6_routes_from_gvalue</a>     (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip6-routes-to-gvalue" title="nm_utils_ip6_routes_to_gvalue ()">nm_utils_ip6_routes_to_gvalue</a>       (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip6-dns-from-gvalue" title="nm_utils_ip6_dns_from_gvalue ()">nm_utils_ip6_dns_from_gvalue</a>        (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);
+<span class="returnvalue">void</span>                <a class="link" href="libnm-util-nm-utils.html#nm-utils-ip6-dns-to-gvalue" title="nm_utils_ip6_dns_to_gvalue ()">nm_utils_ip6_dns_to_gvalue</a>          (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);
+<span class="returnvalue">char</span> *              <a class="link" href="libnm-util-nm-utils.html#nm-utils-uuid-generate" title="nm_utils_uuid_generate ()">nm_utils_uuid_generate</a>              (<em class="parameter"><code><span class="type">void</span></code></em>);
+<span class="returnvalue">char</span> *              <a class="link" href="libnm-util-nm-utils.html#nm-utils-uuid-generate-from-string" title="nm_utils_uuid_generate_from_string ()">nm_utils_uuid_generate_from_string</a>  (<em class="parameter"><code>const <span class="type">char</span> *s</code></em>);
+<a href="/usr/share/gtk-doc/html/glib/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> *        <a class="link" href="libnm-util-nm-utils.html#nm-utils-rsa-key-encrypt" title="nm_utils_rsa_key_encrypt ()">nm_utils_rsa_key_encrypt</a>            (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *data</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">char</span> *in_password</code></em>,
+                                                         <em class="parameter"><code><span class="type">char</span> **out_password</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="libnm-util-nm-utils.description"></a><h2>Description</h2>
+<p>
+A collection of utility functions for working SSIDs, IP addresses, WiFi
+access points and devices, among other things.
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="libnm-util-nm-utils.details"></a><h2>Details</h2>
+<div class="refsect2" title="nm_print_backtrace">
+<a name="nm-print-backtrace"></a><h3>nm_print_backtrace</h3>
+<pre class="programlisting">#define             nm_print_backtrace()</pre>
+<p>
+Prints a backtrace of the calling process to the logging location.
+</p>
+</div>
+<hr>
+<div class="refsect2" title="nm_get_timestamp()">
+<a name="nm-get-timestamp"></a><h3>nm_get_timestamp()</h3>
+<pre class="programlisting">#define             nm_get_timestamp(timestamp)</pre>
+<p>
+For debugging only.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>timestamp</code></em> :</span></p></td>
+<td>location in which to place the current timestamp
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_info()">
+<a name="nm-info"></a><h3>nm_info()</h3>
+<pre class="programlisting">#define             nm_info(fmt, args...)</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>fmt</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>args...</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_info_str()">
+<a name="nm-info-str"></a><h3>nm_info_str()</h3>
+<pre class="programlisting">#define             nm_info_str(fmt_str, args...)</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>fmt_str</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>args...</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_debug()">
+<a name="nm-debug"></a><h3>nm_debug()</h3>
+<pre class="programlisting">#define             nm_debug(fmt, args...)</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>fmt</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>args...</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_debug_str()">
+<a name="nm-debug-str"></a><h3>nm_debug_str()</h3>
+<pre class="programlisting">#define             nm_debug_str(fmt_str, args...)</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>fmt_str</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>args...</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_warning()">
+<a name="nm-warning"></a><h3>nm_warning()</h3>
+<pre class="programlisting">#define             nm_warning(fmt, args...)</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>fmt</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>args...</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_warning_str()">
+<a name="nm-warning-str"></a><h3>nm_warning_str()</h3>
+<pre class="programlisting">#define             nm_warning_str(fmt_str, args...)</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>fmt_str</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>args...</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_error()">
+<a name="nm-error"></a><h3>nm_error()</h3>
+<pre class="programlisting">#define             nm_error(fmt, args...)</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>fmt</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>args...</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_error_str()">
+<a name="nm-error-str"></a><h3>nm_error_str()</h3>
+<pre class="programlisting">#define             nm_error_str(fmt_str, args...)</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>fmt_str</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>args...</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_init ()">
+<a name="nm-utils-init"></a><h3>nm_utils_init ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            nm_utils_init                       (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+<p>
+Initializes libnm-util; should be called when starting and program that
+uses libnm-util.  Sets up an <code class="function">atexit()</code> handler to ensure de-initialization
+is performed, but calling <a class="link" href="libnm-util-nm-utils.html#nm-utils-deinit" title="nm_utils_deinit ()"><code class="function">nm_utils_deinit()</code></a> to explicitly deinitialize
+libnm-util can also be done.  This function can be called more than once.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>location to store error, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> TRUE if the initialization was successful, FALSE on failure.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_deinit ()">
+<a name="nm-utils-deinit"></a><h3>nm_utils_deinit ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                nm_utils_deinit                     (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+Frees all resources used internally by libnm-util.  This function is called
+from an <code class="function">atexit()</code> handler, set up by <a class="link" href="libnm-util-nm-utils.html#nm-utils-init" title="nm_utils_init ()"><code class="function">nm_utils_init()</code></a>, but is safe to be called
+more than once.  Subsequent calls have no effect until <a class="link" href="libnm-util-nm-utils.html#nm-utils-init" title="nm_utils_init ()"><code class="function">nm_utils_init()</code></a> is
+called again.
+</p>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_is_empty_ssid ()">
+<a name="nm-utils-is-empty-ssid"></a><h3>nm_utils_is_empty_ssid ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            nm_utils_is_empty_ssid              (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *ssid</code></em>,
+                                                         <em class="parameter"><code><span class="type">int</span> len</code></em>);</pre>
+<p>
+Different manufacturers use different mechanisms for not broadcasting the
+AP's SSID.  This function attempts to detect blank/empty SSIDs using a
+number of known SSID-cloaking methods.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ssid</code></em> :</span></p></td>
+<td>pointer to a buffer containing the SSID data
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
+<td>length of the SSID data in <em class="parameter"><code>ssid</code></em>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> TRUE if the SSID is "empty", FALSE if it is not
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_escape_ssid ()">
+<a name="nm-utils-escape-ssid"></a><h3>nm_utils_escape_ssid ()</h3>
+<pre class="programlisting">const <span class="returnvalue">char</span> *        nm_utils_escape_ssid                (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *ssid</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> len</code></em>);</pre>
+<p>
+This function does a quick printable character conversion of the SSID, simply
+replacing embedded NULLs and non-printable characters with the hexadecimal
+representation of that character.  Intended for debugging only, should not
+be used for display of SSIDs.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ssid</code></em> :</span></p></td>
+<td>pointer to a buffer containing the SSID data
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
+<td>length of the SSID data in <em class="parameter"><code>ssid</code></em>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> pointer to the escaped SSID, which uses an internal static buffer
+and will be overwritten by subsequent calls to this function
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_same_ssid ()">
+<a name="nm-utils-same-ssid"></a><h3>nm_utils_same_ssid ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            nm_utils_same_ssid                  (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid1</code></em>,
+                                                         <em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid2</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> ignore_trailing_null</code></em>);</pre>
+<p>
+Earlier versions of the Linux kernel added a NULL byte to the end of the
+SSID to enable easy printing of the SSID on the console or in a terminal,
+but this behavior was problematic (SSIDs are simply byte arrays, not strings)
+and thus was changed.  This function compensates for that behavior at the
+cost of some compatibility with odd SSIDs that may legitimately have trailing
+NULLs, even though that is functionally pointless.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ssid1</code></em> :</span></p></td>
+<td>first SSID data to compare
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ssid2</code></em> :</span></p></td>
+<td>second SSID data to compare
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ignore_trailing_null</code></em> :</span></p></td>
+<td>TRUE to ignore one trailing NULL byte
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> TRUE if the SSIDs are the same, FALSE if they are not
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ssid_to_utf8 ()">
+<a name="nm-utils-ssid-to-utf8"></a><h3>nm_utils_ssid_to_utf8 ()</h3>
+<pre class="programlisting"><span class="returnvalue">char</span> *              nm_utils_ssid_to_utf8               (<em class="parameter"><code>const <span class="type">char</span> *ssid</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> len</code></em>);</pre>
+<p>
+WiFi SSIDs are byte arrays, they are _not_ strings.  Thus, an SSID may
+contain embedded NULLs and other unprintable characters.  Often it is
+useful to print the SSID out for debugging purposes, but that should be the
+_only_ use of this function.  Do not use this function for any persistent
+storage of the SSID, since the printable SSID returned from this function
+cannot be converted back into the real SSID of the access point.
+</p>
+<p>
+This function does almost everything humanly possible to convert the input
+into a printable UTF-8 string, using roughly the following procedure:
+</p>
+<p>
+1) if the input data is already UTF-8 safe, no conversion is performed
+2) attempts to get the current system language from the LANG environment
+   variable, and depending on the language, uses a table of alternative
+   encodings to try.  For example, if LANG=hu_HU, the table may first try
+   the ISO-8859-2 encoding, and if that fails, try the Windows-1250 encoding.
+   If all fallback encodings fail, replaces non-UTF-8 characters with '?'.
+3) If the system language was unable to be determined, falls back to the
+   ISO-8859-1 encoding, then to the Windows-1251 encoding.
+4) If step 3 fails, replaces non-UTF-8 characters with '?'.
+</p>
+<p>
+Again, this function should be used for debugging and display purposes
+_only_.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ssid</code></em> :</span></p></td>
+<td>pointer to a buffer containing the SSID data
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
+<td>length of the SSID data in <em class="parameter"><code>ssid</code></em>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> an allocated string containing a UTF-8 representation of the
+SSID, which must be freed by the caller using <a href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>.  Returns NULL
+on errors.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_gvalue_hash_dup ()">
+<a name="nm-utils-gvalue-hash-dup"></a><h3>nm_utils_gvalue_hash_dup ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> *        nm_utils_gvalue_hash_dup            (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *hash</code></em>);</pre>
+<p>
+Utility function to duplicate a hash table of GValues.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>hash</code></em> :</span></p></td>
+<td>a <a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> mapping string:GValue
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a newly allocated duplicated <a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a>, caller must free the
+returned hash with <a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#g-hash-table-unref"><code class="function">g_hash_table_unref()</code></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#g-hash-table-destroy"><code class="function">g_hash_table_destroy()</code></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_slist_free ()">
+<a name="nm-utils-slist-free"></a><h3>nm_utils_slist_free ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                nm_utils_slist_free                 (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> elem_destroy_fn</code></em>);</pre>
+<p>
+Utility function to free a <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a>.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td>
+<td>a <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>elem_destroy_fn</code></em> :</span></p></td>
+<td>user function called for each element in <em class="parameter"><code>list</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="enum NMUtilsSecurityType">
+<a name="NMUtilsSecurityType"></a><h3>enum NMUtilsSecurityType</h3>
+<pre class="programlisting">typedef enum {
+	NMU_SEC_INVALID = 0,
+	NMU_SEC_NONE,
+	NMU_SEC_STATIC_WEP,
+	NMU_SEC_LEAP,
+	NMU_SEC_DYNAMIC_WEP,
+	NMU_SEC_WPA_PSK,
+	NMU_SEC_WPA_ENTERPRISE,
+	NMU_SEC_WPA2_PSK,
+	NMU_SEC_WPA2_ENTERPRISE
+} NMUtilsSecurityType;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_security_valid ()">
+<a name="nm-utils-security-valid"></a><h3>nm_utils_security_valid ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            nm_utils_security_valid             (<em class="parameter"><code><a class="link" href="libnm-util-nm-utils.html#NMUtilsSecurityType" title="enum NMUtilsSecurityType"><span class="type">NMUtilsSecurityType</span></a> type</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> wifi_caps</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> have_ap</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> adhoc</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> ap_flags</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> ap_wpa</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> ap_rsn</code></em>);</pre>
+<p>
+Given a set of device capabilities, and a desired security type to check
+against, determines whether the combination of device, desired security
+type, and AP capabilities intersect.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
+<td>the security type to check AP flags and device capabilties against,
+e.g. <span class="type">NMU_SEC_STATIC_WEP</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>wifi_caps</code></em> :</span></p></td>
+<td>bitfield of the capabilities of the specific WiFi device, e.g.
+<span class="type">NM_WIFI_DEVICE_CAP_CIPHER_WEP40</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>have_ap</code></em> :</span></p></td>
+<td>whether the <em class="parameter"><code>ap_flags</code></em>, <em class="parameter"><code>ap_wpa</code></em>, and <em class="parameter"><code>ap_rsn</code></em> arguments are valid
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>adhoc</code></em> :</span></p></td>
+<td>whether the capabilities being tested are from an Ad-Hoc AP (IBSS)
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ap_flags</code></em> :</span></p></td>
+<td>bitfield of AP capabilities, e.g. <span class="type">NM_802_11_AP_FLAGS_PRIVACY</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ap_wpa</code></em> :</span></p></td>
+<td>bitfield of AP capabilties derived from the AP's WPA beacon,
+e.g. (<span class="type">NM_802_11_AP_SEC_PAIR_TKIP</span> | <span class="type">NM_802_11_AP_SEC_KEY_MGMT_PSK</span>)
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ap_rsn</code></em> :</span></p></td>
+<td>bitfield of AP capabilties derived from the AP's RSN/WPA2 beacon,
+e.g. (<span class="type">NM_802_11_AP_SEC_PAIR_CCMP</span> | <span class="type">NM_802_11_AP_SEC_PAIR_TKIP</span>)
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> TRUE if the device capabilities and AP capabilties intersect and are
+compatible with the desired <em class="parameter"><code>type</code></em>, FALSE if they are not
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip4_addresses_from_gvalue ()">
+<a name="nm-utils-ip4-addresses-from-gvalue"></a><h3>nm_utils_ip4_addresses_from_gvalue ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            nm_utils_ip4_addresses_from_gvalue  (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>
+Utility function to convert a <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="/usr/share/gtk-doc/html/glib/glib-Arrays.html#GArray"><span class="type">GArrays</span></a> of guint32s representing
+a list of NetworkManager IPv4 addresses (which is a tuple of address, gateway,
+and prefix) into a GSList of <a class="link" href="NMSettingIP4Config.html#NMIP4Address" title="NMIP4Address"><span class="type">NMIP4Address</span></a> objects.  The specific format of
+this serialization is not guaranteed to be stable and the <a href="/usr/share/gtk-doc/html/glib/glib-Arrays.html#GArray"><span class="type">GArray</span></a> may be
+extended in the future.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>gvalue containing a GPtrArray of GArrays of guint32s
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a newly allocated <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Address" title="NMIP4Address"><span class="type">NMIP4Address</span></a> objects
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip4_addresses_to_gvalue ()">
+<a name="nm-utils-ip4-addresses-to-gvalue"></a><h3>nm_utils_ip4_addresses_to_gvalue ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                nm_utils_ip4_addresses_to_gvalue    (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>
+Utility function to convert a <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Address" title="NMIP4Address"><span class="type">NMIP4Address</span></a> objects into a
+GPtrArray of GArrays of guint32s representing a list of NetworkManager IPv4
+addresses (which is a tuple of address, gateway, and prefix).   The specific
+format of this serialization is not guaranteed to be stable and may be
+extended in the future.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td>
+<td>a list of <a class="link" href="NMSettingIP4Config.html#NMIP4Address" title="NMIP4Address"><span class="type">NMIP4Address</span></a> objects
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>a pointer to a <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> into which to place the converted addresses,
+which should be unset by the caller (when no longer needed) with
+<a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip4_routes_from_gvalue ()">
+<a name="nm-utils-ip4-routes-from-gvalue"></a><h3>nm_utils_ip4_routes_from_gvalue ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            nm_utils_ip4_routes_from_gvalue     (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>
+Utility function to convert a GPtrArray of GArrays of guint32s representing
+a list of NetworkManager IPv4 routes (which is a tuple of route, next hop,
+prefix, and metric) into a GSList of <a class="link" href="NMSettingIP4Config.html#NMIP4Route" title="NMIP4Route"><span class="type">NMIP4Route</span></a> objects.  The specific
+format of this serialization is not guaranteed to be stable and may be
+extended in the future.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>gvalue containing a GPtrArray of GArrays of guint32s
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a newly allocated <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Route" title="NMIP4Route"><span class="type">NMIP4Route</span></a> objects
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip4_routes_to_gvalue ()">
+<a name="nm-utils-ip4-routes-to-gvalue"></a><h3>nm_utils_ip4_routes_to_gvalue ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                nm_utils_ip4_routes_to_gvalue       (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>
+Utility function to convert a <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Route" title="NMIP4Route"><span class="type">NMIP4Route</span></a> objects into a
+GPtrArray of GArrays of guint32s representing a list of NetworkManager IPv4
+routes (which is a tuple of route, next hop, prefix, and metric).   The
+specific format of this serialization is not guaranteed to be stable and may
+be extended in the future.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td>
+<td>a list of <a class="link" href="NMSettingIP4Config.html#NMIP4Route" title="NMIP4Route"><span class="type">NMIP4Route</span></a> objects
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>a pointer to a <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> into which to place the converted routes,
+which should be unset by the caller (when no longer needed) with
+<a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip4_netmask_to_prefix ()">
+<a name="nm-utils-ip4-netmask-to-prefix"></a><h3>nm_utils_ip4_netmask_to_prefix ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a>             nm_utils_ip4_netmask_to_prefix      (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> netmask</code></em>);</pre>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>netmask</code></em> :</span></p></td>
+<td>an IPv4 netmask in network byte order
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the CIDR prefix represented by the netmask
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip4_prefix_to_netmask ()">
+<a name="nm-utils-ip4-prefix-to-netmask"></a><h3>nm_utils_ip4_prefix_to_netmask ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a>             nm_utils_ip4_prefix_to_netmask      (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> prefix</code></em>);</pre>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>prefix</code></em> :</span></p></td>
+<td>a CIDR prefix
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the netmask represented by the prefix
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip4_get_default_prefix ()">
+<a name="nm-utils-ip4-get-default-prefix"></a><h3>nm_utils_ip4_get_default_prefix ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a>             nm_utils_ip4_get_default_prefix     (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> ip</code></em>);</pre>
+<p>
+When the Internet was originally set up, various ranges of IP addresses were
+segmented into three network classes: A, B, and C.  This function will return
+a prefix that is associated with the IP address specified defining where it
+falls in the predefined classes.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ip</code></em> :</span></p></td>
+<td>an IPv4 address (in network byte order)
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the default class prefix for the given IP
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip6_addresses_from_gvalue ()">
+<a name="nm-utils-ip6-addresses-from-gvalue"></a><h3>nm_utils_ip6_addresses_from_gvalue ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            nm_utils_ip6_addresses_from_gvalue  (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>
+Utility function to convert a <a href="/usr/share/gtk-doc/html/glib/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="/usr/share/gtk-doc/html/gobject/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArrays</span></a> of (<a href="/usr/share/gtk-doc/html/glib/glib-Arrays.html#GArray"><span class="type">GArray</span></a> of guchars) and guint32
+representing a list of NetworkManager IPv6 addresses (which is a tuple of address,
+prefix, and gateway), into a GSList of <a class="link" href="NMSettingIP6Config.html#NMIP6Address" title="NMIP6Address"><span class="type">NMIP6Address</span></a> objects.  The specific format of
+this serialization is not guaranteed to be stable and the <a href="/usr/share/gtk-doc/html/gobject/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArray</span></a> may be
+extended in the future.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>gvalue containing a GPtrArray of GValueArrays of (GArray of guchars) and guint32
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a newly allocated <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Address" title="NMIP6Address"><span class="type">NMIP6Address</span></a> objects
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip6_addresses_to_gvalue ()">
+<a name="nm-utils-ip6-addresses-to-gvalue"></a><h3>nm_utils_ip6_addresses_to_gvalue ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                nm_utils_ip6_addresses_to_gvalue    (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>
+Utility function to convert a <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Address" title="NMIP6Address"><span class="type">NMIP6Address</span></a> objects into a
+GPtrArray of GValueArrays representing a list of NetworkManager IPv6 addresses
+(which is a tuple of address, prefix, and gateway). The specific format of
+this serialization is not guaranteed to be stable and may be extended in the
+future.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td>
+<td>a list of <a class="link" href="NMSettingIP6Config.html#NMIP6Address" title="NMIP6Address"><span class="type">NMIP6Address</span></a> objects
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>a pointer to a <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> into which to place the converted addresses,
+which should be unset by the caller (when no longer needed) with
+<a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip6_routes_from_gvalue ()">
+<a name="nm-utils-ip6-routes-from-gvalue"></a><h3>nm_utils_ip6_routes_from_gvalue ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            nm_utils_ip6_routes_from_gvalue     (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>
+Utility function GPtrArray of GValueArrays of (GArray or guchars), guint32,
+(GArray of guchars), and guint32 representing a list of NetworkManager IPv6
+routes (which is a tuple of destination, prefix, next hop, and metric)
+into a GSList of <a class="link" href="NMSettingIP6Config.html#NMIP6Route" title="NMIP6Route"><span class="type">NMIP6Route</span></a> objects.  The specific format of this serialization
+is not guaranteed to be stable and may be extended in the future.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>gvalue containing a GPtrArray of GValueArrays of (GArray or guchars), guint32,
+(GArray of guchars), and guint32
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a newly allocated <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Route" title="NMIP6Route"><span class="type">NMIP6Route</span></a> objects
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip6_routes_to_gvalue ()">
+<a name="nm-utils-ip6-routes-to-gvalue"></a><h3>nm_utils_ip6_routes_to_gvalue ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                nm_utils_ip6_routes_to_gvalue       (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>
+Utility function to convert a <a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Route" title="NMIP6Route"><span class="type">NMIP6Route</span></a> objects into a GPtrArray of
+GValueArrays of (GArray or guchars), guint32, (GArray of guchars), and guint32
+representing a list of NetworkManager IPv6 routes (which is a tuple of destination,
+prefix, next hop, and metric).  The specific format of this serialization is not 
+guaranteed to be stable and may be extended in the future.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td>
+<td>a list of <a class="link" href="NMSettingIP6Config.html#NMIP6Route" title="NMIP6Route"><span class="type">NMIP6Route</span></a> objects
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>a pointer to a <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> into which to place the converted routes,
+which should be unset by the caller (when no longer needed) with
+<a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip6_dns_from_gvalue ()">
+<a name="nm-utils-ip6-dns-from-gvalue"></a><h3>nm_utils_ip6_dns_from_gvalue ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> *            nm_utils_ip6_dns_from_gvalue        (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_ip6_dns_to_gvalue ()">
+<a name="nm-utils-ip6-dns-to-gvalue"></a><h3>nm_utils_ip6_dns_to_gvalue ()</h3>
+<pre class="programlisting"><span class="returnvalue">void</span>                nm_utils_ip6_dns_to_gvalue          (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_uuid_generate ()">
+<a name="nm-utils-uuid-generate"></a><h3>nm_utils_uuid_generate ()</h3>
+<pre class="programlisting"><span class="returnvalue">char</span> *              nm_utils_uuid_generate              (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a newly allocated UUID suitable for use as the <a class="link" href="NMSettingConnection.html" title="NMSettingConnection"><span class="type">NMSettingConnection</span></a>
+object's <a class="link" href="NMSettingConnection.html#NMSettingConnection--id" title='The "id" property'><span class="type">"id"</span></a>: property.  Should be freed with <a href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_uuid_generate_from_string ()">
+<a name="nm-utils-uuid-generate-from-string"></a><h3>nm_utils_uuid_generate_from_string ()</h3>
+<pre class="programlisting"><span class="returnvalue">char</span> *              nm_utils_uuid_generate_from_string  (<em class="parameter"><code>const <span class="type">char</span> *s</code></em>);</pre>
+<p>
+For a given <em class="parameter"><code>s</code></em>, this function will always return the same UUID.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>s</code></em> :</span></p></td>
+<td>a string to use as the seed for the UUID
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a newly allocated UUID suitable for use as the <a class="link" href="NMSettingConnection.html" title="NMSettingConnection"><span class="type">NMSettingConnection</span></a>
+object's <a class="link" href="NMSettingConnection.html#NMSettingConnection--id" title='The "id" property'><span class="type">"id"</span></a>: property
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="nm_utils_rsa_key_encrypt ()">
+<a name="nm-utils-rsa-key-encrypt"></a><h3>nm_utils_rsa_key_encrypt ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> *        nm_utils_rsa_key_encrypt            (<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *data</code></em>,
+                                                         <em class="parameter"><code>const <span class="type">char</span> *in_password</code></em>,
+                                                         <em class="parameter"><code><span class="type">char</span> **out_password</code></em>,
+                                                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
+<p>
+Encrypts the given RSA private key data with the given password (or generates
+a password if no password was given) and converts the data to PEM format
+suitable for writing to a file.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
+<td>RSA private key data to be encrypted
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>in_password</code></em> :</span></p></td>
+<td>existing password to use, if any
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>out_password</code></em> :</span></p></td>
+<td>if <em class="parameter"><code>in_password</code></em> was NULL, a random password will be generated
+ and returned in this argument
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>detailed error information on return, if an error occurred
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> on success, PEM-formatted data suitable for writing to a PEM-formatted
+certificate/private key file.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+          Generated by GTK-Doc V1.14</div>
+</body>
+</html>
\ No newline at end of file