summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2009-07-17 11:18:15 +0200
committerMarcel Holtmann <marcel@holtmann.org>2009-07-17 11:18:15 +0200
commita80cae7af96d51fb65bdf02e66c29b01b31435fe (patch)
treef2c85099dce0e2512ab5a57440630ec0dec60fe1
parent8a6ea50b2aaeb1b317196b16886e874ff98485c0 (diff)
downloadconnman-a80cae7af96d51fb65bdf02e66c29b01b31435fe.tar.gz
connman-a80cae7af96d51fb65bdf02e66c29b01b31435fe.tar.bz2
connman-a80cae7af96d51fb65bdf02e66c29b01b31435fe.zip
Ensure that supplicant disconnects from the network
-rw-r--r--plugins/supplicant.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/plugins/supplicant.c b/plugins/supplicant.c
index 67a01616..901ff148 100644
--- a/plugins/supplicant.c
+++ b/plugins/supplicant.c
@@ -1594,6 +1594,8 @@ static void state_change(struct supplicant_task *task, DBusMessage *msg)
break;
case WPA_DISCONNECTED:
+ disable_network(task);
+
if (task->disconnecting == TRUE) {
connman_network_set_connected(task->network, FALSE);
connman_network_unref(task->network);
@@ -1616,6 +1618,8 @@ static void state_change(struct supplicant_task *task, DBusMessage *msg)
break;
case WPA_INACTIVE:
+ remove_network(task);
+
if (task->disconnecting == TRUE) {
connman_network_set_connected(task->network, FALSE);
connman_network_unref(task->network);