From 3cd4be93924191adca9ca6b2f798669dd921ec79 Mon Sep 17 00:00:00 2001 From: Abtin Keshavarzian Date: Thu, 29 Aug 2019 13:21:19 -0700 Subject: [PATCH] [mac] add IsJoinable (private) method (#4133) --- src/core/mac/mac.cpp | 20 +++++++++++--------- src/core/mac/mac.hpp | 1 + 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/core/mac/mac.cpp b/src/core/mac/mac.cpp index 04cb73df0..d451a0809 100644 --- a/src/core/mac/mac.cpp +++ b/src/core/mac/mac.cpp @@ -815,7 +815,6 @@ void Mac::PrepareBeaconRequest(TxFrame &aFrame) void Mac::PrepareBeacon(TxFrame &aFrame) { - uint8_t numUnsecurePorts; uint8_t beaconLength; uint16_t fcf; Beacon * beacon = NULL; @@ -836,10 +835,7 @@ void Mac::PrepareBeacon(TxFrame &aFrame) { beaconPayload->Init(); - // set the Joining Permitted flag - Get().GetUnsecurePorts(numUnsecurePorts); - - if (numUnsecurePorts) + if (IsJoinable()) { beaconPayload->SetJoiningPermitted(); } @@ -877,10 +873,7 @@ bool Mac::ShouldSendBeacon(void) const // false) but only if it is in joinable state (unsecure port // list is not empty). - uint8_t numUnsecurePorts; - - Get().GetUnsecurePorts(numUnsecurePorts); - shouldSend = (numUnsecurePorts != 0); + shouldSend = IsJoinable(); } #endif @@ -888,6 +881,15 @@ exit: return shouldSend; } +bool Mac::IsJoinable(void) const +{ + uint8_t numUnsecurePorts; + + Get().GetUnsecurePorts(numUnsecurePorts); + + return (numUnsecurePorts != 0); +} + void Mac::ProcessTransmitAesCcm(TxFrame &aFrame, const ExtAddress *aExtAddress) { uint32_t frameCounter = 0; diff --git a/src/core/mac/mac.hpp b/src/core/mac/mac.hpp index 42e158567..11e8c2f5e 100644 --- a/src/core/mac/mac.hpp +++ b/src/core/mac/mac.hpp @@ -653,6 +653,7 @@ private: void PrepareBeaconRequest(TxFrame &aFrame); void PrepareBeacon(TxFrame &aFrame); bool ShouldSendBeacon(void) const; + bool IsJoinable(void) const; void BeginTransmit(void); bool HandleMacCommand(RxFrame &aFrame); Frame * GetOperationFrame(void);