1
0
Fork 0
alistair23-linux/drivers/net/wireless/ath5k
Bob Copeland 89fd2e282a ath5k: Fix loop variable initializations
In ath5k_tasklet_rx, both status structures 'rxs' and 'rs' are
initialized at the top of the tasklet, but not within the loop.
If the loop is executed multiple times in the tasklet then the
variables may see changes from previous packets.

For TKIP, this results in 'Invalid Michael MIC' errors if two packets
are processed in the tasklet: rxs.flag gets set to RX_DECRYPTED by
mac80211 when it decrypts the first encrypted packet.  The subsequent
packet will have RX_DECRYPTED set upon entry to mac80211, so mac80211
will not try to decrypt it.

We currently initialize all but two fields in the structures, so fix
the other two.

Signed-off-by: Bob Copeland <me@bobcopeland.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2008-05-20 17:48:12 -04:00
..
Kconfig ath5k: Port debug.c over to the new band API and enable as build option 2008-02-29 15:19:37 -05:00
Makefile ath5k: Port debug.c over to the new band API and enable as build option 2008-02-29 15:19:37 -05:00
ath5k.h ath5k: Misc fixes/cleanups 2008-04-16 16:00:03 -04:00
base.c ath5k: Fix loop variable initializations 2008-05-20 17:48:12 -04:00
base.h ath5k: Port debug.c over to the new band API and enable as build option 2008-02-29 15:19:37 -05:00
debug.c wireless: correct warnings from using '%llx' for type 'u64' 2008-03-07 17:09:52 -05:00
debug.h ath5k: move rx and tx status structures out of hardware descriptor 2008-03-07 16:07:49 -05:00
hw.c ath5k: Fix loop variable initializations 2008-05-20 17:48:12 -04:00
hw.h ath5k: struct ath5k_desc cleanups 2008-03-07 16:07:49 -05:00
initvals.c ath5k: Add RF2425 initvals 2008-04-16 16:00:02 -04:00
phy.c ath5k: Add RF2425 initvals 2008-04-16 16:00:02 -04:00
reg.h ath5k: Identify RF2413 and deal with PHY_SPENDING 2008-03-07 16:02:58 -05:00