Lines Matching defs:vap

125 ieee80211_swscan_vattach(struct ieee80211vap *vap)
129 * TODO: all of the vap scan calls should be methods!
135 ieee80211_swscan_vdetach(struct ieee80211vap *vap)
137 struct ieee80211com *ic = vap->iv_ic;
142 if (ss != NULL && ss->ss_vap == vap &&
148 ieee80211_swscan_set_scan_duration(struct ieee80211vap *vap, u_int duration)
150 struct ieee80211com *ic = vap->iv_ic;
165 struct ieee80211vap *vap, int flags, u_int duration,
169 struct ieee80211com *ic = vap->iv_ic;
175 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
178 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
183 , ieee80211_phymode_name[vap->iv_des_mode]
192 ieee80211_scan_update_locked(vap, scan);
195 ieee80211_scan_copy_ssid(vap, ss, nssid, ssids);
199 vap->iv_stats.is_scan_active++;
201 vap->iv_stats.is_scan_passive++;
208 ieee80211_swscan_set_scan_duration(vap, duration);
214 ss->ss_ops->scan_start(ss, vap);
216 if (ieee80211_msg_scan(vap))
226 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
240 struct ieee80211vap *vap, int flags,
244 struct ieee80211com *ic = vap->iv_ic;
250 result = ieee80211_swscan_start_scan_locked(scan, vap, flags, duration,
267 struct ieee80211vap *vap, int flags,
271 struct ieee80211com *ic = vap->iv_ic;
278 /* XXX verify ss_ops matches vap->iv_opmode */
284 ieee80211_scan_copy_ssid(vap, ss, nssid, ssids);
289 ieee80211_time_before(ticks, ic->ic_lastscan + vap->iv_scanvalid)) {
298 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
301 vap->iv_scanvalid,
308 result = ss->ss_ops->scan_end(ss, vap);
312 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
315 ieee80211_notify_scan_done(vap);
320 result = ieee80211_swscan_start_scan_locked(scan, vap, flags, duration,
332 struct ieee80211vap *vap, int flags)
334 struct ieee80211com *ic = vap->iv_ic;
353 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
358 ieee80211_scan_update_locked(vap, scan);
360 ss->ss_vap = vap;
382 vap->iv_stats.is_scan_active++;
384 vap->iv_stats.is_scan_passive++;
392 ieee80211_notify_scan_done(vap);
393 ss->ss_ops->scan_restart(ss, vap);
395 ss->ss_ops->scan_start(ss, vap);
397 if (ieee80211_msg_scan(vap))
402 ieee80211_swscan_set_scan_duration(vap, duration);
413 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
429 cancel_scan(struct ieee80211vap *vap, int any, const char *func)
431 struct ieee80211com *ic = vap->iv_ic;
439 (any || ss->ss_vap == vap) &&
441 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
452 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
453 "%s: called; F_SCAN=%d, vap=%s, signal=%d\n",
456 (ss->ss_vap == vap ? "match" : "nomatch"),
463 * Cancel any scan currently going on for the specified vap.
466 ieee80211_swscan_cancel_scan(struct ieee80211vap *vap)
468 cancel_scan(vap, 0, __func__);
475 ieee80211_swscan_cancel_anyscan(struct ieee80211vap *vap)
479 if (vap->iv_flags_ext & IEEE80211_FEXT_SCAN_OFFLOAD)
482 cancel_scan(vap, 1, __func__);
491 ieee80211_swscan_scan_next(struct ieee80211vap *vap)
493 struct ieee80211_scan_state *ss = vap->iv_ic->ic_scan;
495 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: called\n", __func__);
507 ieee80211_swscan_scan_done(struct ieee80211vap *vap)
509 struct ieee80211com *ic = vap->iv_ic;
525 ieee80211_swscan_probe_curchan(struct ieee80211vap *vap, bool force __unused)
527 struct ieee80211com *ic = vap->iv_ic;
529 struct ifnet *ifp = vap->iv_ifp;
535 if (vap->iv_flags_ext & IEEE80211_FEXT_SCAN_OFFLOAD)
541 * XXX remove dependence on ic/vap->iv_bss
544 ieee80211_send_probereq(vap->iv_bss,
545 vap->iv_myaddr, ifp->if_broadcastaddr,
549 ieee80211_send_probereq(vap->iv_bss,
550 vap->iv_myaddr, ifp->if_broadcastaddr,
563 struct ieee80211vap *vap = ss->ss_vap;
566 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
572 ieee80211_probe_curchan(vap, false);
626 struct ieee80211vap *vap = ss->ss_vap;
630 if (vap == NULL || (ic->ic_flags & IEEE80211_F_SCAN) == 0 ||
638 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
650 if (((vap->iv_flags_ext & IEEE80211_FEXT_SCAN_OFFLOAD) == 0) &&
651 vap->iv_opmode == IEEE80211_M_STA &&
652 vap->iv_state == IEEE80211_S_RUN) {
653 if ((vap->iv_bss->ni_flags & IEEE80211_NODE_PWR_MGT) == 0) {
655 vap->iv_sta_ps(vap, 1);
657 mtx_sleep(vap, IEEE80211_LOCK_OBJ(ic), PCATCH,
789 struct ieee80211vap *vap = ss->ss_vap;
794 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: out\n", __func__);
812 if_printf(vap->iv_ifp,
847 !ss->ss_ops->scan_end(ss, vap) &&
850 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
857 vap->iv_stats.is_scan_active++;
859 vap->iv_stats.is_scan_passive++;
861 ieee80211_notify_scan_done(vap);
862 ss->ss_ops->scan_restart(ss, vap); /* XXX? */
872 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
883 if_printf(vap->iv_ifp,
898 struct ieee80211vap *vap = ss->ss_vap;
924 if ((vap->iv_flags_ext & IEEE80211_FEXT_SCAN_OFFLOAD) == 0)
925 vap->iv_sta_ps(vap, 0);
927 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
938 ieee80211_notify_scan_done(vap);
951 ieee80211_swscan_add_scan(struct ieee80211vap *vap,
957 struct ieee80211com *ic = vap->iv_ic;
971 if (ieee80211_msg_scan(vap) && (ic->ic_flags & IEEE80211_F_SCAN))
982 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,