[PATCH] Android: Fix max number of sched scan ssids based on driver capability

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Change-Id: I822c20c284096c72eca3810eb9ce8e439fbe40f9
Signed-off-by: Dmitry Shmidt <dimitrysh@xxxxxxxxxx>
---
 wpa_supplicant/scan.c | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/wpa_supplicant/scan.c b/wpa_supplicant/scan.c
index 3463dd9..cfa4416 100644
--- a/wpa_supplicant/scan.c
+++ b/wpa_supplicant/scan.c
@@ -2334,10 +2334,18 @@ int wpas_start_pno(struct wpa_supplicant *wpa_s)
  struct wpa_ssid *ssid;
  struct wpa_driver_scan_params params;
  struct sched_scan_plan scan_plan;
+ unsigned int max_sched_scan_ssids;

  if (!wpa_s->sched_scan_supported)
  return -1;

+ if (wpa_s->max_sched_scan_ssids > WPAS_MAX_SCAN_SSIDS)
+ max_sched_scan_ssids = WPAS_MAX_SCAN_SSIDS;
+ else
+ max_sched_scan_ssids = wpa_s->max_sched_scan_ssids;
+ if (max_sched_scan_ssids < 1)
+ return -1;
+
  if (wpa_s->pno || wpa_s->pno_sched_pending)
  return 0;

@@ -2381,10 +2389,10 @@ int wpas_start_pno(struct wpa_supplicant *wpa_s)
  num_ssid++;
  }

- if (num_ssid > WPAS_MAX_SCAN_SSIDS) {
+ if (num_ssid > max_sched_scan_ssids) {
  wpa_printf(MSG_DEBUG, "PNO: Use only the first %u SSIDs from "
-   "%u", WPAS_MAX_SCAN_SSIDS, (unsigned int) num_ssid);
- num_ssid = WPAS_MAX_SCAN_SSIDS;
+   "%u", max_sched_scan_ssids, (unsigned int) num_ssid);
+ num_ssid = max_sched_scan_ssids;
  }

  if (num_match_ssid > wpa_s->max_match_sets) {
-- 
2.8.0.rc3.226.g39d4020

Attachment: 0001-Android-Fix-max-number-of-sched-scan-ssids-based-on-.patch
Description: Binary data

_______________________________________________
Hostap mailing list
Hostap@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/hostap

[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux