]> git.hungrycats.org Git - linux/commitdiff
mac80211_hwsim: Add missing check for HWSIM_ATTR_SIGNAL
authorMartin Willi <martin@strongswan.org>
Fri, 13 May 2016 10:41:48 +0000 (12:41 +0200)
committerWilly Tarreau <w@1wt.eu>
Sat, 27 Aug 2016 09:40:21 +0000 (11:40 +0200)
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: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Willy Tarreau <w@1wt.eu>
drivers/net/wireless/mac80211_hwsim.c

index cb34c7895f2a299b8c6b8f6c094f79cd9ab88c85..735c266203870518163ed10d30d93c4eb4d8562f 100644 (file)
@@ -1931,6 +1931,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;