Lines Matching refs:bss

472 					    struct wpa_bss_tmp_disallowed *bss)  in remove_bss_tmp_disallowed_entry()  argument
474 eloop_cancel_timeout(wpa_bss_tmp_disallow_timeout, wpa_s, bss); in remove_bss_tmp_disallowed_entry()
475 dl_list_del(&bss->list); in remove_bss_tmp_disallowed_entry()
476 os_free(bss); in remove_bss_tmp_disallowed_entry()
482 struct wpa_bss_tmp_disallowed *bss, *prev; in free_bss_tmp_disallowed() local
484 dl_list_for_each_safe(bss, prev, &wpa_s->bss_tmp_disallowed, in free_bss_tmp_disallowed()
486 remove_bss_tmp_disallowed_entry(wpa_s, bss); in free_bss_tmp_disallowed()
935 struct wpa_bss *bss; in wpas_verify_ssid_beacon() local
959 bss = wpa_bss_get_bssid_latest(wpa_s, wpa_s->bssid); in wpas_verify_ssid_beacon()
960 if (!bss) in wpas_verify_ssid_beacon()
963 (long long unsigned int) bss->tsf); in wpas_verify_ssid_beacon()
964 if (bss->tsf > wpa_s->first_beacon_tsf) { in wpas_verify_ssid_beacon()
971 ie = wpa_bss_get_ie_beacon(bss, WLAN_EID_SSID); in wpas_verify_ssid_beacon()
993 struct wpa_bss *bss; in wpas_verify_ssid_beacon_prot() local
1004 bss = wpa_bss_get_bssid_latest(wpa_s, wpa_s->bssid); in wpas_verify_ssid_beacon_prot()
1005 if (!bss) in wpas_verify_ssid_beacon_prot()
1008 (long long unsigned int) bss->tsf); in wpas_verify_ssid_beacon_prot()
1009 wpa_s->first_beacon_tsf = bss->tsf; in wpas_verify_ssid_beacon_prot()
1478 struct wpa_bss *bss, struct wpa_ssid *ssid, in wpa_supplicant_get_psk() argument
1489 if (bss && ssid->bssid_set && ssid->ssid_len == 0 && ssid->passphrase) { in wpa_supplicant_get_psk()
1490 if (pbkdf2_sha1(ssid->passphrase, bss->ssid, bss->ssid_len, in wpa_supplicant_get_psk()
1525 if (wpabuf_len(pw) >= 8 && wpabuf_len(pw) < 64 && bss) in wpa_supplicant_get_psk()
1527 if (pbkdf2_sha1(pw_str, bss->ssid, bss->ssid_len, in wpa_supplicant_get_psk()
1691 struct wpa_bss *bss, struct wpa_ssid *ssid, in wpa_supplicant_set_suites() argument
1701 if (bss) { in wpa_supplicant_set_suites()
1702 bss_wpa = wpa_bss_get_vendor_ie(bss, WPA_IE_VENDOR_TYPE); in wpa_supplicant_set_suites()
1703 bss_rsn = wpa_bss_get_ie(bss, WLAN_EID_RSN); in wpa_supplicant_set_suites()
1704 bss_rsnx = wpa_bss_get_ie(bss, WLAN_EID_RSNX); in wpa_supplicant_set_suites()
1705 bss_osen = wpa_bss_get_vendor_ie(bss, OSEN_IE_VENDOR_TYPE); in wpa_supplicant_set_suites()
1712 matching_ciphers(ssid, &ie, bss->freq) && in wpa_supplicant_set_suites()
1739 } else if (bss) { in wpa_supplicant_set_suites()
1746 MAC2STR(bss->bssid), in wpa_supplicant_set_suites()
1747 wpa_ssid_txt(bss->ssid, bss->ssid_len), in wpa_supplicant_set_suites()
1835 if (bss || !wpa_s->ap_ies_from_associnfo) { in wpa_supplicant_set_suites()
2025 (bss && is_6ghz_freq(bss->freq)))) { in wpa_supplicant_set_suites()
2042 if (bss && is_6ghz_freq(bss->freq) && in wpa_supplicant_set_suites()
2058 if (bss && is_6ghz_freq(bss->freq) && in wpa_supplicant_set_suites()
2115 if (!wmm && bss) in wpa_supplicant_set_suites()
2116 wmm = !!wpa_bss_get_vendor_ie(bss, WMM_IE_VENDOR_TYPE); in wpa_supplicant_set_suites()
2167 if (wpa_supplicant_get_psk(wpa_s, bss, ssid, in wpa_supplicant_set_suites()
2218 struct wpa_bss *bss) in wpas_ext_capab_byte() argument
2274 if (bss && !wpa_bss_ext_capab(bss, WLAN_EXT_CAPAB_SCS)) { in wpas_ext_capab_byte()
2305 if (bss && !wpa_bss_ext_capab(bss, WLAN_EXT_CAPAB_MSCS)) { in wpas_ext_capab_byte()
2321 size_t buflen, struct wpa_bss *bss) in wpas_build_ext_capab() argument
2337 wpas_ext_capab_byte(wpa_s, pos, i, bss); in wpas_build_ext_capab()
2359 struct wpa_bss *bss; in wpas_valid_bss() local
2361 dl_list_for_each(bss, &wpa_s->bss, struct wpa_bss, list) { in wpas_valid_bss()
2362 if (bss == test_bss) in wpas_valid_bss()
2590 struct wpa_bss *bss, struct wpa_ssid *ssid) in wpa_supplicant_associate() argument
2629 if (wpa_s->current_bss && wpa_s->current_bss == bss) { in wpa_supplicant_associate()
2635 } else if (wpa_s->current_bss && wpa_s->current_bss != bss) { in wpa_supplicant_associate()
2688 wpa_s->current_bss = bss; in wpa_supplicant_associate()
2703 if (bss) in wpa_supplicant_associate()
2704 ssid->frequency = bss->freq; in wpa_supplicant_associate()
2710 wpa_s->current_bss = bss; in wpa_supplicant_associate()
2728 if (wpas_dpp_check_connect(wpa_s, ssid, bss) != 0) in wpa_supplicant_associate()
2733 if (bss) in wpa_supplicant_associate()
2734 wpa_tdls_ap_ies(wpa_s->wpa, wpa_bss_ie_ptr(bss), bss->ie_len); in wpa_supplicant_associate()
2738 wpas_mbo_check_pmf(wpa_s, bss, ssid); in wpa_supplicant_associate()
2743 sme_authenticate(wpa_s, bss, ssid); in wpa_supplicant_associate()
2770 cwork->bss = bss; in wpa_supplicant_associate()
2773 if (radio_add_work(wpa_s, bss ? bss->freq : 0, "connect", 1, in wpa_supplicant_associate()
2780 static int bss_is_ibss(struct wpa_bss *bss) in bss_is_ibss() argument
2782 return (bss->caps & (IEEE80211_CAP_ESS | IEEE80211_CAP_IBSS)) == in bss_is_ibss()
2835 struct wpa_bss *bss = wpa_s->last_scan_res[j]; in ibss_find_existing_bss() local
2837 if (!bss_is_ibss(bss)) in ibss_find_existing_bss()
2840 if (ssid->ssid_len == bss->ssid_len && in ibss_find_existing_bss()
2841 os_memcmp(ssid->ssid, bss->ssid, bss->ssid_len) == 0) in ibss_find_existing_bss()
2842 return bss; in ibss_find_existing_bss()
3204 struct wpa_bss *bss = ibss_find_existing_bss(wpa_s, ssid); in ibss_mesh_setup_freq() local
3206 if (bss) { in ibss_mesh_setup_freq()
3209 bss->freq); in ibss_mesh_setup_freq()
3210 freq->freq = bss->freq; in ibss_mesh_setup_freq()
3345 bool wpa_is_non_eht_scs_traffic_desc_supported(struct wpa_bss *bss) in wpa_is_non_eht_scs_traffic_desc_supported() argument
3349 if (!bss) in wpa_is_non_eht_scs_traffic_desc_supported()
3353 wfa_capa = wpa_bss_get_vendor_ie(bss, WFA_CAPA_IE_VENDOR_TYPE); in wpa_is_non_eht_scs_traffic_desc_supported()
3356 bss, WFA_CAPA_IE_VENDOR_TYPE); in wpa_is_non_eht_scs_traffic_desc_supported()
3369 struct wpa_bss *bss, in wpas_populate_wfa_capa() argument
3383 if (wpa_is_non_eht_scs_traffic_desc_supported(bss)) in wpas_populate_wfa_capa()
3423 struct wpa_bss *bss, struct wpa_ssid *ssid, in wpas_populate_assoc_ies() argument
3458 if (bss && (wpa_bss_get_vendor_ie(bss, WPA_IE_VENDOR_TYPE) || in wpas_populate_assoc_ies()
3459 wpa_bss_get_ie(bss, WLAN_EID_RSN)) && in wpas_populate_assoc_ies()
3463 const u8 *addr = bss->bssid; in wpas_populate_assoc_ies()
3467 !is_zero_ether_addr(bss->mld_addr)) in wpas_populate_assoc_ies()
3468 addr = bss->mld_addr; in wpas_populate_assoc_ies()
3480 cache_id = wpa_bss_get_fils_cache_id(bss); in wpas_populate_assoc_ies()
3491 if (wpa_supplicant_set_suites(wpa_s, bss, ssid, in wpas_populate_assoc_ies()
3499 } else if (bss && wpa_bss_get_vendor_ie(bss, OSEN_IE_VENDOR_TYPE) && in wpas_populate_assoc_ies()
3503 if (wpa_supplicant_set_suites(wpa_s, bss, ssid, in wpas_populate_assoc_ies()
3511 } else if ((ssid->key_mgmt & WPA_KEY_MGMT_IEEE8021X_NO_WPA) && bss && in wpas_populate_assoc_ies()
3542 if (!bss || (bss->caps & IEEE80211_CAP_PRIVACY)) in wpas_populate_assoc_ies()
3621 res = wpas_p2p_assoc_req_ie(wpa_s, bss, pos, len, in wpas_populate_assoc_ies()
3628 if (bss) { in wpas_populate_assoc_ies()
3630 p2p = wpa_bss_get_vendor_ie_multi(bss, P2P_IE_VENDOR_TYPE); in wpas_populate_assoc_ies()
3646 if (bss) { in wpas_populate_assoc_ies()
3647 wpa_ie_len += wpas_supp_op_class_ie(wpa_s, ssid, bss, in wpas_populate_assoc_ies()
3667 if (!bss || wpa_bss_get_ie(bss, WLAN_EID_EXT_CAPAB)) { in wpas_populate_assoc_ies()
3671 sizeof(ext_capab), bss); in wpas_populate_assoc_ies()
3696 if (is_hs20_network(wpa_s, ssid, bss)) { in wpas_populate_assoc_ies()
3705 get_hs20_version(bss)); in wpas_populate_assoc_ies()
3745 mbo_ie = bss ? wpa_bss_get_vendor_ie(bss, MBO_IE_VENDOR_TYPE) : NULL; in wpas_populate_assoc_ies()
3842 if (bss && wpa_key_mgmt_ft(wpa_sm_get_key_mgmt(wpa_s->wpa))) { in wpas_populate_assoc_ies()
3843 const u8 *mdie = wpa_bss_get_ie(bss, WLAN_EID_MOBILITY_DOMAIN); in wpas_populate_assoc_ies()
3892 if (wpa_bss_ext_capab(bss, WLAN_EXT_CAPAB_MSCS) && in wpas_populate_assoc_ies()
3924 wpa_ie_len = wpas_populate_wfa_capa(wpa_s, bss, wpa_ie, wpa_ie_len, in wpas_populate_assoc_ies()
4142 struct wpa_bss *bss = cwork->bss; in wpas_start_assoc_cb() local
4185 if (cwork->bss_removed || !wpas_valid_bss_ssid(wpa_s, bss, ssid) || in wpas_start_assoc_cb()
4215 wpa_ie = wpas_populate_assoc_ies(wpa_s, bss, ssid, &params, NULL); in wpas_start_assoc_cb()
4221 if (bss && in wpas_start_assoc_cb()
4227 " (SSID='%s' freq=%d MHz)", MAC2STR(bss->bssid), in wpas_start_assoc_cb()
4228 wpa_ssid_txt(bss->ssid, bss->ssid_len), bss->freq); in wpas_start_assoc_cb()
4231 os_memcpy(wpa_s->pending_bssid, bss->bssid, ETH_ALEN); in wpas_start_assoc_cb()
4235 ie = wpa_bss_get_ie(bss, WLAN_EID_MOBILITY_DOMAIN); in wpas_start_assoc_cb()
4260 if (bss) in wpas_start_assoc_cb()
4261 os_memcpy(wpa_s->pending_bssid, bss->bssid, ETH_ALEN); in wpas_start_assoc_cb()
4270 wpa_clear_keys(wpa_s, bss ? bss->bssid : NULL); in wpas_start_assoc_cb()
4316 if (bss) { in wpas_start_assoc_cb()
4317 params.ssid = bss->ssid; in wpas_start_assoc_cb()
4318 params.ssid_len = bss->ssid_len; in wpas_start_assoc_cb()
4324 MAC2STR(bss->bssid), bss->freq, in wpas_start_assoc_cb()
4327 params.bssid = bss->bssid; in wpas_start_assoc_cb()
4328 params.freq.freq = bss->freq; in wpas_start_assoc_cb()
4330 params.bssid_hint = bss->bssid; in wpas_start_assoc_cb()
4331 params.freq_hint = bss->freq; in wpas_start_assoc_cb()
4332 params.pbss = bss_is_pbss(bss); in wpas_start_assoc_cb()
4361 if (bss && ssid->enable_edmg) in wpas_start_assoc_cb()
4362 edmg_ie_oper = wpa_bss_get_ie_ext(bss, in wpas_start_assoc_cb()
4385 hw_mode = ieee80211_freq_to_chan(bss->freq, in wpas_start_assoc_cb()
4454 if (wpa_supplicant_get_psk(wpa_s, bss, ssid, psk) == 0) in wpas_start_assoc_cb()
4481 wpa_supplicant_get_psk(wpa_s, bss, ssid, psk) == 0) in wpas_start_assoc_cb()
4499 if (params.mgmt_frame_protection != NO_MGMT_FRAME_PROTECTION && bss) { in wpas_start_assoc_cb()
4500 const u8 *rsn = wpa_bss_get_ie(bss, WLAN_EID_RSN); in wpas_start_assoc_cb()
4651 wpa_s->current_bss = bss; in wpas_start_assoc_cb()
4658 if (bss) in wpas_start_assoc_cb()
4659 wpa_sm_set_ssid(wpa_s->wpa, bss->ssid, bss->ssid_len); in wpas_start_assoc_cb()
5403 struct wpa_bss *bss; in owe_trans_ssid_match() local
5408 bss = wpa_bss_get_bssid_latest(wpa_s, bssid); in owe_trans_ssid_match()
5409 if (!bss) in owe_trans_ssid_match()
5412 owe = wpa_bss_get_vendor_ie(bss, OWE_IE_VENDOR_TYPE); in owe_trans_ssid_match()
8334 struct wpa_bss *bss, *cbss; in get_bss_freqs_in_ess() local
8345 dl_list_for_each(bss, &wpa_s->bss, struct wpa_bss, list) { in get_bss_freqs_in_ess()
8346 if (bss == cbss) in get_bss_freqs_in_ess()
8348 if (bss->ssid_len == cbss->ssid_len && in get_bss_freqs_in_ess()
8349 os_memcmp(bss->ssid, cbss->ssid, bss->ssid_len) == 0 && in get_bss_freqs_in_ess()
8350 !wpa_bssid_ignore_is_listed(wpa_s, bss->bssid)) { in get_bss_freqs_in_ess()
8351 add_freq(freqs, &num_freqs, bss->freq); in get_bss_freqs_in_ess()
9213 struct wpa_bss_tmp_disallowed *bss; in wpas_get_disallowed_bss() local
9215 dl_list_for_each(bss, &wpa_s->bss_tmp_disallowed, in wpas_get_disallowed_bss()
9217 if (ether_addr_equal(bssid, bss->bssid)) in wpas_get_disallowed_bss()
9218 return bss; in wpas_get_disallowed_bss()
9250 struct wpa_bss_tmp_disallowed *tmp, *bss = timeout_ctx; in wpa_bss_tmp_disallow_timeout() local
9255 if (bss == tmp) { in wpa_bss_tmp_disallow_timeout()
9267 struct wpa_bss_tmp_disallowed *bss; in wpa_bss_tmp_disallow() local
9269 bss = wpas_get_disallowed_bss(wpa_s, bssid); in wpa_bss_tmp_disallow()
9270 if (bss) { in wpa_bss_tmp_disallow()
9271 eloop_cancel_timeout(wpa_bss_tmp_disallow_timeout, wpa_s, bss); in wpa_bss_tmp_disallow()
9275 bss = os_malloc(sizeof(*bss)); in wpa_bss_tmp_disallow()
9276 if (!bss) { in wpa_bss_tmp_disallow()
9282 os_memcpy(bss->bssid, bssid, ETH_ALEN); in wpa_bss_tmp_disallow()
9283 dl_list_add(&wpa_s->bss_tmp_disallowed, &bss->list); in wpa_bss_tmp_disallow()
9287 bss->rssi_threshold = rssi_threshold; in wpa_bss_tmp_disallow()
9289 wpa_s, bss); in wpa_bss_tmp_disallow()
9294 struct wpa_bss *bss) in wpa_is_bss_tmp_disallowed() argument
9300 if (ether_addr_equal(bss->bssid, tmp->bssid)) { in wpa_is_bss_tmp_disallowed()
9309 bss->level > disallowed->rssi_threshold) { in wpa_is_bss_tmp_disallowed()