]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Fix sched_scan filter setting for max_match_sets == 0
authorJouni Malinen <jouni@qca.qualcomm.com>
Fri, 25 Nov 2011 16:12:04 +0000 (18:12 +0200)
committerJouni Malinen <j@w1.fi>
Fri, 25 Nov 2011 16:12:04 +0000 (18:12 +0200)
The previous implementation was trying to add the first SSID
to a zero-length array. Avoid this with an explicit validation
of the array length.

Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>

wpa_supplicant/scan.c

index b902692c6de76cc71fd34eaaa7c60ba8730a01ad..9335589d667d3bc754234b2203579de0ad2d4c2b 100644 (file)
@@ -755,7 +755,8 @@ int wpa_supplicant_req_sched_scan(struct wpa_supplicant *wpa_s)
                        continue;
                }
 
-               if (params.filter_ssids && ssid->ssid && ssid->ssid_len) {
+               if (params.num_filter_ssids < wpa_s->max_match_sets &&
+                   params.filter_ssids && ssid->ssid && ssid->ssid_len) {
                        wpa_dbg(wpa_s, MSG_DEBUG, "add to filter ssid: %s",
                                wpa_ssid_txt(ssid->ssid, ssid->ssid_len));
                        os_memcpy(params.filter_ssids[params.num_filter_ssids].ssid,