linux/net/mac80211
Juuso Oikarinen d8ec44335c mac80211: Add validity check for beacon_crc value
On association to an AP, after receiving beacons, the beacon_crc value is set.
The beacon_crc value is not reset in disassociation, but the BSS data may be
expired at a later point. When associating again, it's possible that a
beacon for the AP is not received, resulting in the beacon_ies to remain NULL.

After association, further beacons will not update the beacon data, as the
crc value of the beacon has not changed, and the beacon_crc still holds a
value matching the beacon. The beacon_ies will remain forever null.

One of the results of this is that WLAN power save cannot be entered, the STA
will remain foreven in active mode.

Fix this by adding a validation flag for the beacon_crc, which is cleared on
association.

Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-10-05 13:35:24 -04:00
..
aes_ccm.c mac80211: Don't squash error codes in key setup functions 2010-08-16 15:26:38 -04:00
aes_ccm.h mac80211: pass scratch buffer directly, remove additional pointers 2008-07-08 14:16:02 -04:00
aes_cmac.c mac80211: Don't squash error codes in key setup functions 2010-08-16 15:26:38 -04:00
aes_cmac.h mac80211: 802.11w - Add BIP (AES-128-CMAC) 2009-01-29 16:00:02 -05:00
agg-rx.c mac80211: AMPDU rx reorder timeout timer 2010-08-16 15:26:39 -04:00
agg-tx.c mac80211: update aggregation documentation 2010-06-14 15:39:28 -04:00
cfg.c cfg80211/mac80211: allow management frame TX in AP mode 2010-10-05 13:35:23 -04:00
cfg.h
chan.c cfg80211/mac80211: use lockdep_assert_held 2010-09-16 15:46:00 -04:00
debugfs_key.c mac80211: use cipher suite selectors 2010-08-16 16:45:11 -04:00
debugfs_key.h mac80211: 802.11w - Use BIP (AES-128-CMAC) 2009-01-29 16:00:03 -05:00
debugfs_netdev.c mac80211: Support multiple VIFS per AP in debugfs. 2010-09-27 15:57:43 -04:00
debugfs_netdev.h mac80211: reduce reliance on netdev 2009-12-21 18:38:52 -05:00
debugfs_sta.c mac80211: Support multiple VIFS per AP in debugfs. 2010-09-27 15:57:43 -04:00
debugfs_sta.h
debugfs.c mac80211: Support multiple VIFS per AP in debugfs. 2010-09-27 15:57:43 -04:00
debugfs.h net: Remove unnecessary returns from void function()s 2010-05-17 23:23:14 -07:00
driver-ops.h mac80211: add p2p device type support 2010-09-16 15:46:07 -04:00
driver-trace.c mac80211: fix sparse warnings/errors 2009-08-04 16:43:25 -04:00
driver-trace.h mac80211: add p2p device type support 2010-09-16 15:46:07 -04:00
event.c cfg80211: use proper allocation flags 2009-07-10 15:01:49 -04:00
ht.c mac80211: allow drivers to request SM PS mode change 2010-08-16 15:26:40 -04:00
ibss.c net/mac80211: Use wiphy_<level> 2010-08-25 14:33:17 -04:00
ieee80211_i.h mac80211: Add validity check for beacon_crc value 2010-10-05 13:35:24 -04:00
iface.c mac80211: fix rx monitor filter refcounters 2010-10-05 13:35:21 -04:00
Kconfig mac82011: Allow selection of minstrel_ht as default rc algorithm 2010-06-30 15:00:53 -04:00
key.c cfg80211/mac80211: use lockdep_assert_held 2010-09-16 15:46:00 -04:00
key.h mac80211: allow vendor specific cipher suites 2010-08-27 13:27:07 -04:00
led.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
led.h mac80211: rename files 2008-04-08 16:44:45 -04:00
main.c mac80211: perform scan cancel in hw reset work 2010-10-05 13:35:24 -04:00
Makefile mac80211: add the minstrel_ht rate control algorithm 2010-06-02 16:12:59 -04:00
mesh_hwmp.c mac80211: use common work struct 2010-06-14 15:38:17 -04:00
mesh_pathtbl.c mac80211: use common work struct 2010-06-14 15:38:17 -04:00
mesh_plink.c mac80211: avoid scheduling while atomic in mesh_rx_plink_frame 2010-06-24 15:42:30 -04:00
mesh.c mac80211: pull mgmt frame rx into rx handler 2010-06-14 15:39:26 -04:00
mesh.h mac80211: pull mgmt frame rx into rx handler 2010-06-14 15:39:26 -04:00
michael.c mac80211: remove ieee80211_get_hdr_info 2008-07-08 14:16:01 -04:00
michael.h mac80211: remove ieee80211_get_hdr_info 2008-07-08 14:16:01 -04:00
mlme.c mac80211: Add validity check for beacon_crc value 2010-10-05 13:35:24 -04:00
offchannel.c mac80211: disable beacon monitor while going offchannel 2010-09-16 15:46:17 -04:00
pm.c mac80211: only cancel software-based scans on suspend 2010-09-01 16:12:28 -04:00
rate.c net/mac80211: Use wiphy_<level> 2010-08-25 14:33:17 -04:00
rate.h mac80211: add the minstrel_ht rate control algorithm 2010-06-02 16:12:59 -04:00
rc80211_minstrel_debugfs.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2010-04-11 14:53:53 -07:00
rc80211_minstrel_ht_debugfs.c minstrel_ht: move minstrel_mcs_groups declaration to header file 2010-06-24 15:42:18 -04:00
rc80211_minstrel_ht.c mac80211: freeing the wrong variable 2010-07-26 15:32:41 -04:00
rc80211_minstrel_ht.h minstrel_ht: move minstrel_mcs_groups declaration to header file 2010-06-24 15:42:18 -04:00
rc80211_minstrel.c minstrel: don't complain about feedback for unrequested rates 2010-07-26 15:09:04 -04:00
rc80211_minstrel.h minstrel: make the rate control ops reusable from another rc implementation 2010-03-10 17:44:23 -05:00
rc80211_pid_algo.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
rc80211_pid_debugfs.c net: mac80211: Fix a typo. 2010-08-16 15:26:40 -04:00
rc80211_pid.h mac80211/drivers: rewrite the rate control API 2008-10-31 19:00:23 -04:00
rx.c mac80211: move packet flags into packet 2010-09-27 15:57:54 -04:00
scan.c mac80211: Add DS Parameter Set into Probe Request on 2.4 GHz 2010-09-24 15:54:28 -04:00
spectmgmt.c mac80211: reduce reliance on netdev 2009-12-21 18:38:52 -05:00
sta_info.c mac80211/ath9k: Support AMPDU with multiple VIFs. 2010-09-27 15:57:45 -04:00
sta_info.h mac80211: AMPDU rx reorder timeout timer 2010-08-16 15:26:39 -04:00
status.c mac80211: clear txflags for ps-filtered frames 2010-09-24 15:54:30 -04:00
tkip.c mac80211: remove wep dependency 2010-07-08 16:35:50 -04:00
tkip.h mac80211: remove wep dependency 2010-07-08 16:35:50 -04:00
tx.c mac80211: Fix dangling pointer in ieee80211_xmit 2010-09-14 16:08:03 -04:00
util.c mac80211: Add DS Parameter Set into Probe Request on 2.4 GHz 2010-09-24 15:54:28 -04:00
wep.c mac80211: use cipher suite selectors 2010-08-16 16:45:11 -04:00
wep.h mac80211: remove wep dependency 2010-07-08 16:35:50 -04:00
wme.c mac80211: fix-up build breakage in 2.6.33 2010-01-06 15:35:49 -05:00
wme.h mac80211: fix skb buffering issue 2010-01-05 16:21:40 -05:00
work.c mac80211: per interface idle notification 2010-08-16 15:26:40 -04:00
wpa.c mac80211: move packet flags into packet 2010-09-27 15:57:54 -04:00
wpa.h mac80211: 802.11w - Add BIP (AES-128-CMAC) 2009-01-29 16:00:02 -05:00