diff options
| author | Michael Biebl <biebl@debian.org> | 2014-07-06 02:16:10 +0200 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2014-07-06 02:16:10 +0200 |
| commit | 33491bc4279481db8ae47213e34a6d695a0e8830 (patch) | |
| tree | 097d2b0fdff3fae6885381ae5e57a182cd8cbbba /docs/libnm-util/html/libnm-util-nm-utils.html | |
| parent | 59c3714a494c3b3765657c0551ad82842d98a7d2 (diff) | |
Imported Upstream version 0.9.10.0 upstream/0.9.10.0
Diffstat (limited to 'docs/libnm-util/html/libnm-util-nm-utils.html')
| -rw-r--r-- | docs/libnm-util/html/libnm-util-nm-utils.html | 2733 |
1 files changed, 1369 insertions, 1364 deletions
diff --git a/docs/libnm-util/html/libnm-util-nm-utils.html b/docs/libnm-util/html/libnm-util-nm-utils.html index 22e4362b..91e5b8f9 100644 --- a/docs/libnm-util/html/libnm-util-nm-utils.html +++ b/docs/libnm-util/html/libnm-util-nm-utils.html @@ -2,27 +2,32 @@ <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> -<title>libnm-util Reference Manual: nm-utils</title> +<title>nm-utils</title> <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"> <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.20 (XML mode)"> +<meta name="generator" content="GTK-Doc V1.19 (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="10"><tr valign="middle"> -<td width="100%" align="left" class="shortcuts"> -<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> - <a href="#libnm-util-nm-utils.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> - <a href="#libnm-util-nm-utils.object-hierarchy" class="shortcut">Object Hierarchy</a></span> -</td> -<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> -<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> -<td><a accesskey="p" href="NMSettingVPN.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> -<td><a accesskey="n" href="object-tree.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> -</tr></table> +<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> + | + <a href="#libnm-util-nm-utils.object-hierarchy" class="shortcut">Object Hierarchy</a> +</td></tr> +</table> <div class="refentry"> <a name="libnm-util-nm-utils"></a><div class="titlepage"></div> <div class="refnamediv"><table width="100%"><tr> @@ -30,1845 +35,1845 @@ <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 class="gallery_image" valign="top" align="right"></td> +<td valign="top" align="right"></td> </tr></table></div> +<div class="refsynopsisdiv"> +<a name="libnm-util-nm-utils.synopsis"></a><h2>Synopsis</h2> +<a name="NMUtilsSecurityType"></a><pre class="synopsis"> +#include <nm-utils.h> + +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *ssid</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> len</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid1</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid2</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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 <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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-enum" title="enum NMUtilsSecurityType">NMUtilsSecurityType</a>; +<a href="http://library.gnome.org/devel/glib/unstable/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"><span class="type">NMUtilsSecurityType</span></a> type</code></em>, + <em class="parameter"><code><span class="type">NMDeviceWifiCapabilities</span> wifi_caps</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> have_ap</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> adhoc</code></em>, + <em class="parameter"><code><span class="type">NM80211ApFlags</span> ap_flags</code></em>, + <em class="parameter"><code><span class="type">NM80211ApSecurityFlags</span> ap_wpa</code></em>, + <em class="parameter"><code><span class="type">NM80211ApSecurityFlags</span> ap_rsn</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-ap-mode-security-valid" title="nm_utils_ap_mode_security_valid ()">nm_utils_ap_mode_security_valid</a> (<em class="parameter"><code><a class="link" href="libnm-util-nm-utils.html#NMUtilsSecurityType"><span class="type">NMUtilsSecurityType</span></a> type</code></em>, + <em class="parameter"><code><span class="type">NMDeviceWifiCapabilities</span> wifi_caps</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-wep-key-valid" title="nm_utils_wep_key_valid ()">nm_utils_wep_key_valid</a> (<em class="parameter"><code>const <span class="type">char</span> *key</code></em>, + <em class="parameter"><code><a class="link" href="NMSettingWirelessSecurity.html#NMWepKeyType"><span class="type">NMWepKeyType</span></a> wep_type</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-wpa-psk-valid" title="nm_utils_wpa_psk_valid ()">nm_utils_wpa_psk_valid</a> (<em class="parameter"><code>const <span class="type">char</span> *psk</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> netmask</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> prefix</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> ip</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/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-aes" title="nm_utils_rsa_key_encrypt_aes ()">nm_utils_rsa_key_encrypt_aes</a> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-file-is-pkcs12" title="nm_utils_file_is_pkcs12 ()">nm_utils_file_is_pkcs12</a> (<em class="parameter"><code>const <span class="type">char</span> *filename</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-wifi-freq-to-channel" title="nm_utils_wifi_freq_to_channel ()">nm_utils_wifi_freq_to_channel</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> freq</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-wifi-channel-to-freq" title="nm_utils_wifi_channel_to_freq ()">nm_utils_wifi_channel_to_freq</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> channel</code></em>, + <em class="parameter"><code>const <span class="type">char</span> *band</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-wifi-find-next-channel" title="nm_utils_wifi_find_next_channel ()">nm_utils_wifi_find_next_channel</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> channel</code></em>, + <em class="parameter"><code><span class="type">int</span> direction</code></em>, + <em class="parameter"><code><span class="type">char</span> *band</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-wifi-is-channel-valid" title="nm_utils_wifi_is_channel_valid ()">nm_utils_wifi_is_channel_valid</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> channel</code></em>, + <em class="parameter"><code>const <span class="type">char</span> *band</code></em>); +#define <a class="link" href="libnm-util-nm-utils.html#NM-UTILS-HWADDR-LEN-MAX:CAPS" title="NM_UTILS_HWADDR_LEN_MAX">NM_UTILS_HWADDR_LEN_MAX</a> +<span class="returnvalue">int</span> <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-len" title="nm_utils_hwaddr_len ()">nm_utils_hwaddr_len</a> (<em class="parameter"><code><span class="type">int</span> type</code></em>); +<span class="returnvalue">int</span> <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-type" title="nm_utils_hwaddr_type ()">nm_utils_hwaddr_type</a> (<em class="parameter"><code><span class="type">int</span> len</code></em>); +<span class="returnvalue">char</span> * <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-ntoa" title="nm_utils_hwaddr_ntoa ()">nm_utils_hwaddr_ntoa</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> addr</code></em>, + <em class="parameter"><code><span class="type">int</span> type</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-atoba" title="nm_utils_hwaddr_atoba ()">nm_utils_hwaddr_atoba</a> (<em class="parameter"><code>const <span class="type">char</span> *asc</code></em>, + <em class="parameter"><code><span class="type">int</span> type</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"><span class="returnvalue">guint8</span></a> * <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton" title="nm_utils_hwaddr_aton ()">nm_utils_hwaddr_aton</a> (<em class="parameter"><code>const <span class="type">char</span> *asc</code></em>, + <em class="parameter"><code><span class="type">int</span> type</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> buffer</code></em>); +<span class="returnvalue">char</span> * <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-ntoa-len" title="nm_utils_hwaddr_ntoa_len ()">nm_utils_hwaddr_ntoa_len</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> addr</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> length</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"><span class="returnvalue">guint8</span></a> * <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton-len" title="nm_utils_hwaddr_aton_len ()">nm_utils_hwaddr_aton_len</a> (<em class="parameter"><code>const <span class="type">char</span> *asc</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> buffer</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> length</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-valid" title="nm_utils_hwaddr_valid ()">nm_utils_hwaddr_valid</a> (<em class="parameter"><code>const <span class="type">char</span> *asc</code></em>); +<span class="returnvalue">char</span> * <a class="link" href="libnm-util-nm-utils.html#nm-utils-bin2hexstr" title="nm_utils_bin2hexstr ()">nm_utils_bin2hexstr</a> (<em class="parameter"><code>const <span class="type">char</span> *bytes</code></em>, + <em class="parameter"><code><span class="type">int</span> len</code></em>, + <em class="parameter"><code><span class="type">int</span> final_len</code></em>); +<span class="returnvalue">int</span> <a class="link" href="libnm-util-nm-utils.html#nm-utils-hex2byte" title="nm_utils_hex2byte ()">nm_utils_hex2byte</a> (<em class="parameter"><code>const <span class="type">char</span> *hex</code></em>); +<span class="returnvalue">char</span> * <a class="link" href="libnm-util-nm-utils.html#nm-utils-hexstr2bin" title="nm_utils_hexstr2bin ()">nm_utils_hexstr2bin</a> (<em class="parameter"><code>const <span class="type">char</span> *hex</code></em>, + <em class="parameter"><code><span class="type">size_t</span> len</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-iface-valid-name" title="nm_utils_iface_valid_name ()">nm_utils_iface_valid_name</a> (<em class="parameter"><code>const <span class="type">char</span> *name</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-is-uuid" title="nm_utils_is_uuid ()">nm_utils_is_uuid</a> (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>); +#define <a class="link" href="libnm-util-nm-utils.html#NM-UTILS-INET-ADDRSTRLEN:CAPS" title="NM_UTILS_INET_ADDRSTRLEN">NM_UTILS_INET_ADDRSTRLEN</a> +const <span class="returnvalue">char</span> * <a class="link" href="libnm-util-nm-utils.html#nm-utils-inet4-ntop" title="nm_utils_inet4_ntop ()">nm_utils_inet4_ntop</a> (<em class="parameter"><code><span class="type">in_addr_t</span> inaddr</code></em>, + <em class="parameter"><code><span class="type">char</span> *dst</code></em>); +const <span class="returnvalue">char</span> * <a class="link" href="libnm-util-nm-utils.html#nm-utils-inet6-ntop" title="nm_utils_inet6_ntop ()">nm_utils_inet6_ntop</a> (<em class="parameter"><code>const <span class="type">struct in6_addr</span> *in6addr</code></em>, + <em class="parameter"><code><span class="type">char</span> *dst</code></em>); +<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libnm-util-nm-utils.html#nm-utils-check-virtual-device-compatibility" title="nm_utils_check_virtual_device_compatibility ()">nm_utils_check_virtual_device_compatibility</a> + (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> virtual_type</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> other_type</code></em>); +</pre> +</div> +<div class="refsect1"> +<a name="libnm-util-nm-utils.object-hierarchy"></a><h2>Object Hierarchy</h2> +<pre class="synopsis"> + GEnum + +----NMUtilsSecurityType +</pre> +</div> +<div class="refsect1"> +<a name="libnm-util-nm-utils.description"></a><h2>Description</h2> +<p> +A collection of utility functions for working SSIDs, IP addresses, Wi-Fi +access points and devices, among other things. +</p> +</div> <div class="refsect1"> -<a name="libnm-util-nm-utils.functions"></a><h2>Functions</h2> -<div class="informaltable"><table width="100%" border="0"> +<a name="libnm-util-nm-utils.details"></a><h2>Details</h2> +<div class="refsect2"> +<a name="nm-utils-init"></a><h3>nm_utils_init ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_init (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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" class="variablelist"> <colgroup> -<col width="150px" class="functions_return"> -<col class="functions_name"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-init" title="nm_utils_init ()">nm_utils_init</a> <span class="c_punctuation">()</span> +<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/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a> </td> </tr> <tr> -<td class="function_type"> -<span class="returnvalue">void</span> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-deinit" title="nm_utils_deinit ()">nm_utils_deinit</a> <span class="c_punctuation">()</span> -</td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the initialization was successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on failure.</td> </tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<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"> +<a name="nm-utils-is-empty-ssid"></a><h3>nm_utils_is_empty_ssid ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_is_empty_ssid (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/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" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> -</td> +<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 class="function_type">const <span class="returnvalue">char</span> * -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-escape-ssid" title="nm_utils_escape_ssid ()">nm_utils_escape_ssid</a> <span class="c_punctuation">()</span> +<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 class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-same-ssid" title="nm_utils_same_ssid ()">nm_utils_same_ssid</a> <span class="c_punctuation">()</span> -</td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the SSID is "empty", <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it is not</td> </tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<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="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *ssid</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="function_type"> -<span class="returnvalue">char</span> * -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> -</td> +<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 class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<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 class="function_type"> -<span class="returnvalue">void</span> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-slist-free" title="nm_utils_slist_free ()">nm_utils_slist_free</a> <span class="c_punctuation">()</span> -</td> +<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"> +<a name="nm-utils-same-ssid"></a><h3>nm_utils_same_ssid ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_same_ssid (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid1</code></em>, + <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid2</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-security-valid" title="nm_utils_security_valid ()">nm_utils_security_valid</a> <span class="c_punctuation">()</span> -</td> +<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 class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-ap-mode-security-valid" title="nm_utils_ap_mode_security_valid ()">nm_utils_ap_mode_security_valid</a> <span class="c_punctuation">()</span> -</td> +<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 class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-wep-key-valid" title="nm_utils_wep_key_valid ()">nm_utils_wep_key_valid</a> <span class="c_punctuation">()</span> -</td> +<td><p><span class="term"><em class="parameter"><code>ignore_trailing_null</code></em> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> to ignore one trailing NULL byte</td> </tr> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-wpa-psk-valid" title="nm_utils_wpa_psk_valid ()">nm_utils_wpa_psk_valid</a> <span class="c_punctuation">()</span> -</td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the SSIDs are the same, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if they are not</td> </tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<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 <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid</code></em>);</pre> +<p> +Wi-Fi 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" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> * -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> -</td> +<td><p><span class="term"><em class="parameter"><code>ssid</code></em> :</span></p></td> +<td>a byte array containing the SSID data</td> </tr> <tr> -<td class="function_type"> -<span class="returnvalue">void</span> -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<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="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>. +Returns <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a> on errors. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> </td> </tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="nm-utils-gvalue-hash-dup"></a><h3>nm_utils_gvalue_hash_dup ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * nm_utils_gvalue_hash_dup (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> *hash</code></em>);</pre> +<p> +Utility function to duplicate a hash table of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValues</span></a>. +</p> +<div class="variablelist"><table border="0" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> * -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> -</td> +<td><p><span class="term"><em class="parameter"><code>hash</code></em> :</span></p></td> +<td>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> mapping string:GValue</td> </tr> <tr> -<td class="function_type"> -<span class="returnvalue">void</span> -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>a newly allocated duplicated <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a>, caller must free the +returned hash with <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#g-hash-table-unref"><code class="function">g_hash_table_unref()</code></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#g-hash-table-destroy"><code class="function">g_hash_table_destroy()</code></a>. <span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8 GObject.Value]</span> </td> </tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> elem_destroy_fn</code></em>);</pre> +<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"> +<h3 class="title">Warning</h3> +<p><code class="literal">nm_utils_slist_free</code> is deprecated and should not be used in newly-written code. use <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#g-slist-free-full"><code class="function">g_slist_free_full()</code></a>.</p> +</div> +<p> +Utility function to free a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a>. +</p> +<div class="variablelist"><table border="0" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td> +<td>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> </td> </tr> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<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"> +<a name="NMUtilsSecurityType-enum"></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> +Describes generic security mechanisms that 802.11 access points may offer. +Used with <a class="link" href="libnm-util-nm-utils.html#nm-utils-security-valid" title="nm_utils_security_valid ()"><code class="function">nm_utils_security_valid()</code></a> for checking whether a given access +point is compatible with a network device. +</p> +<div class="variablelist"><table border="0" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<td><p><a name="NMU-SEC-INVALID:CAPS"></a><span class="term"><code class="literal">NMU_SEC_INVALID</code></span></p></td> +<td>unknown or invalid security, placeholder and not used </td> </tr> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> * -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<td><p><a name="NMU-SEC-NONE:CAPS"></a><span class="term"><code class="literal">NMU_SEC_NONE</code></span></p></td> +<td>unencrypted and open </td> </tr> <tr> -<td class="function_type"> -<span class="returnvalue">void</span> -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<td><p><a name="NMU-SEC-STATIC-WEP:CAPS"></a><span class="term"><code class="literal">NMU_SEC_STATIC_WEP</code></span></p></td> +<td>static WEP keys are used for encryption </td> </tr> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> * -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<td><p><a name="NMU-SEC-LEAP:CAPS"></a><span class="term"><code class="literal">NMU_SEC_LEAP</code></span></p></td> +<td>Cisco LEAP is used for authentication and for generating the +dynamic WEP keys automatically </td> </tr> <tr> -<td class="function_type"> -<span class="returnvalue">void</span> -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<td><p><a name="NMU-SEC-DYNAMIC-WEP:CAPS"></a><span class="term"><code class="literal">NMU_SEC_DYNAMIC_WEP</code></span></p></td> +<td>standard 802.1x is used for authentication and +generating the dynamic WEP keys automatically </td> </tr> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="returnvalue">GSList</span></a> * -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<td><p><a name="NMU-SEC-WPA-PSK:CAPS"></a><span class="term"><code class="literal">NMU_SEC_WPA_PSK</code></span></p></td> +<td>WPA1 is used with Pre-Shared Keys (PSK) </td> </tr> <tr> -<td class="function_type"> -<span class="returnvalue">void</span> -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<td><p><a name="NMU-SEC-WPA-ENTERPRISE:CAPS"></a><span class="term"><code class="literal">NMU_SEC_WPA_ENTERPRISE</code></span></p></td> +<td>WPA1 is used with 802.1x authentication </td> </tr> <tr> -<td class="function_type"> -<span class="returnvalue">char</span> * -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-uuid-generate" title="nm_utils_uuid_generate ()">nm_utils_uuid_generate</a> <span class="c_punctuation">()</span> +<td><p><a name="NMU-SEC-WPA2-PSK:CAPS"></a><span class="term"><code class="literal">NMU_SEC_WPA2_PSK</code></span></p></td> +<td>WPA2/RSN is used with Pre-Shared Keys (PSK) </td> </tr> <tr> -<td class="function_type"> -<span class="returnvalue">char</span> * -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<td><p><a name="NMU-SEC-WPA2-ENTERPRISE:CAPS"></a><span class="term"><code class="literal">NMU_SEC_WPA2_ENTERPRISE</code></span></p></td> +<td>WPA2 is used with 802.1x authentication </td> </tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="nm-utils-security-valid"></a><h3>nm_utils_security_valid ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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"><span class="type">NMUtilsSecurityType</span></a> type</code></em>, + <em class="parameter"><code><span class="type">NMDeviceWifiCapabilities</span> wifi_caps</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> have_ap</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> adhoc</code></em>, + <em class="parameter"><code><span class="type">NM80211ApFlags</span> ap_flags</code></em>, + <em class="parameter"><code><span class="type">NM80211ApSecurityFlags</span> ap_wpa</code></em>, + <em class="parameter"><code><span class="type">NM80211ApSecurityFlags</span> 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> +<p> +NOTE: this function cannot handle checking security for AP/Hotspot mode; +use <a class="link" href="libnm-util-nm-utils.html#nm-utils-ap-mode-security-valid" title="nm_utils_ap_mode_security_valid ()"><code class="function">nm_utils_ap_mode_security_valid()</code></a> instead. +</p> +<div class="variablelist"><table border="0" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * -</td> -<td class="function_name"> -<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> <span class="c_punctuation">()</span> +<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. <a class="link" href="libnm-util-nm-utils.html#NMU-SEC-STATIC-WEP:CAPS"><span class="type">NMU_SEC_STATIC_WEP</span></a> </td> </tr> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-file-is-pkcs12" title="nm_utils_file_is_pkcs12 ()">nm_utils_file_is_pkcs12</a> <span class="c_punctuation">()</span> +<td><p><span class="term"><em class="parameter"><code>wifi_caps</code></em> :</span></p></td> +<td>bitfield of the capabilities of the specific Wi-Fi device, e.g. +<span class="type">NM_WIFI_DEVICE_CAP_CIPHER_WEP40</span> </td> </tr> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-wifi-freq-to-channel" title="nm_utils_wifi_freq_to_channel ()">nm_utils_wifi_freq_to_channel</a> <span class="c_punctuation">()</span> -</td> +<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 class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-wifi-channel-to-freq" title="nm_utils_wifi_channel_to_freq ()">nm_utils_wifi_channel_to_freq</a> <span class="c_punctuation">()</span> -</td> +<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 class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-wifi-find-next-channel" title="nm_utils_wifi_find_next_channel ()">nm_utils_wifi_find_next_channel</a> <span class="c_punctuation">()</span> +<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 class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-wifi-is-channel-valid" title="nm_utils_wifi_is_channel_valid ()">nm_utils_wifi_is_channel_valid</a> <span class="c_punctuation">()</span> -</td> +<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 class="function_type"> -<span class="returnvalue">int</span> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-len" title="nm_utils_hwaddr_len ()">nm_utils_hwaddr_len</a> <span class="c_punctuation">()</span> -</td> +<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 class="function_type"> -<span class="returnvalue">int</span> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-type" title="nm_utils_hwaddr_type ()">nm_utils_hwaddr_type</a> <span class="c_punctuation">()</span> -</td> -</tr> -<tr> -<td class="function_type"> -<span class="returnvalue">char</span> * -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-ntoa" title="nm_utils_hwaddr_ntoa ()">nm_utils_hwaddr_ntoa</a> <span class="c_punctuation">()</span> -</td> -</tr> -<tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-atoba" title="nm_utils_hwaddr_atoba ()">nm_utils_hwaddr_atoba</a> <span class="c_punctuation">()</span> -</td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the device capabilities and AP capabilties intersect and are +compatible with the desired <em class="parameter"><code>type</code></em>, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if they are not</td> </tr> +</tbody> +</table></div> +</div> +<hr> +<div class="refsect2"> +<a name="nm-utils-ap-mode-security-valid"></a><h3>nm_utils_ap_mode_security_valid ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_ap_mode_security_valid (<em class="parameter"><code><a class="link" href="libnm-util-nm-utils.html#NMUtilsSecurityType"><span class="type">NMUtilsSecurityType</span></a> type</code></em>, + <em class="parameter"><code><span class="type">NMDeviceWifiCapabilities</span> wifi_caps</code></em>);</pre> +<p> +Given a set of device capabilities, and a desired security type to check +against, determines whether the combination of device capabilities and +desired security type are valid for AP/Hotspot connections. +</p> +<div class="variablelist"><table border="0" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"><span class="returnvalue">guint8</span></a> * -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton" title="nm_utils_hwaddr_aton ()">nm_utils_hwaddr_aton</a> <span class="c_punctuation">()</span> +<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td> +<td>the security type to check device capabilties against, +e.g. <a class="link" href="libnm-util-nm-utils.html#NMU-SEC-STATIC-WEP:CAPS"><span class="type">NMU_SEC_STATIC_WEP</span></a> </td> </tr> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-iface-valid-name" title="nm_utils_iface_valid_name ()">nm_utils_iface_valid_name</a> <span class="c_punctuation">()</span> +<td><p><span class="term"><em class="parameter"><code>wifi_caps</code></em> :</span></p></td> +<td>bitfield of the capabilities of the specific Wi-Fi device, e.g. +<span class="type">NM_WIFI_DEVICE_CAP_CIPHER_WEP40</span> </td> </tr> <tr> -<td class="function_type"> -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -</td> -<td class="function_name"> -<a class="link" href="libnm-util-nm-utils.html#nm-utils-is-uuid" title="nm_utils_is_uuid ()">nm_utils_is_uuid</a> <span class="c_punctuation">()</span> -</td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the device capabilities are compatible with the desired +<em class="parameter"><code>type</code></em>, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if they are not.</td> </tr> </tbody> </table></div> +<p class="since">Since 0.9.8</p> </div> -<div class="refsect1"> -<a name="libnm-util-nm-utils.other"></a><h2>Types and Values</h2> -<div class="informaltable"><table width="100%" border="0"> +<hr> +<div class="refsect2"> +<a name="nm-utils-wep-key-valid"></a><h3>nm_utils_wep_key_valid ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_wep_key_valid (<em class="parameter"><code>const <span class="type">char</span> *key</code></em>, + <em class="parameter"><code><a class="link" href="NMSettingWirelessSecurity.html#NMWepKeyType"><span class="type">NMWepKeyType</span></a> wep_type</code></em>);</pre> +<p> +Checks if <em class="parameter"><code>key</code></em> is a valid WEP key +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="name"> -<col class="description"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="datatype_keyword">enum</td> -<td class="function_name"><a class="link" href="libnm-util-nm-utils.html#NMUtilsSecurityType" title="enum NMUtilsSecurityType">NMUtilsSecurityType</a></td> +<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td> +<td>a string that might be a WEP key</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>wep_type</code></em> :</span></p></td> +<td>the <a class="link" href="NMSettingWirelessSecurity.html#NMWepKeyType"><span class="type">NMWepKeyType</span></a> type of the WEP key</td> </tr> <tr> -<td class="define_keyword">#define</td> -<td class="function_name"><a class="link" href="libnm-util-nm-utils.html#NM-UTILS-HWADDR-LEN-MAX:CAPS" title="NM_UTILS_HWADDR_LEN_MAX">NM_UTILS_HWADDR_LEN_MAX</a></td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>key</code></em> is a WEP key, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not</td> </tr> </tbody> </table></div> -</div> -<div class="refsect1"> -<a name="libnm-util-nm-utils.object-hierarchy"></a><h2>Object Hierarchy</h2> -<pre class="screen"> GEnum - <span class="lineart">╰──</span> NMUtilsSecurityType -</pre> -</div> -<div class="refsect1"> -<a name="libnm-util-nm-utils.includes"></a><h2>Includes</h2> -<pre class="synopsis">#include <nm-utils.h> -</pre> -</div> -<div class="refsect1"> -<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"> -<a name="libnm-util-nm-utils.functions_details"></a><h2>Functions</h2> -<div class="refsect2"> -<a name="nm-utils-init"></a><h3>nm_utils_init ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -nm_utils_init (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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="refsect3"> -<a name="id-1.2.26.8.2.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> -<colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> -</colgroup> -<tbody><tr> -<td class="parameter_name"><p>error</p></td> -<td class="parameter_description"><p>location to store error, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a></p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> -</table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.2.6"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the initialization was successful, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on failure.</p> -<p></p> -</div> -</div> -<hr> -<div class="refsect2"> -<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> +<p class="since">Since 0.9.8</p> </div> <hr> <div class="refsect2"> -<a name="nm-utils-is-empty-ssid"></a><h3>nm_utils_is_empty_ssid ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -nm_utils_is_empty_ssid (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/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="refsect3"> -<a name="id-1.2.26.8.4.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-wpa-psk-valid"></a><h3>nm_utils_wpa_psk_valid ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_wpa_psk_valid (<em class="parameter"><code>const <span class="type">char</span> *psk</code></em>);</pre> +<p> +Checks if <em class="parameter"><code>psk</code></em> is a valid WPA PSK +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>ssid</p></td> -<td class="parameter_description"><p>pointer to a buffer containing the SSID data</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>psk</code></em> :</span></p></td> +<td>a string that might be a WPA PSK</td> </tr> <tr> -<td class="parameter_name"><p>len</p></td> -<td class="parameter_description"><p>length of the SSID data in <em class="parameter"><code>ssid</code></em> -</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>psk</code></em> is a WPA PSK, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not</td> </tr> </tbody> </table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.4.6"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the SSID is "empty", <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it is not</p> -<p></p> -</div> +<p class="since">Since 0.9.8</p> </div> <hr> <div class="refsect2"> -<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="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"><span class="type">guint8</span></a> *ssid</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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="refsect3"> -<a name="id-1.2.26.8.5.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-ip4-addresses-from-gvalue"></a><h3>nm_utils_ip4_addresses_from_gvalue ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> +<p> +Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArrays</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32s</span></a> representing +a list of NetworkManager IPv4 addresses (which is a tuple of address, gateway, +and prefix) into a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Address"><span class="type">NMIP4Address</span></a> objects. The specific format of +this serialization is not guaranteed to be stable and the <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> may be +extended in the future. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>ssid</p></td> -<td class="parameter_description"><p>pointer to a buffer containing the SSID data</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> containing a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArrays</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32s</span></a> +</td> </tr> <tr> -<td class="parameter_name"><p>len</p></td> -<td class="parameter_description"><p>length of the SSID data in <em class="parameter"><code>ssid</code></em> -</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>a newly allocated <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Address"><span class="type">NMIP4Address</span></a> objects. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NetworkManager.IP4Address]</span> +</td> </tr> </tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.5.6"></a><h4>Returns</h4> -<p> pointer to the escaped SSID, which uses an internal static buffer -and will be overwritten by subsequent calls to this function</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-same-ssid"></a><h3>nm_utils_same_ssid ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -nm_utils_same_ssid (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid1</code></em>, - <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid2</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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="refsect3"> -<a name="id-1.2.26.8.6.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> +<p> +Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Address"><span class="type">NMIP4Address</span></a> objects into a +<a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArrays</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32s</span></a> 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" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>ssid1</p></td> -<td class="parameter_description"><p>first SSID data to compare</p></td> -<td class="parameter_annotations"> </td> -</tr> -<tr> -<td class="parameter_name"><p>ssid2</p></td> -<td class="parameter_description"><p>second SSID data to compare</p></td> -<td class="parameter_annotations"> </td> +<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"><span class="type">NMIP4Address</span></a> objects. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NMIP4Address]</span> +</td> </tr> <tr> -<td class="parameter_name"><p>ignore_trailing_null</p></td> -<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> to ignore one trailing NULL byte</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td>a pointer to a <a href="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.</td> </tr> </tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.6.6"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the SSIDs are the same, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if they are not</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<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 <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a> *ssid</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="refsect3"> -<a name="id-1.2.26.8.7.8"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-ip4-routes-from-gvalue"></a><h3>nm_utils_ip4_routes_from_gvalue ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> +<p> +Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArrays</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32s</span></a> representing +a list of NetworkManager IPv4 routes (which is a tuple of route, next hop, +prefix, and metric) into a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#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" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>ssid</p></td> -<td class="parameter_description"><p>a byte array containing the SSID data</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> containing a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArrays</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32s</span></a> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>a newly allocated <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Route"><span class="type">NMIP4Route</span></a> objects. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NetworkManager.IP4Route]</span> +</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.7.9"></a><h4>Returns</h4> -<p> an allocated string containing a UTF-8 -representation of the SSID, which must be freed by the caller using <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>. -Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on errors. </p> -<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-gvalue-hash-dup"></a><h3>nm_utils_gvalue_hash_dup ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * -nm_utils_gvalue_hash_dup (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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="refsect3"> -<a name="id-1.2.26.8.8.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> +<p> +Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Route"><span class="type">NMIP4Route</span></a> objects into a +<a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArrays</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32s</span></a> 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" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>hash</p></td> -<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> mapping string:GValue</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<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"><span class="type">NMIP4Route</span></a> objects. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NMIP4Route]</span> +</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="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.8.6"></a><h4>Returns</h4> -<p> a newly allocated duplicated <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a>, caller must free the -returned hash with <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#g-hash-table-unref"><code class="function">g_hash_table_unref()</code></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#g-hash-table-destroy"><code class="function">g_hash_table_destroy()</code></a>. </p> -<p><span class="annotation">[<acronym title="Free data container after the code is done."><span class="acronym">transfer container</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> utf8 GObject.Value]</span></p> -</div> -</div> <hr> <div class="refsect2"> -<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> elem_destroy_fn</code></em>);</pre> -<p>Utility function to free a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a>.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.9.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-ip4-netmask-to-prefix"></a><h3>nm_utils_ip4_netmask_to_prefix ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> nm_utils_ip4_netmask_to_prefix (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> netmask</code></em>);</pre> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>list</p></td> -<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a></p></td> -<td class="parameter_annotations"> </td> +<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 class="parameter_name"><p>elem_destroy_fn</p></td> -<td class="parameter_description"><p>user function called for each element in <em class="parameter"><code>list</code></em> -</p></td> -<td class="parameter_annotations"> </td> +<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> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-security-valid"></a><h3>nm_utils_security_valid ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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><span class="type">NMDeviceWifiCapabilities</span> wifi_caps</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> have_ap</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> adhoc</code></em>, - <em class="parameter"><code><span class="type">NM80211ApFlags</span> ap_flags</code></em>, - <em class="parameter"><code><span class="type">NM80211ApSecurityFlags</span> ap_wpa</code></em>, - <em class="parameter"><code><span class="type">NM80211ApSecurityFlags</span> 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> -<p>NOTE: this function cannot handle checking security for AP/Hotspot mode; -use <a class="link" href="libnm-util-nm-utils.html#nm-utils-ap-mode-security-valid" title="nm_utils_ap_mode_security_valid ()"><code class="function">nm_utils_ap_mode_security_valid()</code></a> instead.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.10.6"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-ip4-prefix-to-netmask"></a><h3>nm_utils_ip4_prefix_to_netmask ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> nm_utils_ip4_prefix_to_netmask (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> prefix</code></em>);</pre> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>type</p></td> -<td class="parameter_description"><p>the security type to check AP flags and device capabilties against, -e.g. <a class="link" href="libnm-util-nm-utils.html#NMU-SEC-STATIC-WEP:CAPS"><span class="type">NMU_SEC_STATIC_WEP</span></a></p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>prefix</code></em> :</span></p></td> +<td>a CIDR prefix</td> </tr> <tr> -<td class="parameter_name"><p>wifi_caps</p></td> -<td class="parameter_description"><p>bitfield of the capabilities of the specific WiFi device, e.g. -<span class="type">NM_WIFI_DEVICE_CAP_CIPHER_WEP40</span></p></td> -<td class="parameter_annotations"> </td> -</tr> -<tr> -<td class="parameter_name"><p>have_ap</p></td> -<td class="parameter_description"><p>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</p></td> -<td class="parameter_annotations"> </td> -</tr> -<tr> -<td class="parameter_name"><p>adhoc</p></td> -<td class="parameter_description"><p>whether the capabilities being tested are from an Ad-Hoc AP (IBSS)</p></td> -<td class="parameter_annotations"> </td> -</tr> -<tr> -<td class="parameter_name"><p>ap_flags</p></td> -<td class="parameter_description"><p>bitfield of AP capabilities, e.g. <span class="type">NM_802_11_AP_FLAGS_PRIVACY</span></p></td> -<td class="parameter_annotations"> </td> -</tr> -<tr> -<td class="parameter_name"><p>ap_wpa</p></td> -<td class="parameter_description"><p>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>)</p></td> -<td class="parameter_annotations"> </td> -</tr> -<tr> -<td class="parameter_name"><p>ap_rsn</p></td> -<td class="parameter_description"><p>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>)</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the netmask represented by the prefix, in network byte order</td> </tr> </tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.10.7"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the device capabilities and AP capabilties intersect and are -compatible with the desired <em class="parameter"><code>type</code></em> -, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if they are not</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-ap-mode-security-valid"></a><h3>nm_utils_ap_mode_security_valid ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -nm_utils_ap_mode_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><span class="type">NMDeviceWifiCapabilities</span> wifi_caps</code></em>);</pre> -<p>Given a set of device capabilities, and a desired security type to check -against, determines whether the combination of device capabilities and -desired security type are valid for AP/Hotspot connections.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.11.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-ip4-get-default-prefix"></a><h3>nm_utils_ip4_get_default_prefix ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> nm_utils_ip4_get_default_prefix (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>type</p></td> -<td class="parameter_description"><p>the security type to check device capabilties against, -e.g. <a class="link" href="libnm-util-nm-utils.html#NMU-SEC-STATIC-WEP:CAPS"><span class="type">NMU_SEC_STATIC_WEP</span></a></p></td> -<td class="parameter_annotations"> </td> +<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 class="parameter_name"><p>wifi_caps</p></td> -<td class="parameter_description"><p>bitfield of the capabilities of the specific WiFi device, e.g. -<span class="type">NM_WIFI_DEVICE_CAP_CIPHER_WEP40</span></p></td> -<td class="parameter_annotations"> </td> +<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> -<div class="refsect3"> -<a name="id-1.2.26.8.11.6"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the device capabilities are compatible with the desired -<em class="parameter"><code>type</code></em> -, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if they are not.</p> -<p></p> -</div> -<p class="since">Since 0.9.8</p> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-wep-key-valid"></a><h3>nm_utils_wep_key_valid ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -nm_utils_wep_key_valid (<em class="parameter"><code>const <span class="type">char</span> *key</code></em>, - <em class="parameter"><code><a class="link" href="NMSettingWirelessSecurity.html#NMWepKeyType" title="enum NMWepKeyType"><span class="type">NMWepKeyType</span></a> wep_type</code></em>);</pre> -<p>Checks if <em class="parameter"><code>key</code></em> - is a valid WEP key</p> -<div class="refsect3"> -<a name="id-1.2.26.8.12.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-ip6-addresses-from-gvalue"></a><h3>nm_utils_ip6_addresses_from_gvalue ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> +<p> +Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArrays</span></a> of (<a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> of guchars) and <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> +representing a list of NetworkManager IPv6 addresses (which is a tuple of address, +prefix, and gateway), into a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Address"><span class="type">NMIP6Address</span></a> objects. The specific format of +this serialization is not guaranteed to be stable and the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArray</span></a> may be +extended in the future. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>key</p></td> -<td class="parameter_description"><p>a string that might be a WEP key</p></td> -<td class="parameter_annotations"> </td> +<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 <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> +</td> </tr> <tr> -<td class="parameter_name"><p>wep_type</p></td> -<td class="parameter_description"><p>the <a class="link" href="NMSettingWirelessSecurity.html#NMWepKeyType" title="enum NMWepKeyType"><span class="type">NMWepKeyType</span></a> type of the WEP key</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>a newly allocated <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Address"><span class="type">NMIP6Address</span></a> objects. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NetworkManager.IP6Address]</span> +</td> </tr> </tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.12.6"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>key</code></em> -is a WEP key, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not</p> -<p></p> -</div> -<p class="since">Since 0.9.8</p> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-wpa-psk-valid"></a><h3>nm_utils_wpa_psk_valid ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -nm_utils_wpa_psk_valid (<em class="parameter"><code>const <span class="type">char</span> *psk</code></em>);</pre> -<p>Checks if <em class="parameter"><code>psk</code></em> - is a valid WPA PSK</p> -<div class="refsect3"> -<a name="id-1.2.26.8.13.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> +<p> +Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Address"><span class="type">NMIP6Address</span></a> objects into a +<a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArrays</span></a> 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" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>psk</p></td> -<td class="parameter_description"><p>a string that might be a WPA PSK</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<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"><span class="type">NMIP6Address</span></a> objects. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NMIP6Address]</span> +</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="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.13.6"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>psk</code></em> -is a WPA PSK, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not</p> -<p></p> -</div> -<p class="since">Since 0.9.8</p> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-ip4-addresses-from-gvalue"></a><h3>nm_utils_ip4_addresses_from_gvalue ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> -<p>Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/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"><span class="type">NMIP4Address</span></a> objects. The specific format of -this serialization is not guaranteed to be stable and the <a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> may be -extended in the future.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.14.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-ip6-routes-from-gvalue"></a><h3>nm_utils_ip6_routes_from_gvalue ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> +<p> +Utility function <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArrays</span></a> of (<a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchars</span></a>), <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a>, +(<a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchars</span></a>), and <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> representing a list of NetworkManager IPv6 +routes (which is a tuple of destination, prefix, next hop, and metric) +into a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#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" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>value</p></td> -<td class="parameter_description"><p>gvalue containing a GPtrArray of GArrays of guint32s</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> containing a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArrays</span></a> of (<a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchars</span></a>), <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a>, +(<a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchars</span></a>), and <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>a newly allocated <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Route"><span class="type">NMIP6Route</span></a> objects. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NetworkManager.IP6Route]</span> +</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.14.6"></a><h4>Returns</h4> -<p> a newly allocated <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Address"><span class="type">NMIP4Address</span></a> objects. </p> -<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NetworkManager.IP4Address]</span></p> -</div> -</div> <hr> <div class="refsect2"> -<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> -<p>Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#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="refsect3"> -<a name="id-1.2.26.8.15.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> +<p> +Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Route"><span class="type">NMIP6Route</span></a> objects into a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of +<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArrays</span></a> of (<a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchars</span></a>), <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a>, (<a href="http://library.gnome.org/devel/glib/unstable/glib-Arrays.html#GArray"><span class="type">GArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guchar"><span class="type">guchars</span></a>), and <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> +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" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>list</p></td> -<td class="parameter_description"><p> a list of <a class="link" href="NMSettingIP4Config.html#NMIP4Address"><span class="type">NMIP4Address</span></a> objects. </p></td> -<td class="parameter_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NMIP4Address]</span></td> +<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"><span class="type">NMIP6Route</span></a> objects. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NMIP6Route]</span> +</td> </tr> <tr> -<td class="parameter_name"><p>value</p></td> -<td class="parameter_description"><p>a pointer to a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> into which to place the converted addresses, +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td>a pointer to a <a href="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.</p></td> -<td class="parameter_annotations"> </td> +<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.</td> </tr> </tbody> </table></div> </div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-ip4-routes-from-gvalue"></a><h3>nm_utils_ip4_routes_from_gvalue ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/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"><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="refsect3"> -<a name="id-1.2.26.8.16.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-ip6-dns-from-gvalue"></a><h3>nm_utils_ip6_dns_from_gvalue ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> +<p> +Converts a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> containing a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of IP6 DNS, represented as +<a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArrays</span></a> into a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <code class="literal"><span class="type">struct in6_addr</span></code>s. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>value</p></td> -<td class="parameter_description"><p>gvalue containing a GPtrArray of GArrays of guint32s</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of IP6 addresses.</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.16.6"></a><h4>Returns</h4> -<p> a newly allocated <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#NMIP4Route"><span class="type">NMIP4Route</span></a> objects. </p> -<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NetworkManager.IP4Route]</span></p> -</div> -</div> <hr> <div class="refsect2"> -<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> -<p>Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP4Config.html#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="refsect3"> -<a name="id-1.2.26.8.17.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> +<p> +Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <code class="literal"><span class="type">struct +in6_addr</span></code> structs into a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArrays</span></a> +representing each server's IPv6 addresses in network byte order. +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" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>list</p></td> -<td class="parameter_description"><p> a list of <a class="link" href="NMSettingIP4Config.html#NMIP4Route"><span class="type">NMIP4Route</span></a> objects. </p></td> -<td class="parameter_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NMIP4Route]</span></td> +<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"><span class="type">NMIP6Route</span></a> objects</td> </tr> <tr> -<td class="parameter_name"><p>value</p></td> -<td class="parameter_description"><p>a pointer to a <a href="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> +<td>a pointer to a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> into which to place the converted DNS server +addresses, which should be unset by the caller (when no longer needed) with +<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.</td> </tr> </tbody> </table></div> </div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-ip4-netmask-to-prefix"></a><h3>nm_utils_ip4_netmask_to_prefix ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -nm_utils_ip4_netmask_to_prefix (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> netmask</code></em>);</pre> -<div class="refsect3"> -<a name="id-1.2.26.8.18.4"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<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" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody><tr> -<td class="parameter_name"><p>netmask</p></td> -<td class="parameter_description"><p>an IPv4 netmask in network byte order</p></td> -<td class="parameter_annotations"> </td> +<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="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> +</td> </tr></tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.18.5"></a><h4>Returns</h4> -<p> the CIDR prefix represented by the netmask</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-ip4-prefix-to-netmask"></a><h3>nm_utils_ip4_prefix_to_netmask ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -nm_utils_ip4_prefix_to_netmask (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> prefix</code></em>);</pre> -<div class="refsect3"> -<a name="id-1.2.26.8.19.4"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<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" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>prefix</p></td> -<td class="parameter_description"><p>a CIDR prefix</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<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> -<div class="refsect3"> -<a name="id-1.2.26.8.19.5"></a><h4>Returns</h4> -<p> the netmask represented by the prefix, in network byte order</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-ip4-get-default-prefix"></a><h3>nm_utils_ip4_get_default_prefix ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -nm_utils_ip4_get_default_prefix (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/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="refsect3"> -<a name="id-1.2.26.8.20.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-rsa-key-encrypt"></a><h3>nm_utils_rsa_key_encrypt ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * nm_utils_rsa_key_encrypt (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/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. It uses Triple DES cipher for the encryption. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>ip</p></td> -<td class="parameter_description"><p>an IPv4 address (in network byte order)</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<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. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> +</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 <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a>, a random password will be generated +and returned in this argument. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> +</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. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.20.6"></a><h4>Returns</h4> -<p> the default class prefix for the given IP</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-ip6-addresses-from-gvalue"></a><h3>nm_utils_ip6_addresses_from_gvalue ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> -<p>Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArrays</span></a> of (<a href="http://library.gnome.org/devel/glib/unstable/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"><span class="type">NMIP6Address</span></a> objects. The specific format of -this serialization is not guaranteed to be stable and the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArray</span></a> may be -extended in the future.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.21.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-rsa-key-encrypt-aes"></a><h3>nm_utils_rsa_key_encrypt_aes ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * nm_utils_rsa_key_encrypt_aes (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/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. It uses AES cipher for the encryption. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>value</p></td> -<td class="parameter_description"><p>gvalue containing a GPtrArray of GValueArrays of (GArray of guchars) and guint32</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<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. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> +</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 <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a>, a random password will be generated +and returned in this argument. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> +</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. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.21.6"></a><h4>Returns</h4> -<p> a newly allocated <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Address"><span class="type">NMIP6Address</span></a> objects. </p> -<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NetworkManager.IP6Address]</span></p> -</div> -</div> <hr> <div class="refsect2"> -<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> -<p>Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#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="refsect3"> -<a name="id-1.2.26.8.22.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-file-is-pkcs12"></a><h3>nm_utils_file_is_pkcs12 ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_file_is_pkcs12 (<em class="parameter"><code>const <span class="type">char</span> *filename</code></em>);</pre> +<p> +Utility function to find out if the <em class="parameter"><code>filename</code></em> is in PKCS<span class="type">12</span> format. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>list</p></td> -<td class="parameter_description"><p> a list of <a class="link" href="NMSettingIP6Config.html#NMIP6Address"><span class="type">NMIP6Address</span></a> objects. </p></td> -<td class="parameter_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NMIP6Address]</span></td> +<td><p><span class="term"><em class="parameter"><code>filename</code></em> :</span></p></td> +<td>name of the file to test</td> </tr> <tr> -<td class="parameter_name"><p>value</p></td> -<td class="parameter_description"><p>a pointer to a <a href="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the file is PKCS<span class="type">12</span>, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it is not</td> </tr> </tbody> </table></div> </div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-ip6-routes-from-gvalue"></a><h3>nm_utils_ip6_routes_from_gvalue ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/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"><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="refsect3"> -<a name="id-1.2.26.8.23.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-wifi-freq-to-channel"></a><h3>nm_utils_wifi_freq_to_channel ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> nm_utils_wifi_freq_to_channel (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> freq</code></em>);</pre> +<p> +Utility function to translate a Wi-Fi frequency to its corresponding channel. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>value</p></td> -<td class="parameter_description"><p>gvalue containing a GPtrArray of GValueArrays of (GArray or guchars), guint32, -(GArray of guchars), and guint32</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>freq</code></em> :</span></p></td> +<td>frequency</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the channel represented by the frequency or 0</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.23.6"></a><h4>Returns</h4> -<p> a newly allocated <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#NMIP6Route"><span class="type">NMIP6Route</span></a> objects. </p> -<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NetworkManager.IP6Route]</span></p> -</div> -</div> <hr> <div class="refsect2"> -<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> -<p>Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <a class="link" href="NMSettingIP6Config.html#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="refsect3"> -<a name="id-1.2.26.8.24.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-wifi-channel-to-freq"></a><h3>nm_utils_wifi_channel_to_freq ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> nm_utils_wifi_channel_to_freq (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> channel</code></em>, + <em class="parameter"><code>const <span class="type">char</span> *band</code></em>);</pre> +<p> +Utility function to translate a Wi-Fi channel to its corresponding frequency. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>list</p></td> -<td class="parameter_description"><p> a list of <a class="link" href="NMSettingIP6Config.html#NMIP6Route"><span class="type">NMIP6Route</span></a> objects. </p></td> -<td class="parameter_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> NMIP6Route]</span></td> +<td><p><span class="term"><em class="parameter"><code>channel</code></em> :</span></p></td> +<td>channel</td> </tr> <tr> -<td class="parameter_name"><p>value</p></td> -<td class="parameter_description"><p>a pointer to a <a href="http://library.gnome.org/devel/gobject/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>band</code></em> :</span></p></td> +<td>frequency band for wireless ("a" or "bg")</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the frequency represented by the channel of the band, +or -1 when the freq is invalid, or 0 when the band +is invalid</td> </tr> </tbody> </table></div> </div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-ip6-dns-from-gvalue"></a><h3>nm_utils_ip6_dns_from_gvalue ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> -<p>Converts a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> containing a <a href="http://library.gnome.org/devel/glib/unstable/glib-Pointer-Arrays.html#GPtrArray"><span class="type">GPtrArray</span></a> of IP6 DNS, represented as -<a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a>s into a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of <span class="type">in6_addr</span>s.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.25.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-wifi-find-next-channel"></a><h3>nm_utils_wifi_find_next_channel ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> nm_utils_wifi_find_next_channel (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> channel</code></em>, + <em class="parameter"><code><span class="type">int</span> direction</code></em>, + <em class="parameter"><code><span class="type">char</span> *band</code></em>);</pre> +<p> +Utility function to find out next/previous Wi-Fi channel for a channel. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>value</p></td> -<td class="parameter_description"><p>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a></p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>channel</code></em> :</span></p></td> +<td>current channel</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>direction</code></em> :</span></p></td> +<td>whether going downward (0 or less) or upward (1 or more)</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>band</code></em> :</span></p></td> +<td>frequency band for wireless ("a" or "bg")</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the next channel in the specified direction or 0</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.25.6"></a><h4>Returns</h4> -<p> a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of IP6 addresses.</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<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="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *list</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>);</pre> -<p>Utility function to convert a <a href="http://library.gnome.org/devel/glib/unstable/glib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> of 'struct in6_addr' structs into a -GPtrArray of GByteArrays representing each server's IPv6 addresses in -network byte order. The specific format of this serialization is not -guaranteed to be stable and may be extended in the future.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.26.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-wifi-is-channel-valid"></a><h3>nm_utils_wifi_is_channel_valid ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_wifi_is_channel_valid (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> channel</code></em>, + <em class="parameter"><code>const <span class="type">char</span> *band</code></em>);</pre> +<p> +Utility function to verify Wi-Fi channel validity. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>list</p></td> -<td class="parameter_description"><p>a list of <a class="link" href="NMSettingIP6Config.html#NMIP6Route"><span class="type">NMIP6Route</span></a> objects</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>channel</code></em> :</span></p></td> +<td>channel</td> </tr> <tr> -<td class="parameter_name"><p>value</p></td> -<td class="parameter_description"><p>a pointer to a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> into which to place the converted DNS server -addresses, which should be unset by the caller (when no longer needed) with -<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>band</code></em> :</span></p></td> +<td>frequency band for wireless ("a" or "bg")</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> +</td> </tr> </tbody> </table></div> </div> -</div> <hr> <div class="refsect2"> -<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="refsect3"> -<a name="id-1.2.26.8.27.4"></a><h4>Returns</h4> -<p> 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="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a></p> -<p></p> -</div> -</div> -<hr> -<div class="refsect2"> -<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="refsect3"> -<a name="id-1.2.26.8.28.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> -<colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> -</colgroup> -<tbody><tr> -<td class="parameter_name"><p>s</p></td> -<td class="parameter_description"><p>a string to use as the seed for the UUID</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> -</table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.28.6"></a><h4>Returns</h4> -<p> 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</p> -<p></p> -</div> +<a name="NM-UTILS-HWADDR-LEN-MAX:CAPS"></a><h3>NM_UTILS_HWADDR_LEN_MAX</h3> +<pre class="programlisting">#define NM_UTILS_HWADDR_LEN_MAX 20 /* INFINIBAND_ALEN */ +</pre> +<p> +The maximum length of a hardware address of a type known by +<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-len" title="nm_utils_hwaddr_len ()"><code class="function">nm_utils_hwaddr_len()</code></a> or <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton" title="nm_utils_hwaddr_aton ()"><code class="function">nm_utils_hwaddr_aton()</code></a>. This can be used +as the size of the buffer passed to <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton" title="nm_utils_hwaddr_aton ()"><code class="function">nm_utils_hwaddr_aton()</code></a>. +</p> </div> <hr> <div class="refsect2"> -<a name="nm-utils-rsa-key-encrypt"></a><h3>nm_utils_rsa_key_encrypt ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * -nm_utils_rsa_key_encrypt (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/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="http://library.gnome.org/devel/glib/unstable/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="refsect3"> -<a name="id-1.2.26.8.29.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-hwaddr-len"></a><h3>nm_utils_hwaddr_len ()</h3> +<pre class="programlisting"><span class="returnvalue">int</span> nm_utils_hwaddr_len (<em class="parameter"><code><span class="type">int</span> type</code></em>);</pre> +<p> +Returns the length in octets of a hardware address of type <em class="parameter"><code>type</code></em>. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>data</p></td> -<td class="parameter_description"><p>RSA private key data to be encrypted</p></td> -<td class="parameter_annotations"> </td> -</tr> -<tr> -<td class="parameter_name"><p>in_password</p></td> -<td class="parameter_description"><p> existing password to use, if any. </p></td> -<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td> -</tr> -<tr> -<td class="parameter_name"><p>out_password</p></td> -<td class="parameter_description"><p> if <em class="parameter"><code>in_password</code></em> -was <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, a random password will be generated -and returned in this argument. </p></td> -<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td> +<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td> +<td>the type of address; either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code> +</td> </tr> <tr> -<td class="parameter_name"><p>error</p></td> -<td class="parameter_description"><p>detailed error information on return, if an error occurred</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the positive length, or -1 if the type is unknown/unsupported.</td> </tr> </tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.29.6"></a><h4>Returns</h4> -<p> on success, PEM-formatted data suitable for writing to a PEM-formatted -certificate/private key file. </p> -<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-file-is-pkcs12"></a><h3>nm_utils_file_is_pkcs12 ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -nm_utils_file_is_pkcs12 (<em class="parameter"><code>const <span class="type">char</span> *filename</code></em>);</pre> -<p>Utility function to find out if the <em class="parameter"><code>filename</code></em> - is in PKCS<span class="type">12</span> format.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.30.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-hwaddr-type"></a><h3>nm_utils_hwaddr_type ()</h3> +<pre class="programlisting"><span class="returnvalue">int</span> nm_utils_hwaddr_type (<em class="parameter"><code><span class="type">int</span> len</code></em>);</pre> +<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"> +<h3 class="title">Warning</h3> +<p><code class="literal">nm_utils_hwaddr_type</code> is deprecated and should not be used in newly-written code. This could not be extended to cover other types, since +there is not a one-to-one mapping between types and lengths. This +was mostly only used to get a type to pass to +<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-ntoa" title="nm_utils_hwaddr_ntoa ()"><code class="function">nm_utils_hwaddr_ntoa()</code></a> or <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton" title="nm_utils_hwaddr_aton ()"><code class="function">nm_utils_hwaddr_aton()</code></a> when you only had +a length; but you can just use <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-ntoa-len" title="nm_utils_hwaddr_ntoa_len ()"><code class="function">nm_utils_hwaddr_ntoa_len()</code></a> or +<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton-len" title="nm_utils_hwaddr_aton_len ()"><code class="function">nm_utils_hwaddr_aton_len()</code></a> now instead.</p> +</div> +<p> +Returns the type (either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code>) of +the raw address given its length. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>filename</p></td> -<td class="parameter_description"><p>name of the file to test</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td> +<td>the length of hardware address in bytes</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the type, either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code>. +If the length is unexpected, return -1 (unsupported type/length).</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.30.6"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the file is PKCS<span class="type">12</span>, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it is not</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-wifi-freq-to-channel"></a><h3>nm_utils_wifi_freq_to_channel ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -nm_utils_wifi_freq_to_channel (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> freq</code></em>);</pre> -<p>Utility function to translate a WiFi frequency to its corresponding channel.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.31.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-hwaddr-ntoa"></a><h3>nm_utils_hwaddr_ntoa ()</h3> +<pre class="programlisting"><span class="returnvalue">char</span> * nm_utils_hwaddr_ntoa (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> addr</code></em>, + <em class="parameter"><code><span class="type">int</span> type</code></em>);</pre> +<p> +Converts <em class="parameter"><code>addr</code></em> to textual form. +</p> +<p> +See also <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-ntoa-len" title="nm_utils_hwaddr_ntoa_len ()"><code class="function">nm_utils_hwaddr_ntoa_len()</code></a>, which takes a length instead of +a type. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>freq</p></td> -<td class="parameter_description"><p>frequency</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>addr</code></em> :</span></p></td> +<td>a binary hardware address</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td> +<td>the type of address; either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the textual form of <em class="parameter"><code>addr</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> +</tr> +</tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.31.6"></a><h4>Returns</h4> -<p> the channel represented by the frequency or 0</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-wifi-channel-to-freq"></a><h3>nm_utils_wifi_channel_to_freq ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -nm_utils_wifi_channel_to_freq (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> channel</code></em>, - <em class="parameter"><code>const <span class="type">char</span> *band</code></em>);</pre> -<p>Utility function to translate a WiFi channel to its corresponding frequency.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.32.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-hwaddr-atoba"></a><h3>nm_utils_hwaddr_atoba ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * nm_utils_hwaddr_atoba (<em class="parameter"><code>const <span class="type">char</span> *asc</code></em>, + <em class="parameter"><code><span class="type">int</span> type</code></em>);</pre> +<p> +Parses <em class="parameter"><code>asc</code></em> and converts it to binary form in a <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a>. See +<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton" title="nm_utils_hwaddr_aton ()"><code class="function">nm_utils_hwaddr_aton()</code></a> if you don't want a <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a>. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>channel</p></td> -<td class="parameter_description"><p>channel</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>asc</code></em> :</span></p></td> +<td>the ASCII representation of a hardware address</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td> +<td>the type of address; either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code> +</td> </tr> <tr> -<td class="parameter_name"><p>band</p></td> -<td class="parameter_description"><p>frequency band for wireless ("a" or "bg")</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>a new <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a>, or <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>asc</code></em> couldn't +be parsed. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> </tr> </tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.32.6"></a><h4>Returns</h4> -<p> the frequency represented by the channel of the band, -or -1 when the freq is invalid, or 0 when the band -is invalid</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-wifi-find-next-channel"></a><h3>nm_utils_wifi_find_next_channel ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="returnvalue">guint32</span></a> -nm_utils_wifi_find_next_channel (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> channel</code></em>, - <em class="parameter"><code><span class="type">int</span> direction</code></em>, - <em class="parameter"><code><span class="type">char</span> *band</code></em>);</pre> -<p>Utility function to find out next/previous WiFi channel for a channel.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.33.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-hwaddr-aton"></a><h3>nm_utils_hwaddr_aton ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"><span class="returnvalue">guint8</span></a> * nm_utils_hwaddr_aton (<em class="parameter"><code>const <span class="type">char</span> *asc</code></em>, + <em class="parameter"><code><span class="type">int</span> type</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> buffer</code></em>);</pre> +<p> +Parses <em class="parameter"><code>asc</code></em> and converts it to binary form in <em class="parameter"><code>buffer</code></em>. See +<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-atoba" title="nm_utils_hwaddr_atoba ()"><code class="function">nm_utils_hwaddr_atoba()</code></a> if you'd rather have the result in a +<a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a>. +</p> +<p> +See also <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton-len" title="nm_utils_hwaddr_aton_len ()"><code class="function">nm_utils_hwaddr_aton_len()</code></a>, which takes an output length +instead of a type. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>channel</p></td> -<td class="parameter_description"><p>current channel</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>asc</code></em> :</span></p></td> +<td>the ASCII representation of a hardware address</td> </tr> <tr> -<td class="parameter_name"><p>direction</p></td> -<td class="parameter_description"><p>whether going downward (0 or less) or upward (1 or more)</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td> +<td>the type of address; either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code> +</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td> +<td>buffer to store the result into</td> </tr> <tr> -<td class="parameter_name"><p>band</p></td> -<td class="parameter_description"><p>frequency band for wireless ("a" or "bg")</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<em class="parameter"><code>buffer</code></em>, or <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>asc</code></em> couldn't be parsed</td> </tr> </tbody> </table></div> </div> -<div class="refsect3"> -<a name="id-1.2.26.8.33.6"></a><h4>Returns</h4> -<p> the next channel in the specified direction or 0</p> -<p></p> -</div> -</div> <hr> <div class="refsect2"> -<a name="nm-utils-wifi-is-channel-valid"></a><h3>nm_utils_wifi_is_channel_valid ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -nm_utils_wifi_is_channel_valid (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> channel</code></em>, - <em class="parameter"><code>const <span class="type">char</span> *band</code></em>);</pre> -<p>Utility function to verify WiFi channel validity.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.34.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-hwaddr-ntoa-len"></a><h3>nm_utils_hwaddr_ntoa_len ()</h3> +<pre class="programlisting"><span class="returnvalue">char</span> * nm_utils_hwaddr_ntoa_len (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> addr</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> length</code></em>);</pre> +<p> +Converts <em class="parameter"><code>addr</code></em> to textual form. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>channel</p></td> -<td class="parameter_description"><p>channel</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>addr</code></em> :</span></p></td> +<td>a binary hardware address</td> </tr> <tr> -<td class="parameter_name"><p>band</p></td> -<td class="parameter_description"><p>frequency band for wireless ("a" or "bg")</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td> +<td>the length of <em class="parameter"><code>addr</code></em> +</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the textual form of <em class="parameter"><code>addr</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> </tr> </tbody> </table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.34.6"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a></p> -<p></p> -</div> +<p class="since">Since 0.9.10</p> </div> <hr> <div class="refsect2"> -<a name="nm-utils-hwaddr-len"></a><h3>nm_utils_hwaddr_len ()</h3> -<pre class="programlisting"><span class="returnvalue">int</span> -nm_utils_hwaddr_len (<em class="parameter"><code><span class="type">int</span> type</code></em>);</pre> -<p>Returns the length in octets of a hardware address of type <em class="parameter"><code>type</code></em> -.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.35.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-hwaddr-aton-len"></a><h3>nm_utils_hwaddr_aton_len ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"><span class="returnvalue">guint8</span></a> * nm_utils_hwaddr_aton_len (<em class="parameter"><code>const <span class="type">char</span> *asc</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> buffer</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> length</code></em>);</pre> +<p> +Parses <em class="parameter"><code>asc</code></em> and converts it to binary form in <em class="parameter"><code>buffer</code></em>. +Bytes in <em class="parameter"><code>asc</code></em> can be sepatared by colons (:), or hyphens (-), but not mixed. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>type</p></td> -<td class="parameter_description"><p>the type of address; either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code></p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>asc</code></em> :</span></p></td> +<td>the ASCII representation of a hardware address</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td> +<td>buffer to store the result into</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td> +<td>the expected length in bytes of the result and +the size of the buffer in bytes.</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<em class="parameter"><code>buffer</code></em>, or <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>asc</code></em> couldn't be parsed +or would be shorter or longer than <em class="parameter"><code>length</code></em>.</td> +</tr> +</tbody> </table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.35.6"></a><h4>Returns</h4> -<p> the length</p> -<p></p> -</div> +<p class="since">Since 0.9.10</p> </div> <hr> <div class="refsect2"> -<a name="nm-utils-hwaddr-type"></a><h3>nm_utils_hwaddr_type ()</h3> -<pre class="programlisting"><span class="returnvalue">int</span> -nm_utils_hwaddr_type (<em class="parameter"><code><span class="type">int</span> len</code></em>);</pre> -<p>Returns the type (either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code>) of the raw -address given its length.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.36.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-hwaddr-valid"></a><h3>nm_utils_hwaddr_valid ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_hwaddr_valid (<em class="parameter"><code>const <span class="type">char</span> *asc</code></em>);</pre> +<p> +Parses <em class="parameter"><code>asc</code></em> to see if it is a valid hardware address of some type. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>len</p></td> -<td class="parameter_description"><p>the length of hardware address in bytes</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>asc</code></em> :</span></p></td> +<td>the ASCII representation of a hardware address</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>asc</code></em> appears to be a valid hardware address +of some type, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not.</td> +</tr> +</tbody> </table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.36.6"></a><h4>Returns</h4> -<p> the type, either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code>, or -1 if -the address length was not recognized</p> -<p></p> -</div> +<p class="since">Since 0.9.10</p> </div> <hr> <div class="refsect2"> -<a name="nm-utils-hwaddr-ntoa"></a><h3>nm_utils_hwaddr_ntoa ()</h3> -<pre class="programlisting"><span class="returnvalue">char</span> * -nm_utils_hwaddr_ntoa (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> addr</code></em>, - <em class="parameter"><code><span class="type">int</span> type</code></em>);</pre> -<p>Converts <em class="parameter"><code>addr</code></em> - to textual form.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.37.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-bin2hexstr"></a><h3>nm_utils_bin2hexstr ()</h3> +<pre class="programlisting"><span class="returnvalue">char</span> * nm_utils_bin2hexstr (<em class="parameter"><code>const <span class="type">char</span> *bytes</code></em>, + <em class="parameter"><code><span class="type">int</span> len</code></em>, + <em class="parameter"><code><span class="type">int</span> final_len</code></em>);</pre> +<p> +Converts a byte-array <em class="parameter"><code>bytes</code></em> into a hexadecimal string. +If <em class="parameter"><code>final_len</code></em> is greater than -1, the returned string is terminated at +that index (returned_string[final_len] == '\0'), +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>addr</p></td> -<td class="parameter_description"><p>a binary hardware address</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>bytes</code></em> :</span></p></td> +<td>an array of bytes</td> +</tr> +<tr> +<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td> +<td>the length of the <em class="parameter"><code>bytes</code></em> array</td> </tr> <tr> -<td class="parameter_name"><p>type</p></td> -<td class="parameter_description"><p>the type of address; either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code></p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>final_len</code></em> :</span></p></td> +<td>an index where to cut off the returned string, or -1</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the textual form of <em class="parameter"><code>bytes</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> </tr> </tbody> </table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.37.6"></a><h4>Returns</h4> -<p> the textual form of <em class="parameter"><code>addr</code></em> -. </p> -<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> -</div> +<p class="since">Since 0.9.10</p> </div> <hr> <div class="refsect2"> -<a name="nm-utils-hwaddr-atoba"></a><h3>nm_utils_hwaddr_atoba ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="returnvalue">GByteArray</span></a> * -nm_utils_hwaddr_atoba (<em class="parameter"><code>const <span class="type">char</span> *asc</code></em>, - <em class="parameter"><code><span class="type">int</span> type</code></em>);</pre> -<p>Parses <em class="parameter"><code>asc</code></em> - and converts it to binary form in a <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a>. See -<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton" title="nm_utils_hwaddr_aton ()"><code class="function">nm_utils_hwaddr_aton()</code></a> if you don't want a <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a>.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.38.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-hex2byte"></a><h3>nm_utils_hex2byte ()</h3> +<pre class="programlisting"><span class="returnvalue">int</span> nm_utils_hex2byte (<em class="parameter"><code>const <span class="type">char</span> *hex</code></em>);</pre> +<p> +Converts a hex string (2 characters) into its byte representation. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>asc</p></td> -<td class="parameter_description"><p>the ASCII representation of a hardware address</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>hex</code></em> :</span></p></td> +<td>a string representing a hex byte</td> </tr> <tr> -<td class="parameter_name"><p>type</p></td> -<td class="parameter_description"><p>the type of address; either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code></p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>a byte, or -1 if <em class="parameter"><code>hex</code></em> doesn't represent a hex byte</td> </tr> </tbody> </table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.38.6"></a><h4>Returns</h4> -<p> a new <a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a>, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>asc</code></em> -couldn't -be parsed. </p> -<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> -</div> +<p class="since">Since 0.9.10</p> </div> <hr> <div class="refsect2"> -<a name="nm-utils-hwaddr-aton"></a><h3>nm_utils_hwaddr_aton ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint8"><span class="returnvalue">guint8</span></a> * -nm_utils_hwaddr_aton (<em class="parameter"><code>const <span class="type">char</span> *asc</code></em>, - <em class="parameter"><code><span class="type">int</span> type</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> buffer</code></em>);</pre> -<p>Parses <em class="parameter"><code>asc</code></em> - and converts it to binary form in <em class="parameter"><code>buffer</code></em> -. See -<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-atoba" title="nm_utils_hwaddr_atoba ()"><code class="function">nm_utils_hwaddr_atoba()</code></a> if you'd rather have the result in a -<a href="http://library.gnome.org/devel/glib/unstable/glib-Byte-Arrays.html#GByteArray"><span class="type">GByteArray</span></a>.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.39.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-hexstr2bin"></a><h3>nm_utils_hexstr2bin ()</h3> +<pre class="programlisting"><span class="returnvalue">char</span> * nm_utils_hexstr2bin (<em class="parameter"><code>const <span class="type">char</span> *hex</code></em>, + <em class="parameter"><code><span class="type">size_t</span> len</code></em>);</pre> +<p> +Converts a hexadecimal string <em class="parameter"><code>hex</code></em> into a byte-array. The returned array +length is <em class="parameter"><code>len</code></em>/2. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="parameter_name"><p>asc</p></td> -<td class="parameter_description"><p>the ASCII representation of a hardware address</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>hex</code></em> :</span></p></td> +<td>an hex string</td> </tr> <tr> -<td class="parameter_name"><p>type</p></td> -<td class="parameter_description"><p>the type of address; either <code class="literal">ARPHRD_ETHER</code> or <code class="literal">ARPHRD_INFINIBAND</code></p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td> +<td>the length of the <em class="parameter"><code>hex</code></em> string (it has to be even)</td> </tr> <tr> -<td class="parameter_name"><p>buffer</p></td> -<td class="parameter_description"><p>buffer to store the result into</p></td> -<td class="parameter_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>a array of bytes, or <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a> on error. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> +</td> </tr> </tbody> </table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.39.6"></a><h4>Returns</h4> -<p> <em class="parameter"><code>buffer</code></em> -, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>asc</code></em> -couldn't be parsed</p> -<p></p> -</div> +<p class="since">Since 0.9.10</p> </div> <hr> <div class="refsect2"> -<a name="nm-utils-iface-valid-name"></a><h3>nm_utils_iface_valid_name ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -nm_utils_iface_valid_name (<em class="parameter"><code>const <span class="type">char</span> *name</code></em>);</pre> -<p>This function is a 1:1 copy of the kernel's interface validation -function in net/core/dev.c.</p> -<div class="refsect3"> -<a name="id-1.2.26.8.40.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-iface-valid-name"></a><h3>nm_utils_iface_valid_name ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_iface_valid_name (<em class="parameter"><code>const <span class="type">char</span> *name</code></em>);</pre> +<p> +This function is a 1:1 copy of the kernel's interface validation +function in net/core/dev.c. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>name</p></td> -<td class="parameter_description"><p>Name of interface</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td> +<td>Name of interface</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if interface name is valid, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned.</td> +</tr> +</tbody> </table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.40.6"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if interface name is valid, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> is returned.</p> -<p></p> -</div> <p class="since">Since 0.9.8</p> </div> <hr> <div class="refsect2"> -<a name="nm-utils-is-uuid"></a><h3>nm_utils_is_uuid ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> -nm_utils_is_uuid (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>);</pre> -<p>Checks if <em class="parameter"><code>str</code></em> - is a UUID</p> -<div class="refsect3"> -<a name="id-1.2.26.8.41.5"></a><h4>Parameters</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-is-uuid"></a><h3>nm_utils_is_uuid ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_is_uuid (<em class="parameter"><code>const <span class="type">char</span> *str</code></em>);</pre> +<p> +Checks if <em class="parameter"><code>str</code></em> is a UUID +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="150px" class="parameters_name"> -<col class="parameters_description"> -<col width="200px" class="parameters_annotations"> +<col align="left" valign="top"> +<col> </colgroup> -<tbody><tr> -<td class="parameter_name"><p>str</p></td> -<td class="parameter_description"><p>a string that might be a UUID</p></td> -<td class="parameter_annotations"> </td> -</tr></tbody> +<tbody> +<tr> +<td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td> +<td>a string that might be a UUID</td> +</tr> +<tr> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>str</code></em> is a UUID, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not</td> +</tr> +</tbody> </table></div> -</div> -<div class="refsect3"> -<a name="id-1.2.26.8.41.6"></a><h4>Returns</h4> -<p> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>str</code></em> -is a UUID, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if not</p> -<p></p> -</div> <p class="since">Since 0.9.8</p> </div> +<hr> +<div class="refsect2"> +<a name="NM-UTILS-INET-ADDRSTRLEN:CAPS"></a><h3>NM_UTILS_INET_ADDRSTRLEN</h3> +<pre class="programlisting">#define NM_UTILS_INET_ADDRSTRLEN INET6_ADDRSTRLEN +</pre> +<p> +Defines the minimal length for a char buffer that is suitable as <em class="parameter"><code>dst</code></em> argument +for both <a class="link" href="libnm-util-nm-utils.html#nm-utils-inet4-ntop" title="nm_utils_inet4_ntop ()"><code class="function">nm_utils_inet4_ntop()</code></a> and <a class="link" href="libnm-util-nm-utils.html#nm-utils-inet6-ntop" title="nm_utils_inet6_ntop ()"><code class="function">nm_utils_inet6_ntop()</code></a>. +</p> </div> -<div class="refsect1"> -<a name="libnm-util-nm-utils.other_details"></a><h2>Types and Values</h2> +<hr> <div class="refsect2"> -<a name="NMUtilsSecurityType"></a><h3>enum NMUtilsSecurityType</h3> -<p>Describes generic security mechanisms that 802.11 access points may offer. -Used with <a class="link" href="libnm-util-nm-utils.html#nm-utils-security-valid" title="nm_utils_security_valid ()"><code class="function">nm_utils_security_valid()</code></a> for checking whether a given access -point is compatible with a network device.</p> -<div class="refsect3"> -<a name="id-1.2.26.9.2.4"></a><h4>Members</h4> -<div class="informaltable"><table width="100%" border="0"> +<a name="nm-utils-inet4-ntop"></a><h3>nm_utils_inet4_ntop ()</h3> +<pre class="programlisting">const <span class="returnvalue">char</span> * nm_utils_inet4_ntop (<em class="parameter"><code><span class="type">in_addr_t</span> inaddr</code></em>, + <em class="parameter"><code><span class="type">char</span> *dst</code></em>);</pre> +<p> +Wrapper for inet_ntop. +</p> +<div class="variablelist"><table border="0" class="variablelist"> <colgroup> -<col width="300px" class="enum_members_name"> -<col class="enum_members_description"> -<col width="200px" class="enum_members_annotations"> +<col align="left" valign="top"> +<col> </colgroup> <tbody> <tr> -<td class="enum_member_name"><p><a name="NMU-SEC-INVALID:CAPS"></a>NMU_SEC_INVALID</p></td> -<td class="enum_member_description"> -<p>unknown or invalid security, placeholder and not used</p> -</td> -<td class="enum_member_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>inaddr</code></em> :</span></p></td> +<td>the address that should be converted to string.</td> </tr> <tr> -<td class="enum_member_name"><p><a name="NMU-SEC-NONE:CAPS"></a>NMU_SEC_NONE</p></td> -<td class="enum_member_description"> -<p>unencrypted and open</p> -</td> -<td class="enum_member_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>dst</code></em> :</span></p></td> +<td>the destination buffer, it must contain at least <code class="literal">INET_ADDRSTRLEN</code> +or <a class="link" href="libnm-util-nm-utils.html#NM-UTILS-INET-ADDRSTRLEN:CAPS" title="NM_UTILS_INET_ADDRSTRLEN"><code class="literal">NM_UTILS_INET_ADDRSTRLEN</code></a> characters. If set to <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a>, it will return +a pointer to an internal, static buffer (shared with <a class="link" href="libnm-util-nm-utils.html#nm-utils-inet6-ntop" title="nm_utils_inet6_ntop ()"><code class="function">nm_utils_inet6_ntop()</code></a>). +Beware, that the internal buffer will be overwritten with ever new call +of <a class="link" href="libnm-util-nm-utils.html#nm-utils-inet4-ntop" title="nm_utils_inet4_ntop ()"><code class="function">nm_utils_inet4_ntop()</code></a> or <a class="link" href="libnm-util-nm-utils.html#nm-utils-inet6-ntop" title="nm_utils_inet6_ntop ()"><code class="function">nm_utils_inet6_ntop()</code></a> that does not provied it's +own <em class="parameter"><code>dst</code></em> buffer. Also, using the internal buffer is not thread safe. When +in doubt, pass your own <em class="parameter"><code>dst</code></em> buffer to avoid these issues.</td> </tr> <tr> -<td class="enum_member_name"><p><a name="NMU-SEC-STATIC-WEP:CAPS"></a>NMU_SEC_STATIC_WEP</p></td> -<td class="enum_member_description"> -<p>static WEP keys are used for encryption</p> -</td> -<td class="enum_member_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the input buffer <em class="parameter"><code>dst</code></em>, or a pointer to an +internal, static buffer. This function cannot fail.</td> </tr> +</tbody> +</table></div> +<p class="since">Since 0.9.10</p> +</div> +<hr> +<div class="refsect2"> +<a name="nm-utils-inet6-ntop"></a><h3>nm_utils_inet6_ntop ()</h3> +<pre class="programlisting">const <span class="returnvalue">char</span> * nm_utils_inet6_ntop (<em class="parameter"><code>const <span class="type">struct in6_addr</span> *in6addr</code></em>, + <em class="parameter"><code><span class="type">char</span> *dst</code></em>);</pre> +<p> +Wrapper for inet_ntop. +</p> +<div class="variablelist"><table border="0" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="enum_member_name"><p><a name="NMU-SEC-LEAP:CAPS"></a>NMU_SEC_LEAP</p></td> -<td class="enum_member_description"> -<p>Cisco LEAP is used for authentication and for generating the -dynamic WEP keys automatically</p> -</td> -<td class="enum_member_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>in6addr</code></em> :</span></p></td> +<td>the address that should be converted to string.</td> </tr> <tr> -<td class="enum_member_name"><p><a name="NMU-SEC-DYNAMIC-WEP:CAPS"></a>NMU_SEC_DYNAMIC_WEP</p></td> -<td class="enum_member_description"> -<p>standard 802.1x is used for authentication and -generating the dynamic WEP keys automatically</p> -</td> -<td class="enum_member_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>dst</code></em> :</span></p></td> +<td>the destination buffer, it must contain at least <code class="literal">INET6_ADDRSTRLEN</code> +or <a class="link" href="libnm-util-nm-utils.html#NM-UTILS-INET-ADDRSTRLEN:CAPS" title="NM_UTILS_INET_ADDRSTRLEN"><code class="literal">NM_UTILS_INET_ADDRSTRLEN</code></a> characters. If set to <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a>, it will return +a pointer to an internal, static buffer (shared with <a class="link" href="libnm-util-nm-utils.html#nm-utils-inet4-ntop" title="nm_utils_inet4_ntop ()"><code class="function">nm_utils_inet4_ntop()</code></a>). +Beware, that the internal buffer will be overwritten with ever new call +of <a class="link" href="libnm-util-nm-utils.html#nm-utils-inet4-ntop" title="nm_utils_inet4_ntop ()"><code class="function">nm_utils_inet4_ntop()</code></a> or <a class="link" href="libnm-util-nm-utils.html#nm-utils-inet6-ntop" title="nm_utils_inet6_ntop ()"><code class="function">nm_utils_inet6_ntop()</code></a> that does not provied it's +own <em class="parameter"><code>dst</code></em> buffer. Also, using the internal buffer is not thread safe. When +in doubt, pass your own <em class="parameter"><code>dst</code></em> buffer to avoid these issues.</td> </tr> <tr> -<td class="enum_member_name"><p><a name="NMU-SEC-WPA-PSK:CAPS"></a>NMU_SEC_WPA_PSK</p></td> -<td class="enum_member_description"> -<p>WPA1 is used with Pre-Shared Keys (PSK)</p> -</td> -<td class="enum_member_annotations"> </td> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td>the input buffer <em class="parameter"><code>dst</code></em>, or a pointer to an +internal, static buffer. <a href="/usr/share/gtk-doc/html/liboil/liboil-liboiljunk.html#NULL:CAPS"><code class="literal">NULL</code></a> is not allowed as <em class="parameter"><code>in6addr</code></em>, +otherwise, this function cannot fail.</td> </tr> +</tbody> +</table></div> +<p class="since">Since 0.9.10</p> +</div> +<hr> +<div class="refsect2"> +<a name="nm-utils-check-virtual-device-compatibility"></a><h3>nm_utils_check_virtual_device_compatibility ()</h3> +<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> nm_utils_check_virtual_device_compatibility + (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> virtual_type</code></em>, + <em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> other_type</code></em>);</pre> +<p> +Determines if a connection of type <em class="parameter"><code>virtual_type</code></em> can (in the +general case) work with connections of type <em class="parameter"><code>other_type</code></em>. +</p> +<p> +If <em class="parameter"><code>virtual_type</code></em> is <code class="literal">NM_TYPE_SETTING_VLAN</code>, then this checks if +<em class="parameter"><code>other_type</code></em> is a valid type for the parent of a VLAN. +</p> +<p> +If <em class="parameter"><code>virtual_type</code></em> is a "master" type (eg, <code class="literal">NM_TYPE_SETTING_BRIDGE</code>), +then this checks if <em class="parameter"><code>other_type</code></em> is a valid type for a slave of that +master. +</p> +<p> +Note that even if this returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> it is not guaranteed that +<span class="emphasis"><em>every</em></span> connection of type <em class="parameter"><code>other_type</code></em> is +compatible with <em class="parameter"><code>virtual_type</code></em>; it may depend on the exact +configuration of the two connections, or on the capabilities of an +underlying device driver. +</p> +<div class="variablelist"><table border="0" class="variablelist"> +<colgroup> +<col align="left" valign="top"> +<col> +</colgroup> +<tbody> <tr> -<td class="enum_member_name"><p><a name="NMU-SEC-WPA-ENTERPRISE:CAPS"></a>NMU_SEC_WPA_ENTERPRISE</p></td> -<td class="enum_member_description"> -<p>WPA1 is used with 802.1x authentication</p> -</td> -<td class="enum_member_annotations"> </td> +<td><p><span class="term"><em class="parameter"><code>virtual_type</code></em> :</span></p></td> +<td>a virtual connection type</td> </tr> <tr> -<td class="enum_member_name"><p><a name="NMU-SEC-WPA2-PSK:CAPS"></a>NMU_SEC_WPA2_PSK</p></td> -<td class="enum_member_description"> -<p>WPA2/RSN is used with Pre-Shared Keys (PSK)</p> +<td><p><span class="term"><em class="parameter"><code>other_type</code></em> :</span></p></td> +<td>a connection type to test against <em class="parameter"><code>virtual_type</code></em> </td> -<td class="enum_member_annotations"> </td> </tr> <tr> -<td class="enum_member_name"><p><a name="NMU-SEC-WPA2-ENTERPRISE:CAPS"></a>NMU_SEC_WPA2_ENTERPRISE</p></td> -<td class="enum_member_description"> -<p>WPA2 is used with 802.1x authentication</p> +<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> +<td> +<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> </td> -<td class="enum_member_annotations"> </td> </tr> </tbody> </table></div> -</div> -</div> -<hr> -<div class="refsect2"> -<a name="NM-UTILS-HWADDR-LEN-MAX:CAPS"></a><h3>NM_UTILS_HWADDR_LEN_MAX</h3> -<pre class="programlisting">#define NM_UTILS_HWADDR_LEN_MAX 20 /* INFINIBAND_ALEN */ -</pre> -<p>The maximum length of a hardware address of a type known by -<a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-len" title="nm_utils_hwaddr_len ()"><code class="function">nm_utils_hwaddr_len()</code></a> or <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton" title="nm_utils_hwaddr_aton ()"><code class="function">nm_utils_hwaddr_aton()</code></a>. This can be used -as the size of the buffer passed to <a class="link" href="libnm-util-nm-utils.html#nm-utils-hwaddr-aton" title="nm_utils_hwaddr_aton ()"><code class="function">nm_utils_hwaddr_aton()</code></a>.</p> +<p class="since">Since 0.9.10</p> </div> </div> </div> <div class="footer"> <hr> - Generated by GTK-Doc V1.20</div> + Generated by GTK-Doc V1.19</div> </body> </html> \ No newline at end of file |