[dataset-manager] avoid nullptr dereference (#6918)

The CoAP response handler may pass nullptr if an error occurs.
This commit is contained in:
Jonathan Hui
2021-08-12 20:57:34 -07:00
committed by GitHub
parent 2798cc9c05
commit e8e40229fd
2 changed files with 4 additions and 4 deletions
+3 -3
View File
@@ -340,10 +340,10 @@ void DatasetManager::HandleMgmtSetResponse(void * aContext,
Error aError)
{
static_cast<DatasetManager *>(aContext)->HandleMgmtSetResponse(
*static_cast<Coap::Message *>(aMessage), *static_cast<const Ip6::MessageInfo *>(aMessageInfo), aError);
static_cast<Coap::Message *>(aMessage), static_cast<const Ip6::MessageInfo *>(aMessageInfo), aError);
}
void DatasetManager::HandleMgmtSetResponse(Coap::Message &aMessage, const Ip6::MessageInfo &aMessageInfo, Error aError)
void DatasetManager::HandleMgmtSetResponse(Coap::Message *aMessage, const Ip6::MessageInfo *aMessageInfo, Error aError)
{
OT_UNUSED_VARIABLE(aMessageInfo);
@@ -351,7 +351,7 @@ void DatasetManager::HandleMgmtSetResponse(Coap::Message &aMessage, const Ip6::M
StateTlv stateTlv;
SuccessOrExit(error = aError);
VerifyOrExit(Tlv::FindTlv(aMessage, stateTlv) == kErrorNone, error = kErrorParse);
VerifyOrExit(Tlv::FindTlv(*aMessage, stateTlv) == kErrorNone, error = kErrorParse);
switch (stateTlv.GetState())
{
+1 -1
View File
@@ -345,7 +345,7 @@ private:
otMessage * aMessage,
const otMessageInfo *aMessageInfo,
Error aError);
void HandleMgmtSetResponse(Coap::Message &aMessage, const Ip6::MessageInfo &aMessageInfo, Error aError);
void HandleMgmtSetResponse(Coap::Message *aMessage, const Ip6::MessageInfo *aMessageInfo, Error aError);
bool IsActiveDataset(void) const { return GetType() == Dataset::kActive; }
bool IsPendingDataset(void) const { return GetType() == Dataset::kPending; }