Ticket #698: agere-assoc-698.diff
| File agere-assoc-698.diff, 2.0 kB (added by kelmo, 6 years ago) |
|---|
-
net80211/ieee80211.h
old new 667 667 IEEE80211_ELEMID_ERP = 42, 668 668 IEEE80211_ELEMID_RSN = 48, 669 669 IEEE80211_ELEMID_XRATES = 50, 670 /* 128-129 proprietary elements used by Agere chipsets */ 671 IEEE80211_ELEMID_AGERE1 = 128, 672 IEEE80211_ELEMID_AGERE2 = 129, 670 673 IEEE80211_ELEMID_TPC = 150, 671 674 IEEE80211_ELEMID_CCKM = 156, 672 675 IEEE80211_ELEMID_VENDOR = 221, /* vendor private */ -
net80211/ieee80211_input.c
old new 2426 2426 scan.chan = scan.bchan; 2427 2427 2428 2428 while (frm < efrm) { 2429 /* Agere element in beacon */ 2430 if ((*frm == IEEE80211_ELEMID_AGERE1) || 2431 (*frm == IEEE80211_ELEMID_AGERE2)) { 2432 frm = efrm; 2433 continue; 2434 } 2435 2429 2436 IEEE80211_VERIFY_LENGTH(efrm - frm, frm[1]); 2430 2437 switch (*frm) { 2431 2438 case IEEE80211_ELEMID_SSID: … … 3203 3210 3204 3211 rates = xrates = wme = NULL; 3205 3212 while (frm < efrm) { 3213 /* 3214 * Do not discard frames containing proprietary Agere 3215 * elements 128 and 129, as the reported element length 3216 * is often wrong. Skip rest of the frame, since we can 3217 * not rely on the given element length making it impossible 3218 * to know where the next element starts. 3219 */ 3220 if ((*frm == IEEE80211_ELEMID_AGERE1) || 3221 (*frm == IEEE80211_ELEMID_AGERE2)) { 3222 frm = efrm; 3223 continue; 3224 } 3225 3206 3226 IEEE80211_VERIFY_LENGTH(efrm - frm, frm[1]); 3207 3227 switch (*frm) { 3208 3228 case IEEE80211_ELEMID_RATES: -
THANKS
old new 105 105 Tony Espy 106 106 Joerg Albert 107 107 Oliver Stampfli 108 Till Wollenberg 108 109 109 110 Apologies to anyone whose name was unintentionally left off. 110 111 Please let us know if you think your name should be mentioned here!
