mirror of
https://github.com/espressif/openthread.git
synced 2026-07-27 22:37:45 +00:00
[network-data] do not process TMF messages if waiting for sync (#8332)
This commit is contained in:
@@ -133,12 +133,10 @@ template <> void Leader::HandleTmf<kUriServerData>(Coap::Message &aMessage, cons
|
||||
ThreadNetworkDataTlv networkDataTlv;
|
||||
uint16_t rloc16;
|
||||
|
||||
VerifyOrExit(Get<Mle::Mle>().IsLeader());
|
||||
VerifyOrExit(Get<Mle::Mle>().IsLeader() && !mWaitingForNetDataSync);
|
||||
|
||||
LogInfo("Received network data registration");
|
||||
|
||||
VerifyOrExit(!mWaitingForNetDataSync);
|
||||
|
||||
VerifyOrExit(aMessageInfo.GetPeerAddr().GetIid().IsRoutingLocator());
|
||||
|
||||
switch (Tlv::Find<ThreadRloc16Tlv>(aMessage, rloc16))
|
||||
@@ -185,10 +183,9 @@ template <> void Leader::HandleTmf<kUriCommissionerSet>(Coap::Message &aMessage,
|
||||
MeshCoP::Tlv *cur;
|
||||
MeshCoP::Tlv *end;
|
||||
|
||||
VerifyOrExit(Get<Mle::Mle>().IsLeader());
|
||||
VerifyOrExit(Get<Mle::Mle>().IsLeader() && !mWaitingForNetDataSync);
|
||||
|
||||
VerifyOrExit(length <= sizeof(tlvs));
|
||||
VerifyOrExit(Get<Mle::MleRouter>().IsLeader());
|
||||
|
||||
aMessage.ReadBytes(offset, tlvs, length);
|
||||
|
||||
@@ -275,7 +272,7 @@ template <> void Leader::HandleTmf<kUriCommissionerGet>(Coap::Message &aMessage,
|
||||
uint16_t length = 0;
|
||||
uint16_t offset;
|
||||
|
||||
VerifyOrExit(Get<Mle::Mle>().IsLeader());
|
||||
VerifyOrExit(Get<Mle::Mle>().IsLeader() && !mWaitingForNetDataSync);
|
||||
|
||||
SuccessOrExit(Tlv::FindTlvValueOffset(aMessage, MeshCoP::Tlv::kGet, offset, length));
|
||||
aMessage.SetOffset(offset);
|
||||
|
||||
Reference in New Issue
Block a user