[commissioning-dataset] add TLV validation in HandleCommissioningSet (#2193)

This commit adds a validation check when reading the Commissioning
Session ID TLV in HandleCommissioningSet().

Credit to OSS-Fuzz.
This commit is contained in:
Jonathan Hui
2017-09-15 10:42:02 -07:00
committed by GitHub
parent 0139cc4195
commit ba148cf5bf
+4 -1
View File
@@ -237,8 +237,11 @@ void Leader::HandleCommissioningSet(Coap::Header &aHeader, Message &aMessage, co
}
else if (type == MeshCoP::Tlv::kCommissionerSessionId)
{
MeshCoP::CommissionerSessionIdTlv *tlv = static_cast<MeshCoP::CommissionerSessionIdTlv *>(cur);
VerifyOrExit(tlv->IsValid());
sessionId = tlv->GetCommissionerSessionId();
hasSessionId = true;
sessionId = static_cast<MeshCoP::CommissionerSessionIdTlv *>(cur)->GetCommissionerSessionId();
}
else
{