mirror of
https://github.com/espressif/openthread.git
synced 2026-08-12 05:37:46 +00:00
temporaily fix zero-length payload with payload marker (#1300)
This commit is contained in:
@@ -511,16 +511,18 @@ void NetworkDiagnostic::HandleDiagnosticGetRequest(Coap::Header &aHeader, Messag
|
||||
VerifyOrExit((message = mNetif.GetCoapServer().NewMessage(0)) != NULL, error = kThreadError_NoBufs);
|
||||
|
||||
header.SetDefaultResponseHeader(aHeader);
|
||||
|
||||
if (networkDiagnosticTlv.GetLength() > 0)
|
||||
{
|
||||
header.SetPayloadMarker();
|
||||
}
|
||||
header.SetPayloadMarker();
|
||||
|
||||
SuccessOrExit(error = message->Append(header.GetBytes(), header.GetLength()));
|
||||
|
||||
SuccessOrExit(error = FillRequestedTlvs(aMessage, *message, networkDiagnosticTlv));
|
||||
|
||||
if (message->GetLength() == header.GetLength())
|
||||
{
|
||||
// Remove Payload Marker if payload is actually empty.
|
||||
message->SetLength(header.GetLength() - 1);
|
||||
}
|
||||
|
||||
SuccessOrExit(error = mNetif.GetCoapServer().SendMessage(*message, messageInfo));
|
||||
|
||||
otLogInfoNetDiag("Sent diagnostic get response");
|
||||
|
||||
Reference in New Issue
Block a user