From: Jouni Malinen Date: Thu, 10 Aug 2023 08:18:57 +0000 (+0300) Subject: wlantest: Find non-AP MLD only from affiliated BSSs of the AP MLD X-Git-Tag: hostap_2_11~1069 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a5a0b2cf7b1b39d906c88844b54c2283efee7127;p=thirdparty%2Fhostap.git wlantest: Find non-AP MLD only from affiliated BSSs of the AP MLD Make sta_find_mlo() more accurate by searching a non-AP MLD only from the affialiated BSSs of the AP MLD instead of from any BSS. This might help in some roaming cases where both the old and the new AP MLD have their affiliated links in the BSS table. Signed-off-by: Jouni Malinen --- diff --git a/wlantest/sta.c b/wlantest/sta.c index 6b5573e3a..6a5412e54 100644 --- a/wlantest/sta.c +++ b/wlantest/sta.c @@ -54,6 +54,10 @@ struct wlantest_sta * sta_find_mlo(struct wlantest *wt, dl_list_for_each(obss, &wt->bss, struct wlantest_bss, list) { if (obss == bss) continue; + if (!is_zero_ether_addr(bss->mld_mac_addr) && + os_memcmp(obss->mld_mac_addr, bss->mld_mac_addr, + ETH_ALEN) != 0) + continue; dl_list_for_each(sta, &obss->sta, struct wlantest_sta, list) { if (os_memcmp(sta->addr, addr, ETH_ALEN) == 0) return sta;