diff options
author | Johannes Berg <johannes.berg@intel.com> | 2011-09-27 20:56:12 +0200 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-09-30 15:57:03 -0400 |
commit | 3b9ce80ce96aeaeacab5e26442987df45584a049 (patch) | |
tree | 525b1ad3c3486d271877d830cc895172689cc592 /net/wireless | |
parent | ffca287118d8c9a0a62e16a5ed96ff004caadeda (diff) | |
download | op-kernel-dev-3b9ce80ce96aeaeacab5e26442987df45584a049.zip op-kernel-dev-3b9ce80ce96aeaeacab5e26442987df45584a049.tar.gz |
cfg80211/mac80211: apply station uAPSD parameters selectively
Currently, when hostapd sets the station as authorized
we also overwrite its uAPSD parameter. This obviously
leads to buggy behaviour (later, with my patches that
actually add uAPSD support). To fix this, only apply
those parameters if they were actually set in nl80211,
and to achieve that add a bitmap of things to apply.
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.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c index b850757..3799623 100644 --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c @@ -2643,6 +2643,8 @@ static int nl80211_new_station(struct sk_buff *skb, struct genl_info *info) if (params.max_sp & ~IEEE80211_WMM_IE_STA_QOSINFO_SP_MASK) return -EINVAL; + + params.sta_modify_mask |= STATION_PARAM_APPLY_UAPSD; } if (dev->ieee80211_ptr->iftype != NL80211_IFTYPE_AP && |