diff mbox series

cfg80211: nl80211_update_ft_ies() to validate NL80211_ATTR_IE

Message ID 1535578816-23020-1-git-send-email-jouni@codeaurora.org (mailing list archive)
State Accepted
Delegated to: Johannes Berg
Headers show
Series cfg80211: nl80211_update_ft_ies() to validate NL80211_ATTR_IE | expand

Commit Message

Jouni Malinen Aug. 29, 2018, 9:40 p.m. UTC
From: Arunk Khandavalli <akhandav@codeaurora.org>

nl80211_update_ft_ies() tried to validate NL80211_ATTR_IE with
is_valid_ie_attr() before dereferencing it, but that helper function
returns true in case of NULL pointer (i.e., attribute not included).
This can result to dereferencing a NULL pointer. Fix that by explicitly
checking that NL80211_ATTR_IE is included.

Fixes: 355199e02b83 ("cfg80211: Extend support for IEEE 802.11r Fast BSS Transition")
Signed-off-by: Arunk Khandavalli <akhandav@codeaurora.org>
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
---
 net/wireless/nl80211.c | 1 +
 1 file changed, 1 insertion(+)
diff mbox series

Patch

diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
index 62e6679..65ec49d 100644
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
@@ -12206,6 +12206,7 @@  static int nl80211_update_ft_ies(struct sk_buff *skb, struct genl_info *info)
 		return -EOPNOTSUPP;
 
 	if (!info->attrs[NL80211_ATTR_MDID] ||
+	    !info->attrs[NL80211_ATTR_IE] ||
 	    !is_valid_ie_attr(info->attrs[NL80211_ATTR_IE]))
 		return -EINVAL;