Other Parts Discussed in Thread: Z-STACK
Function "ZDO_MatchEndDeviceBind" in source file "ZDObject.c" which can be only processed by coordinate has a danger. When the coordinate receives 2 ZDP “end-device-bind-req” command,and the “end-device-bind-req” commands request more than 2 or more cluster-ID binding.The coordinate will allocate buffer for “matchED” and store binding cluster in it, and run "end-device-bind" service in function "ZDMatchSendState".At this moment,if a new ZDP "end-device-bind-req" command is received by coordinate,the buffer pointer “matchED” 's member "ed2" will allocate new memory space for the new command.But the "ed2" has allocated space for last command and its space will not be free until the "end-device-bind" service is finished.So the memory sapce (Heap) of coordinate has allocated for some one but will not be free,that will make coordinate down.