From 6954667dca888f4d2d94872660682cf21a588ccb Mon Sep 17 00:00:00 2001 From: Jonathan Hui Date: Wed, 6 May 2026 13:38:28 -0700 Subject: [PATCH] [mac] enforce KeyIdMode1 for CSL synchronization processing (#13062) This commit updates `Mac::ProcessCsl` to explicitly verify that CSL IE data frames are secured using `KeyIdMode1` (utilizing the network key and per-neighbor frame counter freshness checks). --- src/core/mac/mac.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/core/mac/mac.cpp b/src/core/mac/mac.cpp index 5a34e3670..a67e4fc2c 100644 --- a/src/core/mac/mac.cpp +++ b/src/core/mac/mac.cpp @@ -2490,8 +2490,13 @@ void Mac::ProcessCsl(const RxFrame &aFrame, const Address &aSrcAddr) CslNeighbor *neighbor = nullptr; const CslIe *csl; + uint8_t keyIdMode; + VerifyOrExit(aFrame.IsVersion2015() && aFrame.GetSecurityEnabled()); + IgnoreError(aFrame.GetKeyIdMode(keyIdMode)); + VerifyOrExit(keyIdMode == Frame::kKeyIdMode1); + csl = aFrame.GetCslIe(); VerifyOrExit(csl != nullptr);