summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2016-05-13 12:41:48 +0200
committerJiri Slaby <jslaby@suse.cz>2016-07-21 08:35:57 +0200
commit5113a51848cbc20512b6b849823d353c8b1a12b1 (patch)
tree470ebbcd1b92fe4397787eef0ff9811ffd57d708
parent8e7626a6930345630a0511ec7aaec01aec378d8a (diff)
mac80211_hwsim: Add missing check for HWSIM_ATTR_SIGNAL
commit 62397da50bb20a6b812c949ef465d7e69fe54bb6 upstream. A wmediumd that does not send this attribute causes a NULL pointer dereference, as the attribute is accessed even if it does not exist. The attribute was required but never checked ever since userspace frame forwarding has been introduced. The issue gets more problematic once we allow wmediumd registration from user namespaces. Fixes: 7882513bacb1 ("mac80211_hwsim driver support userspace frame tx/rx") Signed-off-by: Martin Willi <martin@strongswan.org> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
-rw-r--r--drivers/net/wireless/mac80211_hwsim.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c
index 38b8b7139ba3..38fa31d56ef9 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -1932,6 +1932,7 @@ static int hwsim_tx_info_frame_received_nl(struct sk_buff *skb_2,
if (!info->attrs[HWSIM_ATTR_ADDR_TRANSMITTER] ||
!info->attrs[HWSIM_ATTR_FLAGS] ||
!info->attrs[HWSIM_ATTR_COOKIE] ||
+ !info->attrs[HWSIM_ATTR_SIGNAL] ||
!info->attrs[HWSIM_ATTR_TX_INFO])
goto out;