29#ifndef _NET80211_IEEE80211_SCAN_H_
30#define _NET80211_IEEE80211_SCAN_H_
74#define IEEE80211_SCAN_MAX IEEE80211_CHAN_MAX
82#define IEEE80211_SCAN_MAX_SSID 1
132#define IEEE80211_SCAN_NOPICK 0x0001
133#define IEEE80211_SCAN_ACTIVE 0x0002
134#define IEEE80211_SCAN_PICK1ST 0x0004
135#define IEEE80211_SCAN_BGSCAN 0x0008
136#define IEEE80211_SCAN_ONCE 0x0010
137#define IEEE80211_SCAN_NOBCAST 0x0020
138#define IEEE80211_SCAN_NOJOIN 0x0040
139#define IEEE80211_SCAN_GOTPICK 0x1000
157#define IEEE80211_SCAN_FLUSH 0x00010000
158#define IEEE80211_SCAN_NOSSID 0x80000000
168#define IEEE80211_SCAN_FOREVER 0x7fffffff
170 u_int duration, u_int mindwell, u_int maxdwell,
173 u_int duration, u_int mindwell, u_int maxdwell,
189 int subtype,
int rssi,
int noise);
317 int subtype,
int rssi,
int noise);
#define IEEE80211_RATE_MAXSIZE
#define IEEE80211_MESHID_LEN
#define IEEE80211_ADDR_LEN
#define IEEE80211_NWID_LEN
static const struct ieee80211_aclator mac
struct ieee80211_channel * ieee80211_scan_pickchannel(struct ieee80211com *, int)
void ieee80211_scanner_unregister_all(const struct ieee80211_scanner *)
void ieee80211_scan_vdetach(struct ieee80211vap *)
void ieee80211_scan_vattach(struct ieee80211vap *)
void ieee80211_scan_iter_func(void *, const struct ieee80211_scan_entry *)
const struct ieee80211_scanner * ieee80211_scanner_get(enum ieee80211_opmode)
void ieee80211_scan_copy_ssid(struct ieee80211vap *vap, struct ieee80211_scan_state *ss, int nssid, const struct ieee80211_scan_ssid ssids[])
@ IEEE80211_BPARSE_XRATES_INVALID
@ IEEE80211_BPARSE_CHAN_INVALID
@ IEEE80211_BPARSE_BINTVAL_INVALID
@ IEEE80211_BPARSE_OFFCHAN
@ IEEE80211_BPARSE_BADIELEN
@ IEEE80211_BPARSE_CSA_INVALID
@ IEEE80211_BPARSE_SSID_INVALID
@ IEEE80211_BPARSE_RATES_INVALID
void ieee80211_scan_detach(struct ieee80211com *)
void ieee80211_scan_assoc_success(struct ieee80211vap *, const uint8_t mac[IEEE80211_ADDR_LEN])
int ieee80211_check_scan(struct ieee80211vap *, int flags, u_int duration, u_int mindwell, u_int maxdwell, u_int nssid, const struct ieee80211_scan_ssid ssids[])
int ieee80211_bg_scan(struct ieee80211vap *, int)
void ieee80211_scan_assoc_fail(struct ieee80211vap *, const uint8_t mac[IEEE80211_ADDR_LEN], int reason)
#define IEEE80211_SCAN_MAX
void ieee80211_scan_flush(struct ieee80211vap *)
int ieee80211_check_scan_current(struct ieee80211vap *)
void ieee80211_scan_timeout(struct ieee80211com *)
void ieee80211_scanner_register(enum ieee80211_opmode, const struct ieee80211_scanner *)
MALLOC_DECLARE(M_80211_SCAN)
void ieee80211_cancel_anyscan(struct ieee80211vap *)
@ IEEE80211_SCAN_FAIL_STATUS
@ IEEE80211_SCAN_FAIL_TIMEOUT
void ieee80211_add_scan(struct ieee80211vap *, struct ieee80211_channel *, const struct ieee80211_scanparams *, const struct ieee80211_frame *, int subtype, int rssi, int noise)
void ieee80211_scanner_unregister(enum ieee80211_opmode, const struct ieee80211_scanner *)
void ieee80211_scan_iterate(struct ieee80211vap *, ieee80211_scan_iter_func, void *)
void ieee80211_scan_next(struct ieee80211vap *)
void ieee80211_scan_dump_probe_beacon(uint8_t subtype, int isnew, const uint8_t mac[IEEE80211_ADDR_LEN], const struct ieee80211_scanparams *sp, int rssi)
void ieee80211_scan_done(struct ieee80211vap *)
void ieee80211_scan_dump(struct ieee80211_scan_state *ss)
#define IEEE80211_SCAN_MAX_SSID
void ieee80211_probe_curchan(struct ieee80211vap *, int)
void ieee80211_scan_update_locked(struct ieee80211vap *vap, const struct ieee80211_scanner *scan)
void ieee80211_scan_attach(struct ieee80211com *)
int ieee80211_start_scan(struct ieee80211vap *, int flags, u_int duration, u_int mindwell, u_int maxdwell, u_int nssid, const struct ieee80211_scan_ssid ssids[])
void ieee80211_cancel_scan(struct ieee80211vap *)
void ieee80211_scan_dump_channels(const struct ieee80211_scan_state *)
uint8_t se_xrates[2+IEEE80211_RATE_MAXSIZE]
struct ieee80211_ies se_ies
uint8_t se_ssid[2+IEEE80211_NWID_LEN]
uint8_t se_bssid[IEEE80211_ADDR_LEN]
uint8_t se_macaddr[IEEE80211_ADDR_LEN]
union ieee80211_scan_entry::@29 se_tstamp
struct ieee80211_channel * se_chan
uint8_t se_rates[2+IEEE80211_RATE_MAXSIZE]
uint8_t se_meshid[2+IEEE80211_MESHID_LEN]
void(* sc_set_scan_duration)(struct ieee80211vap *, u_int)
void(* sc_cancel_anyscan)(struct ieee80211vap *)
int(* sc_start_scan)(const struct ieee80211_scanner *, struct ieee80211vap *, int, u_int, u_int, u_int, u_int, const struct ieee80211_scan_ssid ssids[])
void(* sc_add_scan)(struct ieee80211vap *, struct ieee80211_channel *, const struct ieee80211_scanparams *, const struct ieee80211_frame *, int, int, int)
void(* sc_vattach)(struct ieee80211vap *)
void(* sc_scan_done)(struct ieee80211vap *)
void(* sc_scan_next)(struct ieee80211vap *)
int(* sc_check_scan)(const struct ieee80211_scanner *, struct ieee80211vap *, int, u_int, u_int, u_int, u_int, const struct ieee80211_scan_ssid ssids[])
void(* sc_attach)(struct ieee80211com *)
void(* sc_detach)(struct ieee80211com *)
void(* sc_scan_probe_curchan)(struct ieee80211vap *, int)
int(* sc_bg_scan)(const struct ieee80211_scanner *, struct ieee80211vap *, int)
void(* sc_cancel_scan)(struct ieee80211vap *)
void(* sc_vdetach)(struct ieee80211vap *)
uint8_t ssid[IEEE80211_NWID_LEN]
unsigned long ss_maxdwell
const struct ieee80211_scanner * ss_ops
struct ieee80211com * ss_ic
struct ieee80211_channel * ss_chans[IEEE80211_SCAN_MAX]
struct ieee80211_scan_ssid ss_ssid[IEEE80211_SCAN_MAX_SSID]
struct ieee80211vap * ss_vap
unsigned long ss_mindwell
int(* scan_add)(struct ieee80211_scan_state *, struct ieee80211_channel *, const struct ieee80211_scanparams *, const struct ieee80211_frame *, int subtype, int rssi, int noise)
int(* scan_flush)(struct ieee80211_scan_state *)
int(* scan_detach)(struct ieee80211_scan_state *)
int(* scan_cancel)(struct ieee80211_scan_state *, struct ieee80211vap *)
int(* scan_start)(struct ieee80211_scan_state *, struct ieee80211vap *)
int(* scan_end)(struct ieee80211_scan_state *, struct ieee80211vap *)
void(* scan_spare1)(void)
void(* scan_spare2)(void)
void(* scan_assoc_success)(struct ieee80211_scan_state *, const uint8_t macaddr[IEEE80211_ADDR_LEN])
int(* scan_attach)(struct ieee80211_scan_state *)
void(* scan_assoc_fail)(struct ieee80211_scan_state *, const uint8_t macaddr[IEEE80211_ADDR_LEN], int reason)
void(* scan_spare4)(void)
int(* scan_restart)(struct ieee80211_scan_state *, struct ieee80211vap *)
void(* scan_age)(struct ieee80211_scan_state *)
void(* scan_iterate)(struct ieee80211_scan_state *, ieee80211_scan_iter_func *, void *)
void(* scan_spare0)(void)