diff options
author | Bala Shanmugam <bkamatch@qca.qualcomm.com> | 2012-04-20 19:12:58 +0530 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-04-23 15:37:41 -0400 |
commit | 218d2e26dceb241e4b253c5c4702ee1b38b715cc (patch) | |
tree | 3ae9e3da50fc6ed24ab12c2c6ea7d1e2516bef08 /net/wireless/nl80211.c | |
parent | 0d8a0a17288e419c2e5e9ce18c8b66b390eb7e23 (diff) |
cfg80211: Validate legacy rateset.
Legacy rates are not validated while configuring
tx rateset using iw. So below cmd is accepted by nl80211.
sudo iw wlan2 set bitrates legacy-2.4 1 2 3
Validate legacy rates and return
error if any rate in the rateset is not valid.
Signed-off-by: Bala Shanmugam <bkamatch@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/wireless/nl80211.c')
-rw-r--r-- | net/wireless/nl80211.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c index bcf6f70e518..140c1d291d4 100644 --- a/net/wireless/nl80211.c +++ b/net/wireless/nl80211.c @@ -5577,6 +5577,9 @@ static int nl80211_set_tx_bitrate_mask(struct sk_buff *skb, sband, nla_data(tb[NL80211_TXRATE_LEGACY]), nla_len(tb[NL80211_TXRATE_LEGACY])); + if ((mask.control[band].legacy == 0) && + nla_len(tb[NL80211_TXRATE_LEGACY])) + return -EINVAL; } if (tb[NL80211_TXRATE_MCS]) { if (!ht_rateset_to_mask( |