[ip6] remove IPv6 multicast forwarding to sleepys from MTD build (#4730)

This commit is contained in:
Jonathan Hui
2020-03-25 07:54:57 -07:00
parent d44f75112a
commit 1850152029
2 changed files with 6 additions and 2 deletions
+6
View File
@@ -305,6 +305,7 @@ otError Ip6::InsertMplOption(Message &aMessage, Header &aHeader, MessageInfo &aM
}
else
{
#if OPENTHREAD_FTD
if (aHeader.GetDestination().IsMulticastLargerThanRealmLocal() &&
Get<Mle::MleRouter>().HasSleepyChildrenSubscribed(aHeader.GetDestination()))
{
@@ -320,6 +321,7 @@ otError Ip6::InsertMplOption(Message &aMessage, Header &aHeader, MessageInfo &aM
otLogWarnIp6("No enough buffer for message copy for indirect transmission to sleepy children");
}
}
#endif
SuccessOrExit(error = AddTunneledMplOption(aMessage, aHeader, aMessageInfo));
}
@@ -510,6 +512,7 @@ otError Ip6::SendDatagram(Message &aMessage, MessageInfo &aMessageInfo, uint8_t
if (aMessageInfo.GetPeerAddr().IsMulticastLargerThanRealmLocal())
{
#if OPENTHREAD_FTD
if (Get<Mle::MleRouter>().HasSleepyChildrenSubscribed(header.GetDestination()))
{
Message *messageCopy = NULL;
@@ -524,6 +527,7 @@ otError Ip6::SendDatagram(Message &aMessage, MessageInfo &aMessageInfo, uint8_t
otLogWarnIp6("No enough buffer for message copy for indirect transmission to sleepy children");
}
}
#endif
SuccessOrExit(error = AddTunneledMplOption(aMessage, header, aMessageInfo));
}
@@ -1178,11 +1182,13 @@ otError Ip6::HandleDatagram(Message &aMessage, Netif *aNetif, const void *aLinkM
multicastPromiscuous = true;
}
#if OPENTHREAD_FTD
if (header.GetDestination().IsMulticastLargerThanRealmLocal() &&
Get<Mle::MleRouter>().HasSleepyChildrenSubscribed(header.GetDestination()))
{
forward = true;
}
#endif
}
else
{
-2
View File
@@ -77,8 +77,6 @@ public:
otError SendChildUpdateRequest(void) { return Mle::SendChildUpdateRequest(); }
otError GetMaxChildTimeout(uint32_t &) { return OT_ERROR_NOT_IMPLEMENTED; }
bool HasSleepyChildrenSubscribed(const Ip6::Address &) { return false; }
};
} // namespace Mle