diff options
author | Simon Wunderlich <simon.wunderlich@s2003.tu-chemnitz.de> | 2013-07-11 14:29:49 -0400 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-07-16 02:58:13 -0400 |
commit | 93c75786e8d8e8e245a479209a84b19292d08e7e (patch) | |
tree | 11a57a2b41aa1d784f101547fd668e99ec308ddc /net/mac80211/ibss.c | |
parent | 2ec9c1f67ab1f58b5bf5ac19e4b61b9f75c83a04 (diff) |
mac80211: fix off-by-one regression in ibss beacon generation
There is an off-by-one error in the beacon generation for the ibss mode,
falsely a rate the extended supported rates which was already added to
supported rates, messing up the beacon. This was introduced by commit
"mac80211: select and adjust bitrates according to channel mode".
Signed-off-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/ibss.c')
-rw-r--r-- | net/mac80211/ibss.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/mac80211/ibss.c b/net/mac80211/ibss.c index 83197c3ae5f1..5e6836c3aa4c 100644 --- a/net/mac80211/ibss.c +++ b/net/mac80211/ibss.c | |||
@@ -168,8 +168,10 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata, | |||
168 | if (basic_rates & BIT(ri)) | 168 | if (basic_rates & BIT(ri)) |
169 | basic = 0x80; | 169 | basic = 0x80; |
170 | *pos++ = basic | (u8) rate; | 170 | *pos++ = basic | (u8) rate; |
171 | if (++rates_added == 8) | 171 | if (++rates_added == 8) { |
172 | ri++; /* continue at next rate for EXT_SUPP_RATES */ | ||
172 | break; | 173 | break; |
174 | } | ||
173 | } | 175 | } |
174 | 176 | ||
175 | if (sband->band == IEEE80211_BAND_2GHZ) { | 177 | if (sband->band == IEEE80211_BAND_2GHZ) { |