[sntp] simplify message allocation in Client::Query() (#12691)

This commit simplifies how the SNTP request message is allocated and
constructed in `Client::Query()`. It removes the `NewMessage()`
helper method, replacing its use with a direct message allocation from
the socket followed by `Append()` to add the header. It also updates
the error cleanup path to use the `FreeMessage()` macro.
This commit is contained in:
Abtin Keshavarzian
2026-03-16 17:34:13 -05:00
committed by GitHub
parent 27c6098c2b
commit 0c2148e803
2 changed files with 4 additions and 18 deletions
+4 -17
View File
@@ -90,7 +90,9 @@ Error Client::Query(const otSntpQuery *aQuery, otSntpResponseHandler aHandler, v
// Originate timestamp is used only as a unique token.
header.SetTransmitTimestampSeconds(TimerMilli::GetNow().GetValue() / 1000 + kTimeAt1970);
VerifyOrExit((message = NewMessage(header)) != nullptr, error = kErrorNoBufs);
message = mSocket.NewMessage();
VerifyOrExit(message != nullptr, error = kErrorNoBufs);
SuccessOrExit(error = message->Append(header));
messageInfo = AsCoreTypePtr(aQuery->mMessageInfo);
@@ -109,10 +111,7 @@ exit:
if (error != kErrorNone)
{
if (message)
{
message->Free();
}
FreeMessage(message);
if (messageCopy)
{
@@ -123,18 +122,6 @@ exit:
return error;
}
Message *Client::NewMessage(const Header &aHeader)
{
Message *message = nullptr;
VerifyOrExit((message = mSocket.NewMessage(sizeof(aHeader))) != nullptr);
IgnoreError(message->Prepend(aHeader));
message->SetOffset(0);
exit:
return message;
}
Message *Client::CopyAndEnqueueMessage(const Message &aMessage, const QueryMetadata &aQueryMetadata)
{
Error error = kErrorNone;
-1
View File
@@ -247,7 +247,6 @@ private:
uint8_t mRetransmissionCount; // Number of retransmissions
};
Message *NewMessage(const Header &aHeader);
Message *CopyAndEnqueueMessage(const Message &aMessage, const QueryMetadata &aQueryMetadata);
void DequeueMessage(Message &aMessage);
Error SendMessage(Message &aMessage, const Ip6::MessageInfo &aMessageInfo);