---
plugins/wifi.c | 18 +++++++++++++++++-
1 files changed, 17 insertions(+), 1 deletions(-)
diff --git a/plugins/wifi.c b/plugins/wifi.c
index 0a842f9..c0f7ddc 100644
--- a/plugins/wifi.c
+++ b/plugins/wifi.c
@@ -604,6 +604,18 @@ static void setup_autoscan(struct wifi_data *wifi)
start_autoscan(wifi->device);
}
+static void interface_autoscan_callback(int result,
+ GSupplicantInterface *interface,
+ void *user_data)
+{
+ struct wifi_data *wifi = user_data;
+
+ if (result < 0) {
+ DBG("Could not enable Autoscan, falling back...");
+ setup_autoscan(wifi);
+ }
+}
+
static void interface_create_callback(int result,
GSupplicantInterface *interface,
void *user_data)
@@ -636,7 +648,11 @@ static void interface_create_callback(int result,
return;
/* Setting up automatic scanning */
- setup_autoscan(wifi);
+ if (g_supplicant_interface_autoscan(interface, AUTOSCAN_DEFAULT,
+ interface_autoscan_callback, wifi) < 0) {
+ DBG("Could not enable Autoscan, falling back...");
+ setup_autoscan(wifi);
+ }
}
static int wifi_enable(struct connman_device *device)
--
1.7.8.6
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman