void idmanager_init() { idmanager_vars.isDAGroot = FALSE; idmanager_vars.isBridge = FALSE; idmanager_vars.myPANID.type = ADDR_PANID; idmanager_vars.myPANID.panid[0] = 0xca; idmanager_vars.myPANID.panid[1] = 0xfe; idmanager_vars.myPrefix.type = ADDR_PREFIX; memset(&idmanager_vars.myPrefix.prefix[0], 0x00, sizeof(idmanager_vars.myPrefix.prefix)); idmanager_vars.my64bID.type = ADDR_64B; eui64_get(idmanager_vars.my64bID.addr_64b); packetfunctions_mac64bToMac16b(&idmanager_vars.my64bID,&idmanager_vars.my16bID); }
//=========================== public ========================================== // #define DAGROOT void idmanager_init(uint8_t role) { // reset local variables memset(&idmanager_vars, 0, sizeof(idmanager_vars_t)); // isDAGroot // #ifdef DAGROOT // idmanager_vars.isDAGroot = TRUE; // #else // idmanager_vars.isDAGroot = FALSE; // #endif idmanager_vars.isDAGroot = role; // myPANID idmanager_vars.myPANID.type = ADDR_PANID; idmanager_vars.myPANID.panid[0] = 0xca; idmanager_vars.myPANID.panid[1] = 0xfe; // myPrefix idmanager_vars.myPrefix.type = ADDR_PREFIX; #ifdef DAGROOT idmanager_vars.myPrefix.prefix[0] = 0xbb; idmanager_vars.myPrefix.prefix[1] = 0xbb; idmanager_vars.myPrefix.prefix[2] = 0x00; idmanager_vars.myPrefix.prefix[3] = 0x00; idmanager_vars.myPrefix.prefix[4] = 0x00; idmanager_vars.myPrefix.prefix[5] = 0x00; idmanager_vars.myPrefix.prefix[6] = 0x00; idmanager_vars.myPrefix.prefix[7] = 0x00; #else memset(&idmanager_vars.myPrefix.prefix[0], 0x00, sizeof(idmanager_vars.myPrefix.prefix)); #endif // my64bID idmanager_vars.my64bID.type = ADDR_64B; eui64_get(idmanager_vars.my64bID.addr_64b); // my16bID packetfunctions_mac64bToMac16b(&idmanager_vars.my64bID,&idmanager_vars.my16bID); }