From b3fc7bc453034aa61cd27d5208f08ead9c7789e0 Mon Sep 17 00:00:00 2001 From: Jonathan Hui Date: Thu, 17 Dec 2020 07:08:15 -0800 Subject: [PATCH] [dataset] do not allow Extended TLVs in Operational Dataset (#5966) --- src/core/meshcop/dataset.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/core/meshcop/dataset.cpp b/src/core/meshcop/dataset.cpp index f66adfc53..2a7f05b45 100644 --- a/src/core/meshcop/dataset.cpp +++ b/src/core/meshcop/dataset.cpp @@ -173,7 +173,8 @@ bool Dataset::IsValid(void) const for (const Tlv *cur = GetTlvsStart(); cur < end; cur = cur->GetNext()) { - VerifyOrExit((cur + 1) <= end && cur->GetNext() <= end && Tlv::IsValid(*cur), rval = false); + VerifyOrExit(!cur->IsExtended() && (cur + 1) <= end && cur->GetNext() <= end && Tlv::IsValid(*cur), + rval = false); } exit: