Hi,
How can I restrict the network to only allow end devices with certain IEEE addresses to join? My planning for the network is any router with the correct channel and PAN_ID could join freely, but end devices must be allowed to join explicitly by their IEEE addresses. This is to prevent unauthorized end devices (even with correct channel and PAN_ID) to join the network.
Here is my thinking:
To do this, I need to register the MAC layer messages so that when an MAC association request is sent from a new device, I could write the code to reject devices with unauthorized IEEE addresses in the MAC association response. In Zstack, (by the way I am using CC2430), I could only locate the following function in zmac.c
ROOT uint8 ZMacAssociateRsp( ZMacAssociateRsp_t *pData )
{
/* Right now, set security to zero */
pData->Sec.SecurityLevel = false;
MAC_MlmeAssociateRsp( (macMlmeAssociateRsp_t *) pData );
return ( ZMacSuccess );
}
Can any body tell me if I could modify this function to achieve my goal, or let me know it is impossible to do it in Zstack?
Thanks.
Yuan Jian