diff --git a/src/core/meshcop/commissioner.cpp b/src/core/meshcop/commissioner.cpp index fac81de5b..0024b549c 100644 --- a/src/core/meshcop/commissioner.cpp +++ b/src/core/meshcop/commissioner.cpp @@ -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));