diff options
Diffstat (limited to 'net-misc/networkmanager/files')
4 files changed, 0 insertions, 677 deletions
diff --git a/net-misc/networkmanager/files/networkmanager-0.8.4-fix-tests.patch b/net-misc/networkmanager/files/networkmanager-0.8.4-fix-tests.patch deleted file mode 100644 index d8af30f..0000000 --- a/net-misc/networkmanager/files/networkmanager-0.8.4-fix-tests.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 21e7fda25507e68c13b97040b3b9e5dc3c9726bf Mon Sep 17 00:00:00 2001 -From: Mu Qiao <qiaomuf@gentoo.org> -Date: Wed, 18 May 2011 19:02:40 +0800 -Subject: [PATCH] fix-tests - ---- - configure.ac | 1 - - system-settings/plugins/ifnet/Makefile.am | 1 - - system-settings/plugins/ifnet/tests/Makefile.am | 13 ------------- - 3 files changed, 0 insertions(+), 15 deletions(-) - delete mode 100644 system-settings/plugins/ifnet/tests/Makefile.am - -diff --git a/configure.ac b/configure.ac -index d8a266e..8304aa4 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -571,7 +571,6 @@ system-settings/plugins/Makefile - system-settings/plugins/ifupdown/Makefile - system-settings/plugins/ifupdown/tests/Makefile - system-settings/plugins/ifnet/Makefile --system-settings/plugins/ifnet/tests/Makefile - system-settings/plugins/ifcfg-rh/Makefile - system-settings/plugins/ifcfg-rh/tests/Makefile - system-settings/plugins/ifcfg-rh/tests/network-scripts/Makefile -diff --git a/system-settings/plugins/ifnet/Makefile.am b/system-settings/plugins/ifnet/Makefile.am -index 86d5ea2..f61e112 100644 ---- a/system-settings/plugins/ifnet/Makefile.am -+++ b/system-settings/plugins/ifnet/Makefile.am -@@ -1,4 +1,3 @@ --SUBDIRS = . tests - INCLUDES = \ - -I$(top_srcdir)/src/system-settings \ - -I$(top_srcdir)/include \ -diff --git a/system-settings/plugins/ifnet/tests/Makefile.am b/system-settings/plugins/ifnet/tests/Makefile.am -deleted file mode 100644 -index 17a081f..0000000 ---- a/system-settings/plugins/ifnet/tests/Makefile.am -+++ /dev/null -@@ -1,13 +0,0 @@ --INCLUDES=-I$(top_srcdir)/system-settings/plugins/ifnet\ -- -I$(top_srcdir)/libnm-glib \ -- -I$(top_srcdir)/libnm-util \ -- -I$(top_srcdir)/include \ -- -I$(top_srcdir)/src/system-settings --TESTS = check_ifnet --check_PROGRAMS = check_ifnet --check_ifnet_SOURCES = test_all.c --check_ifnet_CPPFLAGS = $(CHECK_CFLAGS) $(GLIB_CFLAGS) --check_ifnet_LDADD = $(top_srcdir)/libnm-util/libnm-util.la\ -- $(top_srcdir)/system-settings/plugins/ifnet/lib-ifnet-io.la\ -- $(CHECK_LIBS)\ -- $(GLIB_LIBS) --- -1.7.3.4 - diff --git a/net-misc/networkmanager/files/networkmanager-0.8.4-ifnet-smarter-write.patch b/net-misc/networkmanager/files/networkmanager-0.8.4-ifnet-smarter-write.patch deleted file mode 100644 index ff4c1f2..0000000 --- a/net-misc/networkmanager/files/networkmanager-0.8.4-ifnet-smarter-write.patch +++ /dev/null @@ -1,158 +0,0 @@ -From 776fafc133e18df48dc92a717c662e1b2858567e Mon Sep 17 00:00:00 2001 -From: Mu Qiao <qiaomuf@gentoo.org> -Date: Fri, 25 Feb 2011 16:25:07 +0000 -Subject: [PATCH 3/3] Won't write when nothing changed - Signed-off-by: Mu Qiao <qiaomuf@gentoo.org> - Make log less excessive, accept non-alnum ssid (bug #356337) - -Signed-off-by: Mu Qiao <qiaomuf@gentoo.org> ---- - system-settings/plugins/ifnet/connection_parser.c | 33 +++++++++----------- - system-settings/plugins/ifnet/net_parser.c | 8 ++++- - system-settings/plugins/ifnet/plugin.c | 4 -- - system-settings/plugins/ifnet/wpa_parser.c | 7 +++- - 4 files changed, 26 insertions(+), 26 deletions(-) - -diff --git a/system-settings/plugins/ifnet/connection_parser.c b/system-settings/plugins/ifnet/connection_parser.c -index 9b5ddc1..4ac2173 100644 ---- a/system-settings/plugins/ifnet/connection_parser.c -+++ b/system-settings/plugins/ifnet/connection_parser.c -@@ -55,9 +55,16 @@ update_connection_id (NMConnection * connection, gchar * conn_name) - gchar *idstr = NULL; - gchar *uuid_base = NULL; - gchar *uuid = NULL; -+ int name_len; - NMSettingConnection *setting; - -- idstr = g_strdup_printf ("%s (%s)", get_prefix (), conn_name); -+ name_len = strlen (conn_name); -+ if ((name_len > 2) && (g_str_has_prefix (conn_name, "0x"))) { -+ gchar * conn_name_printable = utils_hexstr2bin (conn_name + 2, name_len - 2); -+ idstr = g_strdup_printf ("%s (%s)", get_prefix (), conn_name_printable); -+ g_free (conn_name_printable); -+ } else -+ idstr = g_strdup_printf ("%s (%s)", get_prefix (), conn_name); - uuid_base = idstr; - uuid = nm_utils_uuid_generate_from_string (uuid_base); - setting = -@@ -627,23 +634,13 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) - g_object_set (ip4_setting, - NM_SETTING_IP4_CONFIG_IGNORE_AUTO_ROUTES, - TRUE, NULL); -- if (nm_setting_ip4_config_add_address -- (ip4_setting, ip4_addr)) { -- PLUGIN_PRINT (IFNET_PLUGIN_NAME, -- "new address: %d", iblock->ip); -- PLUGIN_PRINT (IFNET_PLUGIN_NAME, -- "ipv4 addresses count: %d", -- nm_setting_ip4_config_get_num_addresses -- (ip4_setting)); -- } else { -- PLUGIN_WARN (IFNET_PLUGIN_NAME, -- "ignoring duplicate IP4 address"); -- } -+ if (!nm_setting_ip4_config_add_address (ip4_setting, ip4_addr)) -+ PLUGIN_WARN (IFNET_PLUGIN_NAME, -+ "ignoring duplicate IP4 address"); - nm_ip4_address_unref (ip4_addr); - current_iblock = iblock; - iblock = iblock->next; - destroy_ip_block (current_iblock); -- - } - g_object_set (ip4_setting, - NM_SETTING_IP4_CONFIG_METHOD, -@@ -2276,11 +2273,12 @@ write_wireless_setting (NMConnection * connection, - return FALSE; - } - -- /* If the SSID contains any non-printable characters, we need to use the -- * hex notation of the SSID instead. -+ /* If the SSID contains any non-alnum characters, we need to use -+ * the hex notation of the SSID instead. (Because openrc doesn't -+ * support these characters, see bug #356337) - */ - for (i = 0; i < ssid->len; i++) { -- if (!isprint (ssid->data[i])) { -+ if (!isalnum (ssid->data[i])) { - hex_ssid = TRUE; - break; - } -@@ -2487,7 +2485,6 @@ write_ip4_setting (NMConnection * connection, gchar * conn_name, - ifnet_set_data (conn_name, "config", "dhcp"); - - /* DNS Servers */ -- ifnet_set_data (conn_name, "dns_servers", NULL); - num = nm_setting_ip4_config_get_num_dns (s_ip4); - if (num > 0) { - dns = g_string_new (NULL); -diff --git a/system-settings/plugins/ifnet/net_parser.c b/system-settings/plugins/ifnet/net_parser.c -index de2db8a..57f3688 100644 ---- a/system-settings/plugins/ifnet/net_parser.c -+++ b/system-settings/plugins/ifnet/net_parser.c -@@ -411,12 +411,16 @@ ifnet_set_data (gchar * conn_name, gchar * key, gchar * value) - } - /* Remove existing key value pair */ - if (g_hash_table_lookup_extended (conn, key, &orin_key, &orin_value)) { -- if (new_value && !strcmp (orin_value, new_value)) -+ if (new_value && !strcmp (orin_value, new_value)){ -+ g_free (new_value); - return; -+ } - g_hash_table_remove (conn, orin_key); - g_free (orin_key); - g_free (orin_value); -- } -+ /* old key/value doesn't exist but new value is NULL */ -+ } else if (!value) -+ return; - if (new_value) - g_hash_table_insert (conn, g_strdup (key), new_value); - net_parser_data_changed = TRUE; -diff --git a/system-settings/plugins/ifnet/plugin.c b/system-settings/plugins/ifnet/plugin.c -index 94f9e79..3952e91 100644 ---- a/system-settings/plugins/ifnet/plugin.c -+++ b/system-settings/plugins/ifnet/plugin.c -@@ -91,8 +91,6 @@ update_system_hostname (gpointer config) - { - SCPluginIfnetPrivate *priv = SC_PLUGIN_IFNET_GET_PRIVATE (config); - -- PLUGIN_PRINT (IFNET_PLUGIN_NAME, "Updating hostname"); -- - if (priv->hostname) - g_free (priv->hostname); - priv->hostname = read_hostname (IFNET_SYSTEM_HOSTNAME_FILE); -@@ -184,8 +182,6 @@ monitor_file_changes (const char *filename, - info); - g_signal_connect (monitor, "changed", G_CALLBACK (file_changed), - info); -- PLUGIN_PRINT (IFNET_PLUGIN_NAME, "Monitoring %s", filename); -- - } else - PLUGIN_WARN (IFNET_PLUGIN_NAME, - "Monitoring %s failed, error: %s", filename, -diff --git a/system-settings/plugins/ifnet/wpa_parser.c b/system-settings/plugins/ifnet/wpa_parser.c -index 42c52c3..338c338 100644 ---- a/system-settings/plugins/ifnet/wpa_parser.c -+++ b/system-settings/plugins/ifnet/wpa_parser.c -@@ -463,12 +463,15 @@ wpa_set_data (gchar * ssid, gchar * key, gchar * value) - /* Remove old key value pairs */ - if (g_hash_table_lookup_extended - (security, key, &orig_key, &orig_value)) { -- if (new_value && !strcmp(orig_value, new_value)) -+ if (new_value && !strcmp(orig_value, new_value)){ -+ g_free (new_value); - return; -+ } - g_hash_table_remove (security, orig_key); - g_free (orig_key); - g_free (orig_value); -- } -+ } else if (!value) -+ return; - - /* Add new key value */ - if (new_value) --- -1.7.3.4 - diff --git a/net-misc/networkmanager/files/networkmanager-0.8.4-shared-connection.patch b/net-misc/networkmanager/files/networkmanager-0.8.4-shared-connection.patch deleted file mode 100644 index 3ce883a..0000000 --- a/net-misc/networkmanager/files/networkmanager-0.8.4-shared-connection.patch +++ /dev/null @@ -1,458 +0,0 @@ -From d252fad6aa69aefa17b592111c2db23864f63907 Mon Sep 17 00:00:00 2001 -From: Mu Qiao <qiaomuf@gentoo.org> -Date: Tue, 25 Jan 2011 10:31:53 +0000 -Subject: [PATCH] shared-connection - -Signed-off-by: Mu Qiao <qiaomuf@gentoo.org> ---- - system-settings/plugins/ifnet/connection_parser.c | 90 ++++++++++++++------ - system-settings/plugins/ifnet/net_parser.c | 55 +++++++----- - system-settings/plugins/ifnet/net_parser.h | 4 +- - system-settings/plugins/ifnet/net_utils.c | 6 +- - .../plugins/ifnet/nm-ifnet-connection.c | 8 +- - system-settings/plugins/ifnet/wpa_parser.c | 21 +++-- - 6 files changed, 122 insertions(+), 62 deletions(-) - -diff --git a/system-settings/plugins/ifnet/connection_parser.c b/system-settings/plugins/ifnet/connection_parser.c -index f9fae51..9b5ddc1 100644 ---- a/system-settings/plugins/ifnet/connection_parser.c -+++ b/system-settings/plugins/ifnet/connection_parser.c -@@ -557,7 +557,7 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) - - NMSettingIP4Config *ip4_setting = - NM_SETTING_IP4_CONFIG (nm_setting_ip4_config_new ()); -- gchar *value; -+ gchar *value, *method = NULL; - gboolean is_static_block = is_static_ip4 (conn_name); - ip_block *iblock = NULL; - -@@ -569,13 +569,41 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) - && strstr (value, "nogateway") ? TRUE : FALSE, NULL); - - if (!is_static_block) { -- g_object_set (ip4_setting, -- NM_SETTING_IP4_CONFIG_METHOD, -- NM_SETTING_IP4_CONFIG_METHOD_AUTO, -- NM_SETTING_IP4_CONFIG_NEVER_DEFAULT, FALSE, NULL); -- PLUGIN_PRINT (IFNET_PLUGIN_NAME, "Using DHCP for %s", -- conn_name); -- } else { -+ method = ifnet_get_data (conn_name, "config"); -+ if (!method){ -+ g_set_error (error, ifnet_plugin_error_quark (), 0, -+ "Unknown config for %s", conn_name); -+ g_object_unref (ip4_setting); -+ return; -+ } -+ if (!strcmp (method, "dhcp")) -+ g_object_set (ip4_setting, -+ NM_SETTING_IP4_CONFIG_METHOD, -+ NM_SETTING_IP4_CONFIG_METHOD_AUTO, -+ NM_SETTING_IP4_CONFIG_NEVER_DEFAULT, FALSE, NULL); -+ else if (!strcmp (method, "autoip")){ -+ g_object_set (ip4_setting, -+ NM_SETTING_IP4_CONFIG_METHOD, -+ NM_SETTING_IP4_CONFIG_METHOD_LINK_LOCAL, -+ NM_SETTING_IP4_CONFIG_NEVER_DEFAULT, FALSE, NULL); -+ nm_connection_add_setting (connection, NM_SETTING (ip4_setting)); -+ return; -+ } else if (!strcmp (method, "shared")){ -+ g_object_set (ip4_setting, -+ NM_SETTING_IP4_CONFIG_METHOD, -+ NM_SETTING_IP4_CONFIG_METHOD_SHARED, -+ NM_SETTING_IP4_CONFIG_NEVER_DEFAULT, FALSE, NULL); -+ nm_connection_add_setting (connection, NM_SETTING (ip4_setting)); -+ return; -+ } else { -+ g_set_error (error, ifnet_plugin_error_quark (), 0, -+ "Unknown config for %s", conn_name); -+ g_object_unref (ip4_setting); -+ return; -+ } -+ PLUGIN_PRINT (IFNET_PLUGIN_NAME, "Using %s method for %s", -+ method, conn_name); -+ }else { - iblock = convert_ip4_config_block (conn_name); - if (!iblock) { - g_set_error (error, ifnet_plugin_error_quark (), 0, -@@ -625,7 +653,7 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) - } - - /* add dhcp hostname and client id */ -- if (!is_static_block) { -+ if (method && !strcmp (method, "dhcp")) { - gchar *dhcp_hostname, *client_id; - - get_dhcp_hostname_and_client_id (&dhcp_hostname, &client_id); -@@ -712,7 +740,6 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) - iblock = iblock->next; - destroy_ip_block (current_iblock); - } -- - /* Finally add setting to connection */ - nm_connection_add_setting (connection, NM_SETTING (ip4_setting)); - } -@@ -1243,10 +1270,10 @@ parse_wpa_psk (gchar * psk, GError ** error) - * the passphrase contains spaces. - */ - -- p = psk; -- if (p[0] == '"' && psk[strlen (psk) - 1] == '"') -+ p = g_strdup (psk); -+ if (p[0] == '"' && p[strlen (p) - 1] == '"') - quoted = TRUE; -- if (!quoted && (strlen (psk) == 64)) { -+ if (!quoted && (strlen (p) == 64)) { - /* Verify the hex PSK; 64 digits */ - if (!is_hex (p)) { - g_set_error (error, ifnet_plugin_error_quark (), -@@ -1254,7 +1281,7 @@ parse_wpa_psk (gchar * psk, GError ** error) - "Invalid WPA_PSK (contains non-hexadecimal characters)"); - goto out; - } -- hashed = g_strdup (psk); -+ hashed = g_strdup (p); - } else { - strip_string (p, '"'); - -@@ -1276,6 +1303,7 @@ parse_wpa_psk (gchar * psk, GError ** error) - } - - out: -+ g_free (p); - return hashed; - } - -@@ -2085,7 +2113,8 @@ write_wireless_security_setting (NMConnection * connection, - } else if (!strcmp (key_mgmt, "wpa-eap")) { - wpa_set_data (conn_name, "key_mgmt", "WPA-EAP"); - wpa = TRUE; -- } -+ } else -+ PLUGIN_WARN (IFNET_PLUGIN_NAME, "Unknown key_mgmt: %s", key_mgmt); - - if (auth_alg) { - if (!strcmp (auth_alg, "shared")) -@@ -2180,8 +2209,11 @@ write_wireless_security_setting (NMConnection * connection, - g_string_append (quoted, psk); - g_string_append_c (quoted, '"'); - } -- wpa_set_data (conn_name, "psk", -- quoted ? quoted->str : (gchar *) psk); -+ if (psk) -+ wpa_set_data (conn_name, "psk", -+ quoted ? quoted->str : (gchar *) psk); -+ else -+ PLUGIN_WARN (IFNET_PLUGIN_NAME, "Use WPA, but no psk received from NM"); - if (quoted) - g_string_free (quoted, TRUE); - } else -@@ -2190,15 +2222,19 @@ write_wireless_security_setting (NMConnection * connection, - return TRUE; - } - --/* remove old ssid and add new one*/ -+/* Only remove old config when ssid is changed. -+ * See bug #350476. -+ * */ - static void - update_wireless_ssid (NMConnection * connection, gchar * conn_name, - gchar * ssid, gboolean hex) - { -- ifnet_delete_network (conn_name); -- ifnet_add_connection (ssid, "wireless"); -+ if (strcmp (conn_name, ssid)){ -+ ifnet_delete_network (conn_name); -+ wpa_delete_security (conn_name); -+ } - -- wpa_delete_security (conn_name); -+ ifnet_add_network (ssid, "wireless"); - wpa_add_security (ssid); - } - -@@ -2443,7 +2479,11 @@ write_ip4_setting (NMConnection * connection, gchar * conn_name, - } - ifnet_set_data (conn_name, "config", ips->str); - g_string_free (ips, TRUE); -- } else -+ } else if (!strcmp (value, NM_SETTING_IP4_CONFIG_METHOD_SHARED)) -+ ifnet_set_data (conn_name, "config", "shared"); -+ else if (!strcmp (value, NM_SETTING_IP4_CONFIG_METHOD_LINK_LOCAL)) -+ ifnet_set_data (conn_name, "config", "autoip"); -+ else - ifnet_set_data (conn_name, "config", "dhcp"); - - /* DNS Servers */ -@@ -2858,7 +2898,7 @@ get_wired_name () - for (; i < 256; i++) { - gchar *conn_name = g_strdup_printf ("eth%d", i); - -- if (!ifnet_has_connection (conn_name)) { -+ if (!ifnet_has_network (conn_name)) { - return conn_name; - } else - g_free (conn_name); -@@ -2875,7 +2915,7 @@ get_ppp_name () - for (; i < 256; i++) { - gchar *conn_name = g_strdup_printf ("ppp%d", i); - -- if (!ifnet_has_connection (conn_name)) { -+ if (!ifnet_has_network (conn_name)) { - return conn_name; - } else - g_free (conn_name); -@@ -2982,7 +3022,7 @@ ifnet_add_new_connection (NMConnection * connection, - goto out; - } - -- if (ifnet_add_connection (new_name, new_type)) -+ if (ifnet_add_network (new_name, new_type)) - success = - ifnet_update_parsers_by_connection (connection, new_name, - NULL, config_file, -diff --git a/system-settings/plugins/ifnet/net_parser.c b/system-settings/plugins/ifnet/net_parser.c -index b4a381d..de2db8a 100644 ---- a/system-settings/plugins/ifnet/net_parser.c -+++ b/system-settings/plugins/ifnet/net_parser.c -@@ -37,6 +37,9 @@ static GList *functions_list; - /* Used to decide whether to write changes to file*/ - static gboolean net_parser_data_changed = FALSE; - -+static void -+destroy_connection_config (GHashTable * conn); -+ - static GHashTable * - add_new_connection_config (const gchar * type, const gchar * name) - { -@@ -58,8 +61,10 @@ add_new_connection_config (const gchar * type, const gchar * name) - } - - gboolean --ifnet_add_connection (gchar * name, gchar * type) -+ifnet_add_network (gchar * name, gchar * type) - { -+ if (ifnet_has_network (name)) -+ return TRUE; - if (add_new_connection_config (type, name)) { - PLUGIN_PRINT (IFNET_PLUGIN_NAME, "Adding network for %s", name); - net_parser_data_changed = TRUE; -@@ -69,11 +74,27 @@ ifnet_add_connection (gchar * name, gchar * type) - } - - gboolean --ifnet_has_connection (gchar * conn_name) -+ifnet_has_network (gchar * conn_name) - { - return g_hash_table_lookup (conn_table, conn_name) != NULL; - } - -+gboolean -+ifnet_delete_network (gchar * conn_name) -+{ -+ GHashTable *network = NULL; -+ -+ g_return_val_if_fail (conn_table != NULL && conn_name != NULL, FALSE); -+ PLUGIN_PRINT (IFNET_PLUGIN_NAME, "Deleting network for %s", conn_name); -+ network = g_hash_table_lookup (conn_table, conn_name); -+ if (!network) -+ return FALSE; -+ g_hash_table_remove (conn_table, conn_name); -+ destroy_connection_config (network); -+ net_parser_data_changed = TRUE; -+ return TRUE; -+} -+ - static GHashTable * - get_connection_config (gchar * name) - { -@@ -377,21 +398,27 @@ ifnet_set_data (gchar * conn_name, gchar * key, gchar * value) - { - gpointer orin_key = NULL, orin_value = NULL; - GHashTable *conn = g_hash_table_lookup (conn_table, conn_name); -+ gchar *new_value = NULL; - - if (!conn) { - PLUGIN_WARN (IFNET_PLUGIN_NAME, - "%s does not exsit!", conn_name); - return; - } -+ if (value){ -+ new_value = g_strdup (value); -+ strip_string (new_value, '"'); -+ } - /* Remove existing key value pair */ - if (g_hash_table_lookup_extended (conn, key, &orin_key, &orin_value)) { -+ if (new_value && !strcmp (orin_value, new_value)) -+ return; - g_hash_table_remove (conn, orin_key); - g_free (orin_key); - g_free (orin_value); - } -- if (value) -- g_hash_table_insert (conn, g_strdup (key), -- strip_string (g_strdup (value), '"')); -+ if (new_value) -+ g_hash_table_insert (conn, g_strdup (key), new_value); - net_parser_data_changed = TRUE; - } - -@@ -467,7 +494,7 @@ ifnet_flush_to_file (gchar * config_file) - gboolean result = FALSE; - - if (!net_parser_data_changed) -- return FALSE; -+ return TRUE; - if (!conn_table || !global_settings_table) - return FALSE; - -@@ -583,22 +610,6 @@ ifnet_flush_to_file (gchar * config_file) - return result; - } - --gboolean --ifnet_delete_network (gchar * conn_name) --{ -- GHashTable *network = NULL; -- -- g_return_val_if_fail (conn_table != NULL && conn_name != NULL, FALSE); -- PLUGIN_PRINT (IFNET_PLUGIN_NAME, "Deleting network for %s", conn_name); -- network = g_hash_table_lookup (conn_table, conn_name); -- if (!network) -- return FALSE; -- g_hash_table_remove (conn_table, conn_name); -- destroy_connection_config (network); -- net_parser_data_changed = TRUE; -- return TRUE; --} -- - void - ifnet_destroy (void) - { -diff --git a/system-settings/plugins/ifnet/net_parser.h b/system-settings/plugins/ifnet/net_parser.h -index 73a44c8..b71a01f 100644 ---- a/system-settings/plugins/ifnet/net_parser.h -+++ b/system-settings/plugins/ifnet/net_parser.h -@@ -36,11 +36,11 @@ GList *ifnet_get_connection_names (void); - gchar *ifnet_get_data (gchar * conn_name, const gchar * key); - gchar *ifnet_get_global_data (const gchar * key); - gchar *ifnet_get_global_setting (gchar * group, gchar * key); --gboolean ifnet_has_connection (gchar * conn_name); -+gboolean ifnet_has_network (gchar * conn_name); - - /* Writer functions */ - gboolean ifnet_flush_to_file (gchar * config_file); - void ifnet_set_data (gchar * conn_name, gchar * key, gchar * value); --gboolean ifnet_add_connection (gchar * name, gchar * type); -+gboolean ifnet_add_network (gchar * name, gchar * type); - gboolean ifnet_delete_network (gchar * conn_name); - #endif -diff --git a/system-settings/plugins/ifnet/net_utils.c b/system-settings/plugins/ifnet/net_utils.c -index 2dc253c..83b4325 100644 ---- a/system-settings/plugins/ifnet/net_utils.c -+++ b/system-settings/plugins/ifnet/net_utils.c -@@ -278,6 +278,10 @@ is_static_ip4 (gchar * conn_name) - - if (!data) - return FALSE; -+ if (!strcmp (data, "shared")) -+ return FALSE; -+ if (!strcmp (data, "autoip")) -+ return FALSE; - dhcp6 = strstr (data, "dhcp6"); - if (dhcp6) { - gchar *dhcp4; -@@ -942,8 +946,8 @@ get_dhcp_hostname_and_client_id (char **hostname, char **client_id) - else if ((tmp = strstr (line, "send host-name")) != NULL) { - tmp += strlen ("send host-name"); - g_strstrip (tmp); -- strip_string (tmp, '"'); - strip_string (tmp, ';'); -+ strip_string (tmp, '"'); - if (tmp[0] != '\0') - *hostname = g_strdup (tmp); - else -diff --git a/system-settings/plugins/ifnet/nm-ifnet-connection.c b/system-settings/plugins/ifnet/nm-ifnet-connection.c -index e47495c..ebe2581 100644 ---- a/system-settings/plugins/ifnet/nm-ifnet-connection.c -+++ b/system-settings/plugins/ifnet/nm-ifnet-connection.c -@@ -71,12 +71,14 @@ nm_ifnet_connection_new (gchar * conn_name) - { - NMConnection *tmp; - GObject *object; -- GError **error = NULL; -+ GError *error = NULL; - - g_return_val_if_fail (conn_name != NULL, NULL); -- tmp = ifnet_update_connection_from_config_block (conn_name, error); -- if (!tmp) -+ tmp = ifnet_update_connection_from_config_block (conn_name, &error); -+ if (!tmp){ -+ g_error_free (error); - return NULL; -+ } - object = (GObject *) g_object_new (NM_TYPE_IFNET_CONNECTION, - NM_IFNET_CONNECTION_CONN_NAME, - conn_name, NULL); -diff --git a/system-settings/plugins/ifnet/wpa_parser.c b/system-settings/plugins/ifnet/wpa_parser.c -index 5e94108..42c52c3 100644 ---- a/system-settings/plugins/ifnet/wpa_parser.c -+++ b/system-settings/plugins/ifnet/wpa_parser.c -@@ -366,7 +366,7 @@ wpa_flush_to_file (gchar * config_file) - gboolean result = FALSE; - - if (!wpa_parser_data_changed) -- return FALSE; -+ return TRUE; - if (!wsec_table || !wsec_global_table) - return FALSE; - -@@ -450,26 +450,29 @@ wpa_set_data (gchar * ssid, gchar * key, gchar * value) - { - gpointer orig_key = NULL, orig_value = NULL; - GHashTable *security = g_hash_table_lookup (wsec_table, ssid); -+ gchar *new_value = NULL; - - g_return_if_fail (security != NULL); - -+ if (value){ -+ new_value = g_strdup(value); -+ if (strcmp (key, "ssid") != 0 && strcmp (key, "psk") != 0 -+ && !g_str_has_prefix (key, "wep_key")) -+ strip_string (new_value, '"'); -+ } - /* Remove old key value pairs */ - if (g_hash_table_lookup_extended - (security, key, &orig_key, &orig_value)) { -+ if (new_value && !strcmp(orig_value, new_value)) -+ return; - g_hash_table_remove (security, orig_key); - g_free (orig_key); - g_free (orig_value); - } - - /* Add new key value */ -- if (value) { -- gchar *new_value = g_strdup (value); -- -- if (strcmp (key, "ssid") != 0 && strcmp (key, "psk") != 0 -- && !g_str_has_prefix (key, "wep_key")) -- strip_string (new_value, '"'); -+ if (new_value) - g_hash_table_insert (security, g_strdup (key), new_value); -- } - wpa_parser_data_changed = TRUE; - } - -@@ -483,7 +486,7 @@ gboolean - wpa_add_security (gchar * ssid) - { - if (wpa_has_security (ssid)) -- return FALSE; -+ return TRUE; - else { - GHashTable *security = - g_hash_table_new (g_str_hash, g_str_equal); --- -1.7.3.4 - diff --git a/net-misc/networkmanager/files/nm-system-settings.conf-ifnet b/net-misc/networkmanager/files/nm-system-settings.conf-ifnet deleted file mode 100644 index 4d14ee7..0000000 --- a/net-misc/networkmanager/files/nm-system-settings.conf-ifnet +++ /dev/null @@ -1,6 +0,0 @@ -[main] -plugins=ifnet,keyfile - -[ifnet] -managed=true -auto_refresh=false |