aboutsummaryrefslogtreecommitdiffstats
path: root/net/wireless
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2011-11-03 14:50:13 +0100
committerJohn W. Linville <linville@tuxdriver.com>2011-11-07 13:19:14 -0500
commit133a3ff2c934223a8143bfa52401bba962a97165 (patch)
tree61618a358b6d895ed3c3e5764b7b1e5dc0f2c74a /net/wireless
parent6c7394197af90f6a332180e33f5d025d3037d883 (diff)
downloadkernel_samsung_smdk4412-133a3ff2c934223a8143bfa52401bba962a97165.zip
kernel_samsung_smdk4412-133a3ff2c934223a8143bfa52401bba962a97165.tar.gz
kernel_samsung_smdk4412-133a3ff2c934223a8143bfa52401bba962a97165.tar.bz2
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 b587857..b3a476f 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) {