From: Samuel Ortiz Date: Thu, 30 Sep 2010 14:18:56 +0000 (+0200) Subject: Implement WiFi network driver remove hook X-Git-Tag: 2.0_alpha~2331 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fdc79b960c47656d7666fac6ab9d4656ec5fe83e;p=framework%2Fconnectivity%2Fconnman.git Implement WiFi network driver remove hook --- diff --git a/plugins/supplicant.c b/plugins/supplicant.c index 867a928..defe5f1 100644 --- a/plugins/supplicant.c +++ b/plugins/supplicant.c @@ -2564,6 +2564,25 @@ int supplicant_disconnect(struct connman_network *network) return 0; } +void supplicant_remove_network(struct connman_network *network) +{ + struct supplicant_task *task; + int index; + + DBG("network %p", network); + + index = connman_network_get_index(network); + + task = find_task_by_index(index); + if (task == NULL) + return; + + if (task->network != network) + return; + + remove_network(task); +} + static void supplicant_activate(DBusConnection *conn) { DBusMessage *message; diff --git a/plugins/supplicant.h b/plugins/supplicant.h index 6745aac..7eb8880 100644 --- a/plugins/supplicant.h +++ b/plugins/supplicant.h @@ -37,3 +37,5 @@ int supplicant_scan(struct connman_device *device); int supplicant_connect(struct connman_network *network); int supplicant_disconnect(struct connman_network *network); + +void supplicant_remove_network(struct connman_network *network); diff --git a/plugins/wifi-legacy.c b/plugins/wifi-legacy.c index 62938cc..cfbd80b 100644 --- a/plugins/wifi-legacy.c +++ b/plugins/wifi-legacy.c @@ -62,6 +62,8 @@ static int network_probe(struct connman_network *network) static void network_remove(struct connman_network *network) { DBG("network %p", network); + + supplicant_remove_network(network); } static int network_connect(struct connman_network *network)