diff --git a/src/core/meshcop/meshcop_leader.cpp b/src/core/meshcop/meshcop_leader.cpp index 5f97185d4..00a9e5eb8 100644 --- a/src/core/meshcop/meshcop_leader.cpp +++ b/src/core/meshcop/meshcop_leader.cpp @@ -231,6 +231,7 @@ exit: Error Leader::SetDelayTimerMinimal(uint32_t aDelayTimerMinimal) { Error error = kErrorNone; + VerifyOrExit((aDelayTimerMinimal != 0 && aDelayTimerMinimal < DelayTimerTlv::kDelayTimerDefault), error = kErrorInvalidArgs); mDelayTimerMinimal = aDelayTimerMinimal; @@ -253,13 +254,13 @@ exit: void Leader::SetEmptyCommissionerData(void) { - CommissionerSessionIdTlv mCommissionerSessionId; + CommissionerSessionIdTlv sessionIdTlv; - mCommissionerSessionId.Init(); - mCommissionerSessionId.SetCommissionerSessionId(++mSessionId); + sessionIdTlv.Init(); + sessionIdTlv.SetCommissionerSessionId(++mSessionId); - IgnoreError(Get().SetCommissioningData(reinterpret_cast(&mCommissionerSessionId), - sizeof(Tlv) + mCommissionerSessionId.GetLength())); + IgnoreError(Get().SetCommissioningData(reinterpret_cast(&sessionIdTlv), + sizeof(Tlv) + sessionIdTlv.GetLength())); } void Leader::ResignCommissioner(void)