summaryrefslogtreecommitdiff
path: root/gsupplicant/supplicant.c
diff options
context:
space:
mode:
authorPatrik Flykt <patrik.flykt@linux.intel.com>2013-01-08 11:32:51 +0200
committerPatrik Flykt <patrik.flykt@linux.intel.com>2013-01-11 15:34:04 +0200
commitb21b221772b4772ae3e9a885effda233cf79b997 (patch)
tree6f61964ffb7d5cecefe9bc998bc6d6eac5bdc9fb /gsupplicant/supplicant.c
parentc388d1adeb003f84a7439f8c53b3a159f6d2ffdd (diff)
downloadconnman-b21b221772b4772ae3e9a885effda233cf79b997.tar.gz
connman-b21b221772b4772ae3e9a885effda233cf79b997.tar.bz2
connman-b21b221772b4772ae3e9a885effda233cf79b997.zip
gsupplicant: Return max SSIDs to scan given by wpa_supplicant
Although it seems wpa_supplicant can handle 4 SSIDs in version 0.7.x and 16 starting with 0.8.x, in practise this does not work. Return the value reported without relying on wpa_supplicant internals to handle the situation. In order for hidden scans to work properly, the minimum value needs to be 1.
Diffstat (limited to 'gsupplicant/supplicant.c')
-rw-r--r--gsupplicant/supplicant.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/gsupplicant/supplicant.c b/gsupplicant/supplicant.c
index d9dfdbb3..e298bb56 100644
--- a/gsupplicant/supplicant.c
+++ b/gsupplicant/supplicant.c
@@ -653,6 +653,8 @@ static void interface_capability(const char *key, DBusMessageIter *iter,
dbus_int32_t max_scan_ssid;
dbus_message_iter_get_basic(iter, &max_scan_ssid);
+ if (max_scan_ssid < 1)
+ max_scan_ssid = 1;
interface->max_scan_ssids = max_scan_ssid;
} else
@@ -764,9 +766,6 @@ unsigned int g_supplicant_interface_get_max_scan_ssids(
if (interface == NULL)
return 0;
- if (interface->max_scan_ssids == 0)
- return WPAS_MAX_SCAN_SSIDS;
-
return interface->max_scan_ssids;
}