wifi: mac80211: Include Multi-Link in CRC calculation

Include the Multi-Link elements found in beacon frames
in the CRC calculation, as these elements are intended
to reflect changes in the AP MLD state.

Signed-off-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
Link: https://lore.kernel.org/r/20230618214435.ae8246b93d85.Ia64b45198de90ff7f70abcc997841157f148ea40@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
Ilan Peer 2023-06-18 21:49:44 +03:00 committed by Johannes Berg
parent e8c2af660b
commit dbd3966368

View File

@ -987,6 +987,10 @@ ieee80211_parse_extension_element(u32 *crc,
const struct ieee80211_multi_link_elem *mle = const struct ieee80211_multi_link_elem *mle =
(void *)data; (void *)data;
if (crc)
*crc = crc32_be(*crc, (void *)elem,
elem->datalen + 2);
switch (le16_get_bits(mle->control, switch (le16_get_bits(mle->control,
IEEE80211_ML_CONTROL_TYPE)) { IEEE80211_ML_CONTROL_TYPE)) {
case IEEE80211_ML_CONTROL_TYPE_BASIC: case IEEE80211_ML_CONTROL_TYPE_BASIC: