Other Parts Discussed in Thread: SIMPLELINK-CC13XX-CC26XX-SDK
As I am facing issues with devices in the field, I am performing a renewed static analysis on the project and ZSTACK code.
In Components/stack/zdo/ZDProfile.c, the variable ieee which is a pointer gets assigned the address of a local variable that is an array.
Once that local array is out of scope (and thus potentially discarded), it is copied to a buffer.
This one is relatively easy to fix.
//CCB 2113 Zigbee Core spec
uint8 invalidIEEEAddr[Z_EXTADDR_LEN];
osal_memset(invalidIEEEAddr,0xFF,Z_EXTADDR_LEN);
ieee = invalidIEEEAddr;
}
}
*pBuf++ = stat;
pBuf = osal_cpyExtAddr( pBuf, ieee );