[patch 07/58] mac80211: fix basic rate bitmap calculation

Greg KH
2009-05-06T21:58:10Z

[-- Attachment #1: mac80211-fix-basic-rate-bitmap-calculation.patch --]
[-- Type: text/plain, Size: 1081 bytes --]

2.6.29-stable review patch. If anyone has any objections, please let us know.

------------------

From: Johannes Berg <johannes@sipsolutions.net>

upstream commit: 7e0986c17f695952ce5d61ed793ce048ba90a661

"mac80211: fix basic rates setting from association response"
introduced a copy/paste error.

Unfortunately, this not just leads to wrong data being passed
to the driver but is remotely exploitable for some hardware or
driver combinations.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
---
net/mac80211/mlme.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -1342,7 +1342,7 @@ static void ieee80211_rx_mgmt_assoc_resp

for (i = 0; i < elems.ext_supp_rates_len; i++) {
int rate = (elems.ext_supp_rates[i] & 0x7f) * 5;
- bool is_basic = !!(elems.supp_rates[i] & 0x80);
+ bool is_basic = !!(elems.ext_supp_rates[i] & 0x80);

if (rate > 110)
have_higher_than_11mbit = true;