linux/net/mac80211
Max Stepanov aeb136c5b4 mac80211: fix a potential NULL access in ieee80211_crypto_hw_decrypt
The NULL pointer access could happen when ieee80211_crypto_hw_decrypt
is called from ieee80211_rx_h_decrypt with the following condition:
1. rx->key->conf.cipher is not WEP, CCMP, TKIP or AES_CMAC
2. rx->sta is NULL

When ieee80211_crypto_hw_decrypt is called, it verifies
rx->sta->cipher_scheme and it will cause Oops if rx->sta is NULL.

This path adds an addirional rx->sta == NULL verification in
ieee80211_crypto_hw_decrypt for this case.

Signed-off-by: Max Stepanov <Max.Stepanov@intel.com>
Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
2014-07-21 12:34:08 +02:00
..
aes_ccm.c mac80211: remove VLAIS usage from mac80211 2014-04-09 10:55:27 +02:00
aes_ccm.h
aes_cmac.c
aes_cmac.h
agg-rx.c
agg-tx.c mac80211: introduce refcount for queue_stop_reasons 2014-06-23 14:22:25 +02:00
cfg.c mac80211: use chanctx reservation for AP CSA 2014-06-25 18:06:20 +02:00
cfg.h mac80211: make cfg80211 ops and privid const 2014-02-04 21:48:21 +01:00
chan.c mac80211: suppress unused variable warning without lockdep 2014-07-18 09:47:26 +02:00
debug.h
debugfs_key.c
debugfs_key.h
debugfs_netdev.c mac80211: don't check netdev state for debugfs read/write 2014-05-28 16:22:48 +02:00
debugfs_netdev.h mac80211: fix some missing includes 2014-04-09 14:49:43 +02:00
debugfs_sta.c mac80211: Use ktime_get_ts() 2014-06-23 14:22:18 +02:00
debugfs_sta.h
debugfs.c mac80211: use RCU_INIT_POINTER 2014-04-09 10:55:30 +02:00
debugfs.h mac80211: fix some missing includes 2014-04-09 14:49:43 +02:00
driver-ops.h mac80211: split sched scan IEs 2014-06-25 09:10:43 +02:00
ethtool.c cfg80211: make ethtool the driver's responsibility 2014-06-23 11:05:33 +02:00
event.c
ht.c mac80211: set Rx highest rate in ht_cap 2014-07-21 12:14:04 +02:00
ibss.c mac80211: add QoS IE during TDLS setup start 2014-07-21 12:14:04 +02:00
ieee80211_i.h mac80211: remove redundant IEEE80211_STA_CSA_RECEIVED flag 2014-07-21 12:21:26 +02:00
iface.c mac80211: move TDLS data to mgd private part 2014-07-21 12:14:04 +02:00
Kconfig mac80211: remove PID rate control 2014-06-23 11:05:23 +02:00
key.c mac80211: remove BUG_ON usage 2014-04-29 17:59:27 +02:00
key.h
led.c
led.h
main.c mac80211: introduce refcount for queue_stop_reasons 2014-06-23 14:22:25 +02:00
Makefile cfg80211: make ethtool the driver's responsibility 2014-06-23 11:05:33 +02:00
mesh_hwmp.c mac80211: mesh: always use the latest target_sn 2014-04-22 17:24:50 +02:00
mesh_pathtbl.c mac80211: remove BUG_ON usage 2014-04-29 17:59:27 +02:00
mesh_plink.c mac80211: remove ignore_plink_timer flag 2014-06-23 11:05:27 +02:00
mesh_ps.c mac80211: clear sequence/fragment number in QoS-null frames 2014-03-05 15:49:54 +01:00
mesh_sync.c mac80211: remove BUG_ON usage 2014-04-29 17:59:27 +02:00
mesh.c mac80211: move csa counters from sdata to beacon/presp 2014-06-23 14:22:06 +02:00
mesh.h
michael.c
michael.h mac80211: fix some missing includes 2014-04-09 14:49:43 +02:00
mlme.c mac80211: remove redundant IEEE80211_STA_CSA_RECEIVED flag 2014-07-21 12:21:26 +02:00
offchannel.c mac80211: introduce refcount for queue_stop_reasons 2014-06-23 14:22:25 +02:00
pm.c mac80211: introduce refcount for queue_stop_reasons 2014-06-23 14:22:25 +02:00
rate.c mac80211: remove module handling from rate control ops 2014-02-04 21:48:26 +01:00
rate.h mac80211: remove PID rate control 2014-06-23 11:05:23 +02:00
rc80211_minstrel_debugfs.c
rc80211_minstrel_ht_debugfs.c
rc80211_minstrel_ht.c mac80211: export the expected throughput 2014-05-21 09:15:16 +02:00
rc80211_minstrel_ht.h
rc80211_minstrel.c mac80211: export the expected throughput 2014-05-21 09:15:16 +02:00
rc80211_minstrel.h mac80211: make rate control ops const 2014-02-04 21:48:21 +01:00
rx.c mac80211: ignore frames between TDLS peers when operating as AP 2014-07-21 12:14:05 +02:00
scan.c mac80211: split sched scan IEs 2014-06-25 09:10:43 +02:00
spectmgmt.c
sta_info.c mac80211: Use ktime_get_ts() 2014-06-23 14:22:18 +02:00
sta_info.h mac80211: track TDLS initiator internally 2014-07-21 12:14:03 +02:00
status.c net: Mac80211: Remove silly timespec dance 2014-06-23 14:22:21 +02:00
tdls.c mac80211: make sure TDLS teardown packet is sent on time 2014-07-21 12:14:05 +02:00
tkip.c
tkip.h
trace.c
trace.h mac80211: protect TDLS discovery session 2014-06-23 14:28:19 +02:00
tx.c mac80211: clarify TDLS Tx handling 2014-06-23 14:24:54 +02:00
util.c mac80211: add QoS IE during TDLS setup start 2014-07-21 12:14:04 +02:00
vht.c mac80211: disable VHT for TDLS 2014-07-21 12:14:04 +02:00
wep.c mac80211: remove weak WEP IV accounting 2014-06-23 11:05:31 +02:00
wep.h
wme.c mac80211: send control port protocol frames to the VO queue 2014-02-12 11:26:43 +01:00
wme.h
wpa.c mac80211: fix a potential NULL access in ieee80211_crypto_hw_decrypt 2014-07-21 12:34:08 +02:00
wpa.h