childmgr.c's AppendIdToStr():
The sprintf(IdStr,"%d",NameStrId++); statement could have an overflow. NameStrId is defined as an uint16 so the text representation could be greater that the dimension of IdStr[4]. In reality only a couple of IDs will be created per target so NameStrId can be defined as an uint8.
inittbl.c BuildJsonTblObjArray():
There are three occurrences of the folowing statement.
strncat(JsonParam->Query.Key, CfgStrPtr, CJSON_MAX_KEY_LEN);
The code should be changed to
strncat(JsonParam->Query.Key, CfgStrPtr, CJSON_MAX_KEY_LEN-1);
childmgr.c's AppendIdToStr(): The sprintf(IdStr,"%d",NameStrId++); statement could have an overflow. NameStrId is defined as an uint16 so the text representation could be greater that the dimension of IdStr[4]. In reality only a couple of IDs will be created per target so NameStrId can be defined as an uint8.
inittbl.c BuildJsonTblObjArray():
There are three occurrences of the folowing statement. strncat(JsonParam->Query.Key, CfgStrPtr, CJSON_MAX_KEY_LEN);
The code should be changed to strncat(JsonParam->Query.Key, CfgStrPtr, CJSON_MAX_KEY_LEN-1);