Always remember the most recently received joiner RLOC and port. (#1333)

This commit is contained in:
Jonathan Hui
2017-02-20 09:54:13 -08:00
committed by GitHub
parent aeda7f8970
commit 05240f0d33
+5 -5
View File
@@ -697,11 +697,6 @@ void Commissioner::HandleRelayReceive(Coap::Header &aHeader, Message &aMessage,
if (!mNetif.GetSecureCoapServer().IsConnectionActive())
{
memcpy(mJoinerIid, joinerIid.GetIid(), sizeof(mJoinerIid));
mJoinerPort = joinerPort.GetUdpPort();
mJoinerRloc = joinerRloc.GetJoinerRouterLocator();
otLogInfoMeshCoP("Received relay receive for %llX, rloc:%x", HostSwap64(mJoinerIid64), mJoinerRloc);
mJoinerIid[0] ^= 0x2;
for (size_t i = 0; i < sizeof(mJoiners) / sizeof(mJoiners[0]); i++)
@@ -732,6 +727,11 @@ void Commissioner::HandleRelayReceive(Coap::Header &aHeader, Message &aMessage,
VerifyOrExit(enableJoiner, ;);
mJoinerPort = joinerPort.GetUdpPort();
mJoinerRloc = joinerRloc.GetJoinerRouterLocator();
otLogInfoMeshCoP("Received relay receive for %llX, rloc:%x", HostSwap64(mJoinerIid64), mJoinerRloc);
aMessage.SetOffset(offset);
SuccessOrExit(error = aMessage.SetLength(offset + length));