wifi: mac80211_hwsim: Ack link addressed frames

Do address matching with link addresses as well.

Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
Andrei Otcheretianski 2022-06-22 15:02:37 +03:00 committed by Johannes Berg
parent 1d4c0f0405
commit b8375cf158

View File

@ -1198,10 +1198,27 @@ struct mac80211_hwsim_addr_match_data {
static void mac80211_hwsim_addr_iter(void *data, u8 *mac,
struct ieee80211_vif *vif)
{
int i;
struct mac80211_hwsim_addr_match_data *md = data;
if (memcmp(mac, md->addr, ETH_ALEN) == 0)
if (memcmp(mac, md->addr, ETH_ALEN) == 0) {
md->ret = true;
return;
}
/* Match the link address */
for (i = 0; i < ARRAY_SIZE(vif->link_conf); i++) {
struct ieee80211_bss_conf *conf;
conf = rcu_dereference(vif->link_conf[i]);
if (!conf)
continue;
if (memcmp(conf->addr, md->addr, ETH_ALEN) == 0) {
md->ret = true;
return;
}
}
}
static bool mac80211_hwsim_addr_match(struct mac80211_hwsim_data *data,