diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2009-07-17 13:11:14 +0200 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2009-07-17 13:11:14 +0200 |
commit | f05f2576329498cafd3af385da4045dac8972ba4 (patch) | |
tree | 28abb0acd09f6439ae67c811375f5077f964daa9 | |
parent | daa3adb7166e1041b6cd33b7e396677f6ea401a9 (diff) | |
download | connman-f05f2576329498cafd3af385da4045dac8972ba4.tar.gz connman-f05f2576329498cafd3af385da4045dac8972ba4.tar.bz2 connman-f05f2576329498cafd3af385da4045dac8972ba4.zip |
Add function for cleaning out stale networks
-rw-r--r-- | src/connman.h | 1 | ||||
-rw-r--r-- | src/device.c | 9 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/connman.h b/src/connman.h index 6dd57cca..0ac1c713 100644 --- a/src/connman.h +++ b/src/connman.h @@ -206,6 +206,7 @@ void __connman_device_decrease_connections(struct connman_device *device); void __connman_device_set_network(struct connman_device *device, struct connman_network *network); +void __connman_device_cleanup_networks(struct connman_device *device); int __connman_device_scan(struct connman_device *device); int __connman_device_connect(struct connman_device *device); diff --git a/src/device.c b/src/device.c index 2bdc9ccb..c05fada2 100644 --- a/src/device.c +++ b/src/device.c @@ -1453,6 +1453,12 @@ static gboolean remove_unavailable_network(gpointer key, gpointer value, return TRUE; } +void __connman_device_cleanup_networks(struct connman_device *device) +{ + g_hash_table_foreach_remove(device->networks, + remove_unavailable_network, NULL); +} + /** * connman_device_set_scanning: * @device: device structure @@ -1510,8 +1516,7 @@ int connman_device_set_scanning(struct connman_device *device, return 0; } - g_hash_table_foreach_remove(device->networks, - remove_unavailable_network, NULL); + __connman_device_cleanup_networks(device); if (device->connections > 0) return 0; |