[mle] only handle MLE attach messages when router role is enabled (#2252)

This commit is contained in:
Jonathan Hui
2017-10-10 08:40:07 -07:00
committed by GitHub
parent e190edf8a0
commit 3564bae6d2
+4
View File
@@ -1687,6 +1687,8 @@ otError MleRouter::HandleParentRequest(const Message &aMessage, const Ip6::Messa
LogMleMessage("Receive Parent Request", aMessageInfo.GetPeerAddr());
VerifyOrExit(IsRouterRoleEnabled(), error = OT_ERROR_INVALID_STATE);
// A Router MUST NOT send an MLE Parent Response if:
// 1. It has no available Child capacity (if Max Child Count minus
@@ -2133,6 +2135,8 @@ otError MleRouter::HandleChildIdRequest(const Message &aMessage, const Ip6::Mess
LogMleMessage("Receive Child ID Request", aMessageInfo.GetPeerAddr());
VerifyOrExit(IsRouterRoleEnabled(), error = OT_ERROR_INVALID_STATE);
// only process message when operating as a child, router, or leader
VerifyOrExit(mRole >= OT_DEVICE_ROLE_CHILD, error = OT_ERROR_INVALID_STATE);