From: Marcel Holtmann Date: Thu, 26 Mar 2009 09:24:16 +0000 (-0700) Subject: Check result before overwriting WiFi.Security and WiFi.Passphrase X-Git-Tag: 0.14~4 X-Git-Url: http://vcs.maemo.org/git/?a=commitdiff_plain;h=c6ad3d59d894b089f122e6f22f320e05c78cc97c;p=connman Check result before overwriting WiFi.Security and WiFi.Passphrase --- diff --git a/src/device.c b/src/device.c index ccfa592..e7c4b67 100644 --- a/src/device.c +++ b/src/device.c @@ -530,7 +530,7 @@ static DBusMessage *join_network(DBusConnection *conn, index = connman_device_get_index(device); connman_network_set_index(network, index); - connman_network_set_available(network, TRUE); + connman_network_set_protocol(network, CONNMAN_NETWORK_PROTOCOL_IP); err = device->driver->join(device, network); diff --git a/src/network.c b/src/network.c index e408e1d..c2e79d7 100644 --- a/src/network.c +++ b/src/network.c @@ -1144,6 +1144,7 @@ static int network_load(struct connman_network *network) gchar *pathname, *data = NULL; gsize length; const char *name; + char *str; int val; DBG("network %p", network); @@ -1181,13 +1182,19 @@ static int network_load(struct connman_network *network) if (val > 0) network->priority = val; - g_free(network->wifi.security); - network->wifi.security = g_key_file_get_string(keyfile, + str = g_key_file_get_string(keyfile, network->identifier, "WiFi.Security", NULL); + if (str != NULL) { + g_free(network->wifi.security); + network->wifi.security = str; + } - g_free(network->wifi.passphrase); - network->wifi.passphrase = g_key_file_get_string(keyfile, + str = g_key_file_get_string(keyfile, network->identifier, "WiFi.Passphrase", NULL); + if (str != NULL) { + g_free(network->wifi.passphrase); + network->wifi.passphrase = str; + } g_key_file_free(keyfile);