Scan Results

List of Findings

Error: FORWARD_NULL (CWE-476): [#def1]
/libqb/tests/crash_test_dummy.c:89: path: Condition "i < 1000", taking true branch.
/libqb/tests/crash_test_dummy.c:101: path: Jumping back to the beginning of the loop.
/libqb/tests/crash_test_dummy.c:89: path: Condition "i < 1000", taking true branch.
/libqb/tests/crash_test_dummy.c:101: path: Jumping back to the beginning of the loop.
/libqb/tests/crash_test_dummy.c:89: path: Condition "i < 1000", taking false branch.
/libqb/tests/crash_test_dummy.c:105: assign_zero: Assigning: "logfile" = "NULL".
/libqb/tests/crash_test_dummy.c:106: var_deref_op: Dereferencing null pointer "logfile".

Error: RESOURCE_LEAK (CWE-404): [#def2]
/libqb/doxygen2man/doxygen2man.c:1025: path: Condition "cur_node->name", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1025: path: Condition "strcmp((char *)cur_node->name, "memberdef") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1028: path: Condition "kind", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1028: path: Condition "strcmp(kind, "enum") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1031: path: Condition "this_tag", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1032: path: Condition "this_tag->type == XML_ELEMENT_NODE", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1032: path: Condition "strcmp((char *)this_tag->name, "name") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1033: alloc_fn: Storage is returned from allocation function "strdup".
/libqb/doxygen2man/doxygen2man.c:1033: var_assign: Assigning: "name" = storage returned from "strdup((char *)this_tag->children->content)".
/libqb/doxygen2man/doxygen2man.c:1035: path: Jumping back to the beginning of the loop.
/libqb/doxygen2man/doxygen2man.c:1031: path: Condition "this_tag", taking false branch.
/libqb/doxygen2man/doxygen2man.c:1037: path: Condition "name", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1039: path: Condition "si", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1043: noescape: Resource "name" is not freed or pointed-to in "strdup".
/libqb/doxygen2man/doxygen2man.c:1050: leaked_storage: Variable "name" going out of scope leaks the storage it points to.

Error: RESOURCE_LEAK (CWE-404): [#def3]
/libqb/doxygen2man/doxygen2man.c:1059: path: Condition "cur_node->name", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1059: path: Condition "strcmp((char *)cur_node->name, "memberdef") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1075: path: Condition "this_tag", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1077: path: Condition "!this_tag->children", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1078: path: Continuing loop.
/libqb/doxygen2man/doxygen2man.c:1075: path: Condition "this_tag", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1077: path: Condition "!this_tag->children", taking false branch.
/libqb/doxygen2man/doxygen2man.c:1077: path: Condition "!this_tag->children->content", taking false branch.
/libqb/doxygen2man/doxygen2man.c:1080: path: Condition "this_tag->type == XML_ELEMENT_NODE", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1080: path: Condition "strcmp((char *)this_tag->name, "definition") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1082: path: Condition "this_tag->type == XML_ELEMENT_NODE", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1082: path: Condition "strcmp((char *)this_tag->name, "argsstring") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1084: path: Condition "this_tag->type == XML_ELEMENT_NODE", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1084: path: Condition "strcmp((char *)this_tag->name, "name") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1085: alloc_fn: Storage is returned from allocation function "strdup".
/libqb/doxygen2man/doxygen2man.c:1085: var_assign: Assigning: "name" = storage returned from "strdup((char *)this_tag->children->content)".
/libqb/doxygen2man/doxygen2man.c:1087: path: Condition "this_tag->type == XML_ELEMENT_NODE", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1087: path: Condition "strcmp((char *)this_tag->name, "briefdescription") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1089: path: Condition "!brief", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1091: path: Falling through to end of if statement.
/libqb/doxygen2man/doxygen2man.c:1096: path: Condition "this_tag->type == XML_ELEMENT_NODE", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1096: path: Condition "strcmp((char *)this_tag->name, "detaileddescription") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1098: path: Condition "!detailed", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1100: path: Falling through to end of if statement.
/libqb/doxygen2man/doxygen2man.c:1106: path: Condition "this_tag->type == XML_ELEMENT_NODE", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1106: path: Condition "strcmp((char *)this_tag->name, "param") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1110: path: Condition "pi", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1117: path: Jumping back to the beginning of the loop.
/libqb/doxygen2man/doxygen2man.c:1075: path: Condition "this_tag", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1077: path: Condition "!this_tag->children", taking false branch.
/libqb/doxygen2man/doxygen2man.c:1077: path: Condition "!this_tag->children->content", taking false branch.
/libqb/doxygen2man/doxygen2man.c:1080: path: Condition "this_tag->type == XML_ELEMENT_NODE", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1080: path: Condition "strcmp((char *)this_tag->name, "definition") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1082: path: Condition "this_tag->type == XML_ELEMENT_NODE", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1082: path: Condition "strcmp((char *)this_tag->name, "argsstring") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1084: path: Condition "this_tag->type == XML_ELEMENT_NODE", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1084: path: Condition "strcmp((char *)this_tag->name, "name") == 0", taking true branch.
/libqb/doxygen2man/doxygen2man.c:1085: overwrite_var: Overwriting "name" in "name = strdup((char *)this_tag->children->content)" leaks the storage that "name" points to.