diff options
Diffstat (limited to 'meta/recipes-connectivity/connman/connman-gnome/0003-Fix-setting-IPv4-configuration.patch')
-rw-r--r-- | meta/recipes-connectivity/connman/connman-gnome/0003-Fix-setting-IPv4-configuration.patch | 85 |
1 files changed, 0 insertions, 85 deletions
diff --git a/meta/recipes-connectivity/connman/connman-gnome/0003-Fix-setting-IPv4-configuration.patch b/meta/recipes-connectivity/connman/connman-gnome/0003-Fix-setting-IPv4-configuration.patch deleted file mode 100644 index a25ffd9cfa..0000000000 --- a/meta/recipes-connectivity/connman/connman-gnome/0003-Fix-setting-IPv4-configuration.patch +++ /dev/null @@ -1,85 +0,0 @@ -From 8594fb5e2fc347984457e2e46b175eb3cf57951f Mon Sep 17 00:00:00 2001 -Message-Id: <8594fb5e2fc347984457e2e46b175eb3cf57951f.1334369310.git.paul.eggleton@linux.intel.com> -In-Reply-To: <cover.1334369310.git.paul.eggleton@linux.intel.com> -References: <cover.1334369310.git.paul.eggleton@linux.intel.com> -From: Paul Eggleton <paul.eggleton@linux.intel.com> -Date: Sat, 14 Apr 2012 01:11:53 +0100 -Subject: [PATCH 3/6] Fix setting IPv4 configuration - -Values in the hashtable for IPv4.Configuration need to be variants, not -strings, and don't pass address entries if the method is dhcp. - -Upstream-Status: Submitted - -Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> ---- - common/connman-client.c | 32 +++++++++++++++++++++++++------- - 1 files changed, 25 insertions(+), 7 deletions(-) - -diff --git a/common/connman-client.c b/common/connman-client.c -index 9d755c4..e4441ad 100644 ---- a/common/connman-client.c -+++ b/common/connman-client.c -@@ -39,6 +39,11 @@ - #define CONNMAN_CLIENT_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE((obj), \ - CONNMAN_TYPE_CLIENT, ConnmanClientPrivate)) - -+#ifndef DBUS_TYPE_G_DICTIONARY -+#define DBUS_TYPE_G_DICTIONARY \ -+ (dbus_g_type_get_map("GHashTable", G_TYPE_STRING, G_TYPE_VALUE)) -+#endif -+ - typedef struct _ConnmanClientPrivate ConnmanClientPrivate; - - struct _ConnmanClientPrivate { -@@ -248,6 +253,16 @@ GtkTreeModel *connman_client_get_device_model(ConnmanClient *client) - return model; - } - -+void hash_table_value_string_insert( GHashTable *hash, gpointer key, const char *str ) -+{ -+ GValue *itemvalue; -+ -+ itemvalue = g_slice_new0(GValue); -+ g_value_init(itemvalue, G_TYPE_STRING); -+ g_value_set_string(itemvalue, str); -+ g_hash_table_insert(hash, key, itemvalue); -+} -+ - gboolean connman_client_set_ipv4(ConnmanClient *client, const gchar *device, - struct ipv4_config *ipv4_config) - { -@@ -255,12 +270,7 @@ gboolean connman_client_set_ipv4(ConnmanClient *client, const gchar *device, - DBusGProxy *proxy; - GValue value = { 0 }; - gboolean ret; -- GHashTable *ipv4 = g_hash_table_new(g_str_hash, g_str_equal); -- -- g_hash_table_insert(ipv4, "Method", (gpointer)ipv4_config->method); -- g_hash_table_insert(ipv4, "Address", (gpointer)ipv4_config->address); -- g_hash_table_insert(ipv4, "Netmask", (gpointer)ipv4_config->netmask); -- g_hash_table_insert(ipv4, "Gateway", (gpointer)ipv4_config->gateway); -+ GHashTable *ipv4 = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free); - - DBG("client %p", client); - -@@ -270,7 +280,15 @@ gboolean connman_client_set_ipv4(ConnmanClient *client, const gchar *device, - proxy = connman_dbus_get_proxy(priv->store, device); - if (proxy == NULL) - return FALSE; -- g_value_init(&value, DBUS_TYPE_G_STRING_STRING_HASHTABLE); -+ -+ hash_table_value_string_insert(ipv4, "Method", ipv4_config->method); -+ if( g_strcmp0(ipv4_config->method, "dhcp" ) != 0 ) { -+ hash_table_value_string_insert(ipv4, "Address", ipv4_config->address); -+ hash_table_value_string_insert(ipv4, "Netmask", ipv4_config->netmask); -+ hash_table_value_string_insert(ipv4, "Gateway", ipv4_config->gateway); -+ } -+ -+ g_value_init(&value, DBUS_TYPE_G_DICTIONARY); - g_value_set_boxed(&value, ipv4); - ret = connman_set_property(proxy, "IPv4.Configuration", &value, NULL); - --- -1.7.5.4 - |