MCPcopy Create free account
hub / github.com/F-Stack/f-stack / list_scan

Function list_scan

tools/ifconfig/ifieee80211.c:3719–3773  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3717}
3718
3719static void
3720list_scan(int s)
3721{
3722 uint8_t buf[24*1024];
3723 char ssid[IEEE80211_NWID_LEN+1];
3724 const uint8_t *cp;
3725 int len, idlen;
3726
3727 if (get80211len(s, IEEE80211_IOC_SCAN_RESULTS, buf, sizeof(buf), &len) < 0)
3728 errx(1, "unable to get scan results");
3729 if (len < sizeof(struct ieee80211req_scan_result))
3730 return;
3731
3732 getchaninfo(s);
3733
3734 printf("%-*.*s %-17.17s %4s %4s %-7s %3s %4s\n"
3735 , IEEE80211_NWID_LEN, IEEE80211_NWID_LEN, "SSID/MESH ID"
3736 , "BSSID"
3737 , "CHAN"
3738 , "RATE"
3739 , " S:N"
3740 , "INT"
3741 , "CAPS"
3742 );
3743 cp = buf;
3744 do {
3745 const struct ieee80211req_scan_result *sr;
3746 const uint8_t *vp, *idp;
3747
3748 sr = (const struct ieee80211req_scan_result *) cp;
3749 vp = cp + sr->isr_ie_off;
3750 if (sr->isr_meshid_len) {
3751 idp = vp + sr->isr_ssid_len;
3752 idlen = sr->isr_meshid_len;
3753 } else {
3754 idp = vp;
3755 idlen = sr->isr_ssid_len;
3756 }
3757 printf("%-*.*s %s %3d %3dM %4d:%-4d %4d %-4.4s"
3758 , IEEE80211_NWID_LEN
3759 , copy_essid(ssid, IEEE80211_NWID_LEN, idp, idlen)
3760 , ssid
3761 , ether_ntoa((const struct ether_addr *) sr->isr_bssid)
3762 , ieee80211_mhz2ieee(sr->isr_freq, sr->isr_flags)
3763 , getmaxrate(sr->isr_rates, sr->isr_nrates)
3764 , (sr->isr_rssi/2)+sr->isr_noise, sr->isr_noise
3765 , sr->isr_intval
3766 , getcaps(sr->isr_capinfo)
3767 );
3768 printies(vp + sr->isr_ssid_len + sr->isr_meshid_len,
3769 sr->isr_ie_len, 24);
3770 printf("\n");
3771 cp += sr->isr_len, len -= sr->isr_len;
3772 } while (len >= sizeof(struct ieee80211req_scan_result));
3773}
3774
3775static void
3776scan_and_wait(int s)

Callers 1

ifieee80211.cFile · 0.85

Calls 8

get80211lenFunction · 0.85
getchaninfoFunction · 0.85
copy_essidFunction · 0.85
getmaxrateFunction · 0.85
getcapsFunction · 0.85
printiesFunction · 0.85
ieee80211_mhz2ieeeFunction · 0.70
printfFunction · 0.50

Tested by

no test coverage detected