Lines Matching defs:scan

493 	struct ieee80211_channel *rxchan, struct ieee80211_scanparams *scan)
503 scan->status = 0;
525 return (scan->status = IEEE80211_BPARSE_BADIELEN));
526 memset(scan, 0, sizeof(*scan));
527 scan->tstamp = frm; frm += 8;
528 scan->bintval = le16toh(*(uint16_t *)frm); frm += 2;
529 scan->capinfo = le16toh(*(uint16_t *)frm); frm += 2;
530 scan->bchan = ieee80211_chan2ieee(ic, rxchan);
531 scan->chan = scan->bchan;
532 scan->ies = frm;
533 scan->ies_len = efrm - frm;
537 return (scan->status = IEEE80211_BPARSE_BADIELEN));
540 scan->ssid = frm;
543 scan->rates = frm;
546 scan->country = frm;
549 scan->csa = frm;
552 scan->quiet = frm;
556 scan->fhdwell = le16dec(&frm[2]);
557 scan->chan = IEEE80211_FH_CHAN(frm[4], frm[5]);
558 scan->fhindex = frm[6];
567 scan->chan = frm[2];
571 scan->tim = frm;
572 scan->timoff = frm - mtod(m, uint8_t *);
582 scan->xrates = frm;
592 scan->erp = frm[2] | 0x100;
595 scan->htcap = frm;
598 scan->rsn = frm;
601 scan->htinfo = frm;
605 scan->meshid = frm;
608 scan->meshconf = frm;
616 scan->wpa = frm;
618 scan->wme = frm;
621 scan->ath = frm;
625 scan->tdma = frm;
633 if (scan->htcap == NULL)
634 scan->htcap = frm;
636 if (scan->htinfo == NULL)
637 scan->htcap = frm;
650 IEEE80211_VERIFY_ELEMENT(scan->rates, IEEE80211_RATE_MAXSIZE,
651 scan->status |= IEEE80211_BPARSE_RATES_INVALID);
652 if (scan->rates != NULL && scan->xrates != NULL) {
659 IEEE80211_VERIFY_ELEMENT(scan->xrates,
660 IEEE80211_RATE_MAXSIZE - scan->rates[1],
661 scan->status |= IEEE80211_BPARSE_XRATES_INVALID);
663 IEEE80211_VERIFY_ELEMENT(scan->ssid, IEEE80211_NWID_LEN,
664 scan->status |= IEEE80211_BPARSE_SSID_INVALID);
665 if (scan->chan != scan->bchan && ic->ic_phytype != IEEE80211_T_FH) {
679 scan->chan, scan->bchan);
681 scan->status |= IEEE80211_BPARSE_OFFCHAN;
683 if (!(IEEE80211_BINTVAL_MIN <= scan->bintval &&
684 scan->bintval <= IEEE80211_BINTVAL_MAX)) {
688 (int) scan->bintval);
690 scan->status |= IEEE80211_BPARSE_BINTVAL_INVALID;
692 if (scan->country != NULL) {
700 IEEE80211_VERIFY_LENGTH(scan->country[1], 3 * sizeof(uint8_t),
701 scan->country = NULL);
703 if (scan->csa != NULL) {
708 IEEE80211_VERIFY_LENGTH(scan->csa[1], 3 * sizeof(uint8_t),
709 scan->status |= IEEE80211_BPARSE_CSA_INVALID);
716 if (scan->htcap != NULL) {
717 IEEE80211_VERIFY_LENGTH(scan->htcap[1],
718 scan->htcap[0] == IEEE80211_ELEMID_VENDOR ?
721 scan->htcap = NULL);
723 if (scan->htinfo != NULL) {
724 IEEE80211_VERIFY_LENGTH(scan->htinfo[1],
725 scan->htinfo[0] == IEEE80211_ELEMID_VENDOR ?
728 scan->htinfo = NULL);
730 return scan->status;