mirror of
https://github.com/espressif/openthread.git
synced 2026-08-13 14:17:47 +00:00
Clean up commissioner state names. (#1811)
This commit is contained in:
@@ -52,6 +52,17 @@ extern "C" {
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* This enumeration defines the Commissioner State.
|
||||
*
|
||||
*/
|
||||
typedef enum otCommissionerState
|
||||
{
|
||||
OT_COMMISSIONER_STATE_DISABLED = 0, ///< Commissioner role is disabled.
|
||||
OT_COMMISSIONER_STATE_PETITION = 1, ///< Currently petitioning to become a Commissioner.
|
||||
OT_COMMISSIONER_STATE_ACTIVE = 2, ///< Commissioner role is active.
|
||||
} otCommissionerState;
|
||||
|
||||
/**
|
||||
* This function enables the Thread Commissioner role.
|
||||
*
|
||||
@@ -248,9 +259,9 @@ OTAPI uint16_t OTCALL otCommissionerGetSessionId(otInstance *aInstance);
|
||||
*
|
||||
* @param[in] aInstance A pointer to an OpenThread instance.
|
||||
*
|
||||
* @retval kCommissionerStateDisabled Commissioner disabled.
|
||||
* @retval kCommissionerStatePetition Becoming the commissioner.
|
||||
* @retval kCommissionerStateActive Commissioner enabled.
|
||||
* @retval OT_COMMISSIONER_STATE_DISABLED Commissioner disabled.
|
||||
* @retval OT_COMMISSIONER_STATE_PETITION Becoming the commissioner.
|
||||
* @retval OT_COMMISSIONER_STATE_ACTIVE Commissioner enabled.
|
||||
*
|
||||
*/
|
||||
OTAPI otCommissionerState OTCALL otCommissionerGetState(otInstance *aInstance);
|
||||
|
||||
@@ -368,18 +368,6 @@ enum
|
||||
OT_SECURITY_POLICY_BEACONS = 1 << 3, ///< Beacons enabled
|
||||
};
|
||||
|
||||
/**
|
||||
* This enumeration defines the Commissioner State.
|
||||
*
|
||||
*/
|
||||
typedef enum otCommissionerState
|
||||
{
|
||||
|
||||
kCommissionerStateDisabled = 0,
|
||||
kCommissionerStatePetition = 1,
|
||||
kCommissionerStateActive = 2,
|
||||
} otCommissionerState;
|
||||
|
||||
/**
|
||||
* This type represents Channel Mask Page 0.
|
||||
*
|
||||
|
||||
@@ -79,7 +79,7 @@ otError AnnounceBeginClient::SendRequest(uint32_t aChannelMask, uint8_t aCount,
|
||||
Ip6::MessageInfo messageInfo;
|
||||
Message *message = NULL;
|
||||
|
||||
VerifyOrExit(mNetif.GetCommissioner().GetState() == kCommissionerStateActive, error = OT_ERROR_INVALID_STATE);
|
||||
VerifyOrExit(mNetif.GetCommissioner().IsActive(), error = OT_ERROR_INVALID_STATE);
|
||||
|
||||
header.Init(aAddress.IsMulticast() ? kCoapTypeNonConfirmable : kCoapTypeConfirmable,
|
||||
kCoapRequestPost);
|
||||
|
||||
@@ -69,7 +69,7 @@ Commissioner::Commissioner(ThreadNetif &aThreadNetif):
|
||||
mAnnounceBegin(aThreadNetif),
|
||||
mEnergyScan(aThreadNetif),
|
||||
mPanIdQuery(aThreadNetif),
|
||||
mState(kCommissionerStateDisabled),
|
||||
mState(OT_COMMISSIONER_STATE_DISABLED),
|
||||
mJoinerPort(0),
|
||||
mJoinerRloc(0),
|
||||
mJoinerExpirationTimer(aThreadNetif.GetIp6().mTimerScheduler, HandleJoinerExpirationTimer, this),
|
||||
@@ -108,11 +108,11 @@ otError Commissioner::Start(void)
|
||||
otError error = OT_ERROR_NONE;
|
||||
|
||||
otLogFuncEntry();
|
||||
VerifyOrExit(mState == kCommissionerStateDisabled, error = OT_ERROR_INVALID_STATE);
|
||||
VerifyOrExit(mState == OT_COMMISSIONER_STATE_DISABLED, error = OT_ERROR_INVALID_STATE);
|
||||
|
||||
SuccessOrExit(error = mNetif.GetCoapSecure().Start(OPENTHREAD_CONFIG_JOINER_UDP_PORT, SendRelayTransmit, this));
|
||||
|
||||
mState = kCommissionerStatePetition;
|
||||
mState = OT_COMMISSIONER_STATE_PETITION;
|
||||
mTransmitAttempts = 0;
|
||||
|
||||
SendPetition();
|
||||
@@ -127,11 +127,11 @@ otError Commissioner::Stop(void)
|
||||
otError error = OT_ERROR_NONE;
|
||||
|
||||
otLogFuncEntry();
|
||||
VerifyOrExit(mState != kCommissionerStateDisabled, error = OT_ERROR_INVALID_STATE);
|
||||
VerifyOrExit(mState != OT_COMMISSIONER_STATE_DISABLED, error = OT_ERROR_INVALID_STATE);
|
||||
|
||||
mNetif.GetCoapSecure().Stop();
|
||||
|
||||
mState = kCommissionerStateDisabled;
|
||||
mState = OT_COMMISSIONER_STATE_DISABLED;
|
||||
RemoveCoapResources();
|
||||
mTransmitAttempts = 0;
|
||||
|
||||
@@ -153,7 +153,7 @@ otError Commissioner::SendCommissionerSet(void)
|
||||
SteeringDataTlv steeringData;
|
||||
|
||||
otLogFuncEntry();
|
||||
VerifyOrExit(mState == kCommissionerStateActive, error = OT_ERROR_INVALID_STATE);
|
||||
VerifyOrExit(mState == OT_COMMISSIONER_STATE_ACTIVE, error = OT_ERROR_INVALID_STATE);
|
||||
|
||||
memset(&dataset, 0, sizeof(dataset));
|
||||
|
||||
@@ -211,7 +211,7 @@ otError Commissioner::AddJoiner(const Mac::ExtAddress *aExtAddress, const char *
|
||||
{
|
||||
otError error = OT_ERROR_NO_BUFS;
|
||||
|
||||
VerifyOrExit(mState == kCommissionerStateActive, error = OT_ERROR_INVALID_STATE);
|
||||
VerifyOrExit(mState == OT_COMMISSIONER_STATE_ACTIVE, error = OT_ERROR_INVALID_STATE);
|
||||
|
||||
otLogFuncEntryMsg("%llX, %s", (aExtAddress ? HostSwap64(*reinterpret_cast<const uint64_t *>(aExtAddress)) : 0), aPSKd);
|
||||
VerifyOrExit(strlen(aPSKd) <= Dtls::kPskMaxLength, error = OT_ERROR_INVALID_ARGS);
|
||||
@@ -254,7 +254,7 @@ otError Commissioner::RemoveJoiner(const Mac::ExtAddress *aExtAddress, uint32_t
|
||||
{
|
||||
otError error = OT_ERROR_NOT_FOUND;
|
||||
|
||||
VerifyOrExit(mState == kCommissionerStateActive, error = OT_ERROR_INVALID_STATE);
|
||||
VerifyOrExit(mState == OT_COMMISSIONER_STATE_ACTIVE, error = OT_ERROR_INVALID_STATE);
|
||||
|
||||
otLogFuncEntryMsg("%llX", (aExtAddress ? HostSwap64(*reinterpret_cast<const uint64_t *>(aExtAddress)) : 0));
|
||||
|
||||
@@ -327,14 +327,14 @@ void Commissioner::HandleTimer(void)
|
||||
{
|
||||
switch (mState)
|
||||
{
|
||||
case kCommissionerStateDisabled:
|
||||
case OT_COMMISSIONER_STATE_DISABLED:
|
||||
break;
|
||||
|
||||
case kCommissionerStatePetition:
|
||||
case OT_COMMISSIONER_STATE_PETITION:
|
||||
SendPetition();
|
||||
break;
|
||||
|
||||
case kCommissionerStateActive:
|
||||
case OT_COMMISSIONER_STATE_ACTIVE:
|
||||
SendKeepAlive();
|
||||
break;
|
||||
}
|
||||
@@ -638,23 +638,22 @@ void Commissioner::HandleLeaderPetitionResponse(Coap::Header *aHeader, Message *
|
||||
|
||||
otLogFuncEntry();
|
||||
|
||||
VerifyOrExit(mState == kCommissionerStatePetition, mState = kCommissionerStateDisabled);
|
||||
VerifyOrExit(aResult == OT_ERROR_NONE &&
|
||||
aHeader->GetCode() == kCoapResponseChanged, retransmit = true);
|
||||
VerifyOrExit(mState == OT_COMMISSIONER_STATE_PETITION, mState = OT_COMMISSIONER_STATE_DISABLED);
|
||||
VerifyOrExit(aResult == OT_ERROR_NONE && aHeader->GetCode() == kCoapResponseChanged, retransmit = true);
|
||||
|
||||
otLogInfoMeshCoP(GetInstance(), "received Leader Petition response");
|
||||
|
||||
SuccessOrExit(Tlv::GetTlv(*aMessage, Tlv::kState, sizeof(state), state));
|
||||
VerifyOrExit(state.IsValid());
|
||||
|
||||
VerifyOrExit(state.GetState() == StateTlv::kAccept, mState = kCommissionerStateDisabled);
|
||||
VerifyOrExit(state.GetState() == StateTlv::kAccept, mState = OT_COMMISSIONER_STATE_DISABLED);
|
||||
|
||||
SuccessOrExit(Tlv::GetTlv(*aMessage, Tlv::kCommissionerSessionId, sizeof(sessionId), sessionId));
|
||||
VerifyOrExit(sessionId.IsValid());
|
||||
mSessionId = sessionId.GetCommissionerSessionId();
|
||||
|
||||
AddCoapResources();
|
||||
mState = kCommissionerStateActive;
|
||||
mState = OT_COMMISSIONER_STATE_ACTIVE;
|
||||
|
||||
mTransmitAttempts = 0;
|
||||
mTimer.Start(Timer::SecToMsec(kKeepAliveTimeout) / 2);
|
||||
@@ -665,7 +664,7 @@ exit:
|
||||
{
|
||||
if (mTransmitAttempts >= kPetitionRetryCount)
|
||||
{
|
||||
mState = kCommissionerStateDisabled;
|
||||
mState = OT_COMMISSIONER_STATE_DISABLED;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -695,7 +694,7 @@ otError Commissioner::SendKeepAlive(void)
|
||||
VerifyOrExit((message = NewMeshCoPMessage(mNetif.GetCoap(), header)) != NULL, error = OT_ERROR_NO_BUFS);
|
||||
|
||||
state.Init();
|
||||
state.SetState(mState == kCommissionerStateActive ? StateTlv::kAccept : StateTlv::kReject);
|
||||
state.SetState(mState == OT_COMMISSIONER_STATE_ACTIVE ? StateTlv::kAccept : StateTlv::kReject);
|
||||
SuccessOrExit(error = message->Append(&state, sizeof(state)));
|
||||
|
||||
sessionId.Init();
|
||||
@@ -738,22 +737,22 @@ void Commissioner::HandleLeaderKeepAliveResponse(Coap::Header *aHeader, Message
|
||||
|
||||
otLogFuncEntry();
|
||||
|
||||
VerifyOrExit(mState == kCommissionerStateActive, mState = kCommissionerStateDisabled);
|
||||
VerifyOrExit(aResult == OT_ERROR_NONE &&
|
||||
aHeader->GetCode() == kCoapResponseChanged, mState = kCommissionerStateDisabled);
|
||||
VerifyOrExit(mState == OT_COMMISSIONER_STATE_ACTIVE, mState = OT_COMMISSIONER_STATE_DISABLED);
|
||||
VerifyOrExit(aResult == OT_ERROR_NONE && aHeader->GetCode() == kCoapResponseChanged,
|
||||
mState = OT_COMMISSIONER_STATE_DISABLED);
|
||||
|
||||
otLogInfoMeshCoP(GetInstance(), "received Leader Petition response");
|
||||
|
||||
SuccessOrExit(Tlv::GetTlv(*aMessage, Tlv::kState, sizeof(state), state));
|
||||
VerifyOrExit(state.IsValid());
|
||||
|
||||
VerifyOrExit(state.GetState() == StateTlv::kAccept, mState = kCommissionerStateDisabled);
|
||||
VerifyOrExit(state.GetState() == StateTlv::kAccept, mState = OT_COMMISSIONER_STATE_DISABLED);
|
||||
|
||||
mTimer.Start(Timer::SecToMsec(kKeepAliveTimeout) / 2);
|
||||
|
||||
exit:
|
||||
|
||||
if (mState != kCommissionerStateActive)
|
||||
if (mState != OT_COMMISSIONER_STATE_ACTIVE)
|
||||
{
|
||||
RemoveCoapResources();
|
||||
}
|
||||
@@ -782,7 +781,7 @@ void Commissioner::HandleRelayReceive(Coap::Header &aHeader, Message &aMessage,
|
||||
|
||||
otLogFuncEntry();
|
||||
|
||||
VerifyOrExit(mState == kCommissionerStateActive, error = OT_ERROR_INVALID_STATE);
|
||||
VerifyOrExit(mState == OT_COMMISSIONER_STATE_ACTIVE, error = OT_ERROR_INVALID_STATE);
|
||||
|
||||
VerifyOrExit(aHeader.GetType() == kCoapTypeNonConfirmable &&
|
||||
aHeader.GetCode() == kCoapRequestPost);
|
||||
|
||||
@@ -139,14 +139,22 @@ public:
|
||||
*/
|
||||
uint16_t GetSessionId(void) const;
|
||||
|
||||
/**
|
||||
* This method indicates whether or not the Commissioner role is active.
|
||||
*
|
||||
* @returns TRUE if the Commissioner role is active, FALSE otherwise.
|
||||
*
|
||||
*/
|
||||
bool IsActive(void) const { return mState == OT_COMMISSIONER_STATE_ACTIVE; }
|
||||
|
||||
/**
|
||||
* This function returns the Commissioner State.
|
||||
*
|
||||
* @param[in] aInstance A pointer to an OpenThread instance.
|
||||
*
|
||||
* @retval kCommissionerStateDisabled Commissioner disabled.
|
||||
* @retval kCommissionerStatePetition Becoming the commissioner.
|
||||
* @retval kCommissionerStateActive Commissioner enabled.
|
||||
* @retval OT_COMMISSIONER_STATE_DISABLED Commissioner disabled.
|
||||
* @retval OT_COMMISSIONER_STATE_PETITION Becoming the commissioner.
|
||||
* @retval OT_COMIMSSIONER_STATE_ACTIVE Commissioner enabled.
|
||||
*
|
||||
*/
|
||||
otCommissionerState GetState(void) const;
|
||||
|
||||
@@ -601,11 +601,8 @@ otError DatasetManager::SendSetRequest(const otOperationalDataset &aDataset, con
|
||||
VerifyOrExit((message = NewMeshCoPMessage(mNetif.GetCoap(), header)) != NULL, error = OT_ERROR_NO_BUFS);
|
||||
|
||||
#if OPENTHREAD_ENABLE_COMMISSIONER && OPENTHREAD_FTD
|
||||
bool isCommissioner;
|
||||
|
||||
isCommissioner = mNetif.GetCommissioner().GetState() != kCommissionerStateDisabled ? true : false;
|
||||
|
||||
if (isCommissioner)
|
||||
if (mNetif.GetCommissioner().IsActive())
|
||||
{
|
||||
const uint8_t *cur = aTlvs;
|
||||
const uint8_t *end = aTlvs + aLength;
|
||||
|
||||
@@ -88,7 +88,7 @@ otError EnergyScanClient::SendQuery(uint32_t aChannelMask, uint8_t aCount, uint1
|
||||
Ip6::MessageInfo messageInfo;
|
||||
Message *message = NULL;
|
||||
|
||||
VerifyOrExit(mNetif.GetCommissioner().GetState() == kCommissionerStateActive, error = OT_ERROR_INVALID_STATE);
|
||||
VerifyOrExit(mNetif.GetCommissioner().IsActive(), error = OT_ERROR_INVALID_STATE);
|
||||
|
||||
header.Init(aAddress.IsMulticast() ? kCoapTypeNonConfirmable : kCoapTypeConfirmable,
|
||||
kCoapRequestPost);
|
||||
|
||||
@@ -81,7 +81,7 @@ otError PanIdQueryClient::SendQuery(uint16_t aPanId, uint32_t aChannelMask, cons
|
||||
Ip6::MessageInfo messageInfo;
|
||||
Message *message = NULL;
|
||||
|
||||
VerifyOrExit(mNetif.GetCommissioner().GetState() == kCommissionerStateActive, error = OT_ERROR_INVALID_STATE);
|
||||
VerifyOrExit(mNetif.GetCommissioner().IsActive(), error = OT_ERROR_INVALID_STATE);
|
||||
|
||||
header.Init(aAddress.IsMulticast() ? kCoapTypeNonConfirmable : kCoapTypeConfirmable,
|
||||
kCoapRequestPost);
|
||||
|
||||
@@ -3665,7 +3665,7 @@ otError NcpBase::GetPropertyHandler_THREAD_NETWORK_ID_TIMEOUT(uint8_t header, sp
|
||||
otError NcpBase::GetPropertyHandler_THREAD_COMMISSIONER_ENABLED(uint8_t header, spinel_prop_key_t key)
|
||||
{
|
||||
bool isEnabled = false;
|
||||
if (otCommissionerGetState(mInstance) == kCommissionerStateActive)
|
||||
if (otCommissionerGetState(mInstance) == OT_COMMISSIONER_STATE_ACTIVE)
|
||||
isEnabled = true;
|
||||
|
||||
return SendPropertyUpdate(
|
||||
|
||||
Reference in New Issue
Block a user