[PATCH v3 2/5] SME: Add support for handling authentication with MLD

Wen Gong quic_wgong at quicinc.com
Tue Mar 28 03:08:19 PDT 2023


On 12/6/2022 5:46 PM, Andrei Otcheretianski wrote:
...
> diff --git a/wpa_supplicant/sme.c b/wpa_supplicant/sme.c
> index f6ace37606..a44044079e 100644
> --- a/wpa_supplicant/sme.c
> +++ b/wpa_supplicant/sme.c
> @@ -367,6 +367,194 @@ static void sme_auth_handle_rrm(struct wpa_supplicant *wpa_s,
>   }
>   
>   
> +static bool wpas_ml_element(struct wpa_supplicant *wpa_s, struct wpa_bss *bss)
> ...
> +			if (neigh_bss) {
> +				if (wpa_scan_res_match(wpa_s, 0, neigh_bss,
> +						       wpa_s->current_ssid,
> +						       1, 0)) {
If wpa_scan_res_match() fail, then the neigh_bss will be dropped, and 
the neigh link will NOT connect, then N link reduced to N-1 link.

for example, the bssid failed connect for last time, it will be ignored 
for 10 seconds:
Feb 13 17:42:20 cst-Celadon-RN wpa_supplicant[967]: Added BSSID 
00:03:7f:01:59:50 into ignore list, ignoring for 10 seconds
Feb 13 17:42:20 cst-Celadon-RN wpa_supplicant[967]: BSSID 
00:03:7f:01:59:50 ignore list count incremented to 2, ignoring for 10 
seconds
Feb 13 17:42:21 cst-Celadon-RN wpa_supplicant[967]: wlan0:    skip - 
BSSID ignored (count=2 limit=0)
> +					wpa_s->valid_links |= BIT(link_id);
> +					os_memcpy(wpa_s->links[link_id].bssid,
> +						  ap_info->data + 1, ETH_ALEN);
> +					wpa_s->links[link_id].freq =
> +						neigh_bss->freq;
> +				} else {
> +					wpa_printf(MSG_DEBUG,
> +						   "MLD: neighbor doesn't match current SSID - skip link");
> +				}
> +			} else {
> +				wpa_printf(MSG_DEBUG,
> +					   "MLD: neighbor not found in scan");
> +			}
> +		}
...



More information about the Hostap mailing list