[mle] add helper method SetLeaderData(const LeaderData &) (#10245)

This commit is contained in:
Abtin Keshavarzian
2024-05-16 13:42:09 -07:00
committed by GitHub
parent f15dbd67fd
commit c8e2eb868b
3 changed files with 10 additions and 4 deletions
+8 -3
View File
@@ -972,6 +972,11 @@ void Mle::SetRloc16(uint16_t aRloc16)
}
}
void Mle::SetLeaderData(const LeaderData &aLeaderData)
{
SetLeaderData(aLeaderData.GetPartitionId(), aLeaderData.GetWeighting(), aLeaderData.GetLeaderRouterId());
}
void Mle::SetLeaderData(uint32_t aPartitionId, uint8_t aWeighting, uint8_t aLeaderRouterId)
{
if (mLeaderData.GetPartitionId() != aPartitionId)
@@ -2821,7 +2826,7 @@ void Mle::HandleAdvertisement(RxInfo &aRxInfo)
if ((leaderData.GetPartitionId() != mLeaderData.GetPartitionId()) ||
(leaderData.GetLeaderRouterId() != GetLeaderId()))
{
SetLeaderData(leaderData.GetPartitionId(), leaderData.GetWeighting(), leaderData.GetLeaderRouterId());
SetLeaderData(leaderData);
#if OPENTHREAD_FTD
SuccessOrExit(error = Get<MleRouter>().ReadAndProcessRouteTlvOnFed(aRxInfo, mParent.GetRouterId()));
@@ -2920,7 +2925,7 @@ Error Mle::HandleLeaderData(RxInfo &aRxInfo)
{
if (IsChild())
{
SetLeaderData(leaderData.GetPartitionId(), leaderData.GetWeighting(), leaderData.GetLeaderRouterId());
SetLeaderData(leaderData);
mRetrieveNewNetworkData = true;
}
else
@@ -3397,7 +3402,7 @@ void Mle::HandleChildIdResponse(RxInfo &aRxInfo)
SetStateDetached();
SetLeaderData(leaderData.GetPartitionId(), leaderData.GetWeighting(), leaderData.GetLeaderRouterId());
SetLeaderData(leaderData);
#if OPENTHREAD_FTD
SuccessOrExit(error = Get<MleRouter>().ReadAndProcessRouteTlvOnFed(aRxInfo, RouterIdFromRloc16(sourceAddress)));
+1
View File
@@ -1257,6 +1257,7 @@ private:
void SetStateDetached(void);
void SetStateChild(uint16_t aRloc16);
void SetLeaderData(uint32_t aPartitionId, uint8_t aWeighting, uint8_t aLeaderRouterId);
void SetLeaderData(const LeaderData &aLeaderData);
void InformPreviousChannel(void);
bool IsAnnounceAttach(void) const { return mAlternatePanId != Mac::kPanIdBroadcast; }
void ScheduleMessageTransmissionTimer(void);
+1 -1
View File
@@ -952,7 +952,7 @@ Error MleRouter::HandleLinkAccept(RxInfo &aRxInfo, bool aRequest)
VerifyOrExit(GetRloc16() == address16, error = kErrorDrop);
SuccessOrExit(error = aRxInfo.mMessage.ReadLeaderDataTlv(leaderData));
SetLeaderData(leaderData.GetPartitionId(), leaderData.GetWeighting(), leaderData.GetLeaderRouterId());
SetLeaderData(leaderData);
mRouterTable.Clear();
SuccessOrExit(error = aRxInfo.mMessage.ReadRouteTlv(routeTlv));