diff --git a/src/core/net/ip6.cpp b/src/core/net/ip6.cpp index b06490a02..ef8c7c54b 100644 --- a/src/core/net/ip6.cpp +++ b/src/core/net/ip6.cpp @@ -138,7 +138,7 @@ otError Ip6::AddTunneledMplOption(Message &aMessage, Header &aHeader, MessageInf messageInfo.GetPeerAddr().mFields.m16[7] = HostSwap16(0x00fc); tunnelHeader.Init(); - tunnelHeader.SetHopLimit(kDefaultHopLimit); + tunnelHeader.SetHopLimit(static_cast(kDefaultHopLimit)); tunnelHeader.SetPayloadLength(aHeader.GetPayloadLength() + sizeof(tunnelHeader)); tunnelHeader.SetDestination(messageInfo.GetPeerAddr()); tunnelHeader.SetNextHeader(kProtoIp6); @@ -361,7 +361,7 @@ otError Ip6::SendDatagram(Message &aMessage, MessageInfo &aMessageInfo, IpProto header.Init(); header.SetPayloadLength(payloadLength); header.SetNextHeader(aIpProto); - header.SetHopLimit(aMessageInfo.mHopLimit); + header.SetHopLimit(aMessageInfo.mHopLimit ? aMessageInfo.mHopLimit : static_cast(kDefaultHopLimit)); if (aMessageInfo.GetSockAddr().IsUnspecified() || aMessageInfo.GetSockAddr().IsMulticast()) { diff --git a/src/core/net/socket.hpp b/src/core/net/socket.hpp index c7b93406e..7f365ca6b 100644 --- a/src/core/net/socket.hpp +++ b/src/core/net/socket.hpp @@ -59,11 +59,7 @@ public: * This constructor initializes the object. * */ - MessageInfo(void) - { - memset(this, 0, sizeof(*this)); - mHopLimit = kDefaultHopLimit; - } + MessageInfo(void) { memset(this, 0, sizeof(*this)); } /** * This method returns a reference to the local socket address. @@ -184,12 +180,6 @@ public: * */ void SetLinkInfo(const void *aLinkInfo) { mLinkInfo = aLinkInfo; } - -private: - enum - { - kDefaultHopLimit = OPENTHREAD_CONFIG_IPV6_DEFAULT_HOP_LIMIT, - }; }; /**