From 1c297462a3c3412eb78e111468a382f8f837c1e9 Mon Sep 17 00:00:00 2001 From: Johannes Berg Date: Wed, 7 Sep 2011 11:50:48 +0200 Subject: [PATCH] --- yaml --- r: 266031 b: refs/heads/master c: 4319e193271dc93241338eb0173fc26dc6c35465 h: refs/heads/master i: 266029: fa53077e9bbaefa32403821c1e02874880f70276 266027: 7b6e0f6ccf60c4043bb63855dcbeb13007a649e9 266023: 8f35222b0aed2a4192f52e035826d12bb2d90524 266015: 03d3b2a41526a5ba76316a78589cb9fa390fc418 v: v3 --- [refs] | 2 +- trunk/net/wireless/nl80211.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 1622c4be7150..5bccfa067a86 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ff620849110649b5f94989ddfd7a72b2bd43bd42 +refs/heads/master: 4319e193271dc93241338eb0173fc26dc6c35465 diff --git a/trunk/net/wireless/nl80211.c b/trunk/net/wireless/nl80211.c index f4cfd3abfbfd..11089541bb03 100644 --- a/trunk/net/wireless/nl80211.c +++ b/trunk/net/wireless/nl80211.c @@ -2627,10 +2627,15 @@ static int nl80211_new_station(struct sk_buff *skb, struct genl_info *info) if (tb[NL80211_STA_WME_UAPSD_QUEUES]) params.uapsd_queues = nla_get_u8(tb[NL80211_STA_WME_UAPSD_QUEUES]); + if (params.uapsd_queues & ~IEEE80211_WMM_IE_STA_QOSINFO_AC_MASK) + return -EINVAL; if (tb[NL80211_STA_WME_MAX_SP]) params.max_sp = nla_get_u8(tb[NL80211_STA_WME_MAX_SP]); + + if (params.max_sp & ~IEEE80211_WMM_IE_STA_QOSINFO_SP_MASK) + return -EINVAL; } if (dev->ieee80211_ptr->iftype != NL80211_IFTYPE_AP &&