diff options
Diffstat (limited to 'net-misc/networkmanager/files/networkmanager-0.8.2-shared-connection.patch')
-rw-r--r-- | net-misc/networkmanager/files/networkmanager-0.8.2-shared-connection.patch | 47 |
1 files changed, 38 insertions, 9 deletions
diff --git a/net-misc/networkmanager/files/networkmanager-0.8.2-shared-connection.patch b/net-misc/networkmanager/files/networkmanager-0.8.2-shared-connection.patch index 3536924..a9e9705 100644 --- a/net-misc/networkmanager/files/networkmanager-0.8.2-shared-connection.patch +++ b/net-misc/networkmanager/files/networkmanager-0.8.2-shared-connection.patch @@ -1,16 +1,17 @@ -From 4a495b961aab736fa2881057ecf8a7c5044fb4a3 Mon Sep 17 00:00:00 2001 +From 765cf2873a92bc83ce35f965e0ccf8bc5dcff6e8 Mon Sep 17 00:00:00 2001 From: Mu Qiao <qiaomuf@gentoo.org> Date: Wed, 5 Jan 2011 13:30:08 +0800 Subject: [PATCH] Support shared and link-local method for ipv4 Signed-off-by: Mu Qiao <qiaomuf@gentoo.org> --- - system-settings/plugins/ifnet/connection_parser.c | 49 ++++++++++++++++----- - system-settings/plugins/ifnet/net_utils.c | 4 ++ - 2 files changed, 42 insertions(+), 11 deletions(-) + system-settings/plugins/ifnet/connection_parser.c | 55 ++++++++++++++++---- + system-settings/plugins/ifnet/net_utils.c | 4 ++ + .../plugins/ifnet/nm-ifnet-connection.c | 8 ++- + 3 files changed, 53 insertions(+), 14 deletions(-) diff --git a/system-settings/plugins/ifnet/connection_parser.c b/system-settings/plugins/ifnet/connection_parser.c -index f9fae51..def5c4a 100644 +index f9fae51..07fb511 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) @@ -22,7 +23,7 @@ index f9fae51..def5c4a 100644 gboolean is_static_block = is_static_ip4 (conn_name); ip_block *iblock = NULL; -@@ -569,12 +569,36 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) +@@ -569,12 +569,42 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) && strstr (value, "nogateway") ? TRUE : FALSE, NULL); if (!is_static_block) { @@ -33,6 +34,12 @@ index f9fae51..def5c4a 100644 - PLUGIN_PRINT (IFNET_PLUGIN_NAME, "Using DHCP for %s", - conn_name); + 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, @@ -65,7 +72,7 @@ index f9fae51..def5c4a 100644 } else { iblock = convert_ip4_config_block (conn_name); if (!iblock) { -@@ -625,7 +649,7 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) +@@ -625,7 +655,7 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) } /* add dhcp hostname and client id */ @@ -74,7 +81,7 @@ index f9fae51..def5c4a 100644 gchar *dhcp_hostname, *client_id; get_dhcp_hostname_and_client_id (&dhcp_hostname, &client_id); -@@ -712,7 +736,6 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) +@@ -712,7 +742,6 @@ make_ip4_setting (NMConnection * connection, gchar * conn_name, GError ** error) iblock = iblock->next; destroy_ip_block (current_iblock); } @@ -82,7 +89,7 @@ index f9fae51..def5c4a 100644 /* Finally add setting to connection */ nm_connection_add_setting (connection, NM_SETTING (ip4_setting)); } -@@ -2443,8 +2466,12 @@ write_ip4_setting (NMConnection * connection, gchar * conn_name, +@@ -2443,8 +2472,12 @@ write_ip4_setting (NMConnection * connection, gchar * conn_name, } ifnet_set_data (conn_name, "config", ips->str); g_string_free (ips, TRUE); @@ -112,6 +119,28 @@ index 2dc253c..7e52f10 100644 dhcp6 = strstr (data, "dhcp6"); if (dhcp6) { gchar *dhcp4; +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); -- 1.7.2.2 |