Changeset 1409
- Timestamp:
- 01/23/06 11:16:49 (6 years ago)
- Files:
-
- trunk/net80211/ieee80211_input.c (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/net80211/ieee80211_input.c
r1357 r1409 2252 2252 2253 2253 while (frm < efrm) { 2254 IEEE80211_VERIFY_LENGTH(efrm - frm, frm[1]); 2254 2255 switch (*frm) { 2255 2256 case IEEE80211_ELEMID_SSID: … … 2323 2324 frm += frm[1] + 2; 2324 2325 } 2326 if(frm > efrm) 2327 return; 2325 2328 IEEE80211_VERIFY_ELEMENT(scan.rates, IEEE80211_RATE_MAXSIZE); 2326 2329 IEEE80211_VERIFY_ELEMENT(scan.ssid, IEEE80211_NWID_LEN); … … 2520 2523 while (frm < efrm) { 2521 2524 switch (*frm) { 2525 IEEE80211_VERIFY_LENGTH(efrm - frm, frm[1]); 2522 2526 case IEEE80211_ELEMID_SSID: 2523 2527 ssid = frm; … … 2537 2541 frm += frm[1] + 2; 2538 2542 } 2543 if(frm > efrm) 2544 return; 2539 2545 IEEE80211_VERIFY_ELEMENT(rates, IEEE80211_RATE_MAXSIZE); 2540 2546 IEEE80211_VERIFY_ELEMENT(ssid, IEEE80211_NWID_LEN); … … 2718 2724 ssid = rates = xrates = wpa = rsn = wme = ath = NULL; 2719 2725 while (frm < efrm) { 2726 IEEE80211_VERIFY_LENGTH(efrm - frm, frm[1]); 2720 2727 switch (*frm) { 2721 2728 case IEEE80211_ELEMID_SSID: … … 2759 2766 frm += frm[1] + 2; 2760 2767 } 2768 if(frm > efrm) 2769 return; 2761 2770 IEEE80211_VERIFY_ELEMENT(rates, IEEE80211_RATE_MAXSIZE); 2762 2771 IEEE80211_VERIFY_ELEMENT(ssid, IEEE80211_NWID_LEN); … … 2998 3007 while (frm < efrm) { 2999 3008 switch (*frm) { 3009 IEEE80211_VERIFY_LENGTH(efrm - frm, frm[1]); 3000 3010 case IEEE80211_ELEMID_RATES: 3001 3011 rates = frm; … … 3011 3021 frm += frm[1] + 2; 3012 3022 } 3013 3023 if(frm > efrm) 3024 return; 3014 3025 IEEE80211_VERIFY_ELEMENT(rates, IEEE80211_RATE_MAXSIZE); 3015 3026 rate = ieee80211_setup_rates(ni, rates, xrates,
