]> git.baikalelectronics.ru Git - kernel.git/commit
wl12xx: fix oops in sched_scan when forcing a passive scan
authorLuciano Coelho <coelho@ti.com>
Fri, 27 May 2011 12:34:48 +0000 (15:34 +0300)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 31 May 2011 18:47:26 +0000 (14:47 -0400)
commit4f0764fcea1e8ba04520808df87269283cd7d2c6
tree0067c12e2014b4e4aa58ca6204236618515b3d79
parent533d27451d0d5bd953b768a1834db1c87cd803ab
wl12xx: fix oops in sched_scan when forcing a passive scan

Fix kernel oops when trying to use passive scheduled scans.  The
reason was that in passive scans there are no SSIDs, so there was a
NULL pointer dereference.

To solve the problem, we now check the number of SSIDs provided in the
sched_scan request and only access the list if there's one or more
(ie. passive scan is not forced).  We also force all the channels to
be passive by adding the IEEE80211_CHAN_PASSIVE_SCAN flag locally
before the checks in the wl1271_scan_get_sched_scan_channels()
function.

Signed-off-by: Luciano Coelho <coelho@ti.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/wl12xx/scan.c