summaryrefslogtreecommitdiffstats
path: root/net/wireless
diff options
context:
space:
mode:
authorJohannes Berg2011-11-03 14:50:13 +0100
committerJohn W. Linville2011-11-07 19:19:14 +0100
commit133a3ff2c934223a8143bfa52401bba962a97165 (patch)
tree61618a358b6d895ed3c3e5764b7b1e5dc0f2c74a /net/wireless
parentnl80211: fix HT capability attribute validation (diff)
downloadkernel-qcow2-linux-133a3ff2c934223a8143bfa52401bba962a97165.tar.gz
kernel-qcow2-linux-133a3ff2c934223a8143bfa52401bba962a97165.tar.xz
kernel-qcow2-linux-133a3ff2c934223a8143bfa52401bba962a97165.zip
cfg80211: allow setting TXQ parameters only in AP mode
In other modes the parameters should not be set. Right now, mac80211 will set them, even if the user asked for setting them on VLANs which the driver doesn't know about, causing all kinds of trouble. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/wireless')
-rw-r--r--net/wireless/nl80211.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
index b587857a9d7d..b3a476fe8272 100644
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
@@ -1252,6 +1252,12 @@ static int nl80211_set_wiphy(struct sk_buff *skb, struct genl_info *info)
goto bad_res;
}
+ if (netdev->ieee80211_ptr->iftype != NL80211_IFTYPE_AP &&
+ netdev->ieee80211_ptr->iftype != NL80211_IFTYPE_P2P_GO) {
+ result = -EINVAL;
+ goto bad_res;
+ }
+
nla_for_each_nested(nl_txq_params,
info->attrs[NL80211_ATTR_WIPHY_TXQ_PARAMS],
rem_txq_params) {