From: Johannes Berg Date: Fri, 24 Apr 2009 16:05:16 +0000 (+0000) Subject: mac80211: fix basic rate bitmap calculation X-Git-Tag: v2.6.29.3~52 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=64e1b00c974ddeae6a60ebb02e1c487371905cea;p=thirdparty%2Fkernel%2Fstable.git mac80211: fix basic rate bitmap calculation 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 Signed-off-by: John W. Linville Signed-off-by: Chris Wright --- diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 2b890af01ba47..4a78c174e0d6f 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -1342,7 +1342,7 @@ static void ieee80211_rx_mgmt_assoc_resp(struct ieee80211_sub_if_data *sdata, 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;