Lines Matching refs:vap

126 ieee80211_swscan_vattach(struct ieee80211vap *vap)
130 * TODO: all of the vap scan calls should be methods!
136 ieee80211_swscan_vdetach(struct ieee80211vap *vap)
138 struct ieee80211com *ic = vap->iv_ic;
143 if (ss != NULL && ss->ss_vap == vap &&
149 ieee80211_swscan_set_scan_duration(struct ieee80211vap *vap, u_int duration)
151 struct ieee80211com *ic = vap->iv_ic;
166 struct ieee80211vap *vap, int flags, u_int duration,
170 struct ieee80211com *ic = vap->iv_ic;
176 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
179 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
184 , ieee80211_phymode_name[vap->iv_des_mode]
193 ieee80211_scan_update_locked(vap, scan);
196 ieee80211_scan_copy_ssid(vap, ss, nssid, ssids);
201 vap->iv_stats.is_scan_active++;
203 vap->iv_stats.is_scan_passive++;
210 ieee80211_swscan_set_scan_duration(vap, duration);
216 ss->ss_ops->scan_start(ss, vap);
218 if (ieee80211_msg_scan(vap))
228 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
242 struct ieee80211vap *vap, int flags,
246 struct ieee80211com *ic = vap->iv_ic;
252 result = ieee80211_swscan_start_scan_locked(scan, vap, flags, duration,
269 struct ieee80211vap *vap, int flags,
273 struct ieee80211com *ic = vap->iv_ic;
280 /* XXX verify ss_ops matches vap->iv_opmode */
286 ieee80211_scan_copy_ssid(vap, ss, nssid, ssids);
291 ieee80211_time_before(ticks, ic->ic_lastscan + vap->iv_scanvalid)) {
300 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
303 vap->iv_scanvalid,
310 result = ss->ss_ops->scan_end(ss, vap);
314 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
317 ieee80211_notify_scan_done(vap);
322 result = ieee80211_swscan_start_scan_locked(scan, vap, flags, duration,
334 struct ieee80211vap *vap, int flags)
336 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 ss->ss_ops->scan_restart(ss, vap);
394 ss->ss_ops->scan_start(ss, vap);
396 if (ieee80211_msg_scan(vap))
401 ieee80211_swscan_set_scan_duration(vap, duration);
411 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
428 cancel_scan(struct ieee80211vap *vap, int any, const char *func)
430 struct ieee80211com *ic = vap->iv_ic;
438 (any || ss->ss_vap == vap) &&
440 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
451 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
452 "%s: called; F_SCAN=%d, vap=%s, signal=%d\n",
455 (ss->ss_vap == vap ? "match" : "nomatch"),
462 * Cancel any scan currently going on for the specified vap.
465 ieee80211_swscan_cancel_scan(struct ieee80211vap *vap)
467 cancel_scan(vap, 0, __func__);
474 ieee80211_swscan_cancel_anyscan(struct ieee80211vap *vap)
478 if (vap->iv_flags_ext & IEEE80211_FEXT_SCAN_OFFLOAD)
481 cancel_scan(vap, 1, __func__);
490 ieee80211_swscan_scan_next(struct ieee80211vap *vap)
492 struct ieee80211_scan_state *ss = vap->iv_ic->ic_scan;
494 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: called\n", __func__);
506 ieee80211_swscan_scan_done(struct ieee80211vap *vap)
508 struct ieee80211com *ic = vap->iv_ic;
524 ieee80211_swscan_probe_curchan(struct ieee80211vap *vap, int force)
526 struct ieee80211com *ic = vap->iv_ic;
528 struct ifnet *ifp = vap->iv_ifp;
534 if (vap->iv_flags_ext & IEEE80211_FEXT_SCAN_OFFLOAD)
540 * XXX remove dependence on ic/vap->iv_bss
543 ieee80211_send_probereq(vap->iv_bss,
544 vap->iv_myaddr, ifp->if_broadcastaddr,
548 ieee80211_send_probereq(vap->iv_bss,
549 vap->iv_myaddr, ifp->if_broadcastaddr,
562 struct ieee80211vap *vap = ss->ss_vap;
565 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
571 ieee80211_probe_curchan(vap, 0);
625 struct ieee80211vap *vap = ss->ss_vap;
629 if (vap == NULL || (ic->ic_flags & IEEE80211_F_SCAN) == 0 ||
637 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
649 if (((vap->iv_flags_ext & IEEE80211_FEXT_SCAN_OFFLOAD) == 0) &&
650 vap->iv_opmode == IEEE80211_M_STA &&
651 vap->iv_state == IEEE80211_S_RUN) {
652 if ((vap->iv_bss->ni_flags & IEEE80211_NODE_PWR_MGT) == 0) {
654 vap->iv_sta_ps(vap, 1);
656 mtx_sleep(vap, IEEE80211_LOCK_OBJ(ic), PCATCH,
788 struct ieee80211vap *vap = ss->ss_vap;
793 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN, "%s: out\n", __func__);
811 if_printf(vap->iv_ifp,
846 !ss->ss_ops->scan_end(ss, vap) &&
849 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
856 vap->iv_stats.is_scan_active++;
858 vap->iv_stats.is_scan_passive++;
860 ss->ss_ops->scan_restart(ss, vap); /* XXX? */
870 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
881 if_printf(vap->iv_ifp,
896 struct ieee80211vap *vap = ss->ss_vap;
922 if ((vap->iv_flags_ext & IEEE80211_FEXT_SCAN_OFFLOAD) == 0)
923 vap->iv_sta_ps(vap, 0);
925 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,
936 ieee80211_notify_scan_done(vap);
949 ieee80211_swscan_add_scan(struct ieee80211vap *vap,
955 struct ieee80211com *ic = vap->iv_ic;
969 if (ieee80211_msg_scan(vap) && (ic->ic_flags & IEEE80211_F_SCAN))
980 IEEE80211_DPRINTF(vap, IEEE80211_MSG_SCAN,