diff mbox series

[02/20] wifi: mac80211: Include Multi-Link in CRC calculation

Message ID 20230618214435.ae8246b93d85.Ia64b45198de90ff7f70abcc997841157f148ea40@changeid (mailing list archive)
State Accepted
Delegated to: Johannes Berg
Headers show
Series cfg80211/mac80211 patches from our internal tree 2023-06-18 | expand

Commit Message

Greenman, Gregory June 18, 2023, 6:49 p.m. UTC
From: Ilan Peer <ilan.peer@intel.com>

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>
---
 net/mac80211/util.c | 4 ++++
 1 file changed, 4 insertions(+)
diff mbox series

Patch

diff --git a/net/mac80211/util.c b/net/mac80211/util.c
index 2c53f6e17cfe..35701316dccf 100644
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
@@ -987,6 +987,10 @@  ieee80211_parse_extension_element(u32 *crc,
 			const struct ieee80211_multi_link_elem *mle =
 				(void *)data;
 
+			if (crc)
+				*crc = crc32_be(*crc, (void *)elem,
+						elem->datalen + 2);
+
 			switch (le16_get_bits(mle->control,
 					      IEEE80211_ML_CONTROL_TYPE)) {
 			case IEEE80211_ML_CONTROL_TYPE_BASIC: