| 3603 | } |
| 3604 | |
| 3605 | static void |
| 3606 | printies(const u_int8_t *vp, int ielen, int maxcols) |
| 3607 | { |
| 3608 | while (ielen > 0) { |
| 3609 | switch (vp[0]) { |
| 3610 | case IEEE80211_ELEMID_SSID: |
| 3611 | if (verbose) |
| 3612 | printssid(" SSID", vp, 2+vp[1], maxcols); |
| 3613 | break; |
| 3614 | case IEEE80211_ELEMID_RATES: |
| 3615 | case IEEE80211_ELEMID_XRATES: |
| 3616 | if (verbose) |
| 3617 | printrates(vp[0] == IEEE80211_ELEMID_RATES ? |
| 3618 | " RATES" : " XRATES", vp, 2+vp[1], maxcols); |
| 3619 | break; |
| 3620 | case IEEE80211_ELEMID_DSPARMS: |
| 3621 | if (verbose) |
| 3622 | printf(" DSPARMS<%u>", vp[2]); |
| 3623 | break; |
| 3624 | case IEEE80211_ELEMID_COUNTRY: |
| 3625 | if (verbose) |
| 3626 | printcountry(" COUNTRY", vp, 2+vp[1], maxcols); |
| 3627 | break; |
| 3628 | case IEEE80211_ELEMID_ERP: |
| 3629 | if (verbose) |
| 3630 | printf(" ERP<0x%x>", vp[2]); |
| 3631 | break; |
| 3632 | case IEEE80211_ELEMID_VENDOR: |
| 3633 | if (iswpaoui(vp)) |
| 3634 | printwpaie(" WPA", vp, 2+vp[1], maxcols); |
| 3635 | else if (iswmeinfo(vp)) |
| 3636 | printwmeinfo(" WME", vp, 2+vp[1], maxcols); |
| 3637 | else if (iswmeparam(vp)) |
| 3638 | printwmeparam(" WME", vp, 2+vp[1], maxcols); |
| 3639 | else if (isatherosoui(vp)) |
| 3640 | printathie(" ATH", vp, 2+vp[1], maxcols); |
| 3641 | else if (iswpsoui(vp)) |
| 3642 | printwpsie(" WPS", vp, 2+vp[1], maxcols); |
| 3643 | else if (istdmaoui(vp)) |
| 3644 | printtdmaie(" TDMA", vp, 2+vp[1], maxcols); |
| 3645 | else if (verbose) |
| 3646 | printie(" VEN", vp, 2+vp[1], maxcols); |
| 3647 | break; |
| 3648 | case IEEE80211_ELEMID_RSN: |
| 3649 | printrsnie(" RSN", vp, 2+vp[1], maxcols); |
| 3650 | break; |
| 3651 | case IEEE80211_ELEMID_HTCAP: |
| 3652 | printhtcap(" HTCAP", vp, 2+vp[1], maxcols); |
| 3653 | break; |
| 3654 | case IEEE80211_ELEMID_HTINFO: |
| 3655 | if (verbose) |
| 3656 | printhtinfo(" HTINFO", vp, 2+vp[1], maxcols); |
| 3657 | break; |
| 3658 | case IEEE80211_ELEMID_MESHID: |
| 3659 | if (verbose) |
| 3660 | printssid(" MESHID", vp, 2+vp[1], maxcols); |
| 3661 | break; |
| 3662 | case IEEE80211_ELEMID_MESHCONF: |
no test coverage detected