]> git.ipfire.org Git - thirdparty/linux.git/commit
wifi: mac80211: do not use old MBSSID elements
authorAloka Dixit <aloka.dixit@oss.qualcomm.com>
Mon, 15 Dec 2025 17:46:56 +0000 (09:46 -0800)
committerJohannes Berg <johannes.berg@intel.com>
Tue, 16 Dec 2025 09:30:22 +0000 (10:30 +0100)
commita519be2f5d958c5804f2cfd68f1f384291271fab
treeab2a270e5583ae2d73cb3573e2df15a50660bad5
parent99067b58a408a384d2a45c105eb3dce980a862ce
wifi: mac80211: do not use old MBSSID elements

When userspace brings down and deletes a non-transmitted profile,
it is expected to send a new updated Beacon template for the
transmitted profile of that multiple BSSID (MBSSID) group which
does not include the removed profile in MBSSID element. This
update comes via NL80211_CMD_SET_BEACON.

Such updates work well as long as the group continues to have at
least one non-transmitted profile as NL80211_ATTR_MBSSID_ELEMS
is included in the new Beacon template.

But when the last non-trasmitted profile is removed, it still
gets included in Beacon templates sent to driver. This happens
because when no MBSSID elements are sent by the userspace,
ieee80211_assign_beacon() ends up using the element stored from
earlier Beacon template.

Do not copy old MBSSID elements, instead userspace should always
include these when applicable.

Fixes: 2b3171c6fe0a ("mac80211: MBSSID beacon handling in AP mode")
Signed-off-by: Aloka Dixit <aloka.dixit@oss.qualcomm.com>
Link: https://patch.msgid.link/20251215174656.2866319-2-aloka.dixit@oss.qualcomm.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/cfg.c