diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2008-04-04 08:13:06 +0200 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2008-04-04 08:13:06 +0200 |
commit | ada412ae85949172658aadfc80baf02b8f4a1736 (patch) | |
tree | 462eb6f322d290b4e7ecdf649753a4a0f71a5822 /src/iface.c | |
parent | 4b7adf27379eb4652c650a8882333c77e9d1a07b (diff) | |
download | connman-ada412ae85949172658aadfc80baf02b8f4a1736.tar.gz connman-ada412ae85949172658aadfc80baf02b8f4a1736.tar.bz2 connman-ada412ae85949172658aadfc80baf02b8f4a1736.zip |
Improve selecting of networks
Diffstat (limited to 'src/iface.c')
-rw-r--r-- | src/iface.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/iface.c b/src/iface.c index a1e136df..27bae8f1 100644 --- a/src/iface.c +++ b/src/iface.c @@ -850,17 +850,25 @@ static DBusMessage *select_network(DBusConnection *conn, struct connman_iface *iface = data; DBusMessage *reply; const char *network; + gchar *passphrase; DBG("conn %p", conn); dbus_message_get_args(msg, NULL, DBUS_TYPE_STRING, &network, DBUS_TYPE_INVALID); + passphrase = __connman_iface_find_passphrase(iface, network); + if (passphrase == NULL) + goto done; + g_free(iface->network.identifier); iface->network.identifier = g_strdup(network); + g_free(iface->network.passphrase); + iface->network.passphrase = passphrase; __connman_iface_connect(iface, &iface->network); +done: reply = dbus_message_new_method_return(msg); if (reply == NULL) return NULL; |