summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArunk Khandavalli <akhandav@codeaurora.org>2018-08-30 00:40:16 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-10-10 08:55:54 +0200
commit6f01b1a3c4ad4b9048d676b6cd2a8df9b6b49c0b (patch)
tree57d22b518790e550a0f2189012834066a55b69cd
parentaadc5d1ee02dccdf5ff4f0d73cacda4c8cc475b3 (diff)
downloadlinux-stable-6f01b1a3c4ad4b9048d676b6cd2a8df9b6b49c0b.tar.gz
linux-stable-6f01b1a3c4ad4b9048d676b6cd2a8df9b6b49c0b.tar.bz2
linux-stable-6f01b1a3c4ad4b9048d676b6cd2a8df9b6b49c0b.zip
cfg80211: nl80211_update_ft_ies() to validate NL80211_ATTR_IE
[ Upstream commit 4f0223bfe9c3e62d8f45a85f1ef1b18a8a263ef9 ] 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> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--net/wireless/nl80211.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
index ce0149a86c13..733ccf867972 100644
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
@@ -12099,6 +12099,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;