From da61dc7eba9ce4708cb18bc2a6b72ade22e2f8b4 Mon Sep 17 00:00:00 2001 From: Tom Rebbert <109624508+trebbert-lutron@users.noreply.github.com> Date: Fri, 19 Sep 2025 16:35:26 -0600 Subject: [PATCH] [mle] avoid overwriting parent candidate during child ID request phase (#11953) --- src/core/thread/mle.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/core/thread/mle.cpp b/src/core/thread/mle.cpp index 71ee8d0e2..30d7d66a9 100644 --- a/src/core/thread/mle.cpp +++ b/src/core/thread/mle.cpp @@ -5085,6 +5085,8 @@ void Mle::Attacher::HandleParentResponse(RxInfo &aRxInfo) Log(kMessageReceive, kTypeParentResponse, aRxInfo.mMessageInfo.GetPeerAddr(), sourceAddress); + VerifyOrExit(mState != kStateChildIdRequest, error = kErrorInvalidState); + SuccessOrExit(error = aRxInfo.mMessage.ReadVersionTlv(version)); SuccessOrExit(error = aRxInfo.mMessage.ReadAndMatchResponseTlvWith(mParentRequestChallenge));