2026-05-01 09:12 ftp://ftp.de.debian.org/debian/pool/main/c/cgilib/cgilib_0.6.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j1 platform: Linux-6.8.0-111-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.70 compiler: g++ (Ubuntu 14.2.0-4ubuntu2~24.04.1) 14.2.0 cppcheck: head 2.20.0 head-info: e5c4a73 (2026-05-01 11:10:43 +0200) count: 36 36 elapsed-time: 1.8 1.6 head-timing-info: old-timing-info: head results: cgilib-0.6/aux.c:102:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] cgilib-0.6/aux.c:144:27: style: Condition 'line[strlen(line)-1]=='\r'' is always false [knownConditionTrueFalse] cgilib-0.6/aux.c:143:25: note: Assignment 'line[strlen(line)-1]='\0'', assigned value is 0 cgilib-0.6/aux.c:144:27: note: Condition 'line[strlen(line)-1]=='\r'' is always false cgilib-0.6/aux.c:131:15: style: Variable 'cp' is assigned a value that is never used. [unreadVariable] cgilib-0.6/cgi.c:253:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] cgilib-0.6/cgi.c:496:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable s_cgi [valueFlowBailoutIncompleteVar] cgilib-0.6/cgi.c:683:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable name [valueFlowBailoutIncompleteVar] cgilib-0.6/cgi.c:708:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable name [valueFlowBailoutIncompleteVar] cgilib-0.6/cgi.c:736:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable name [valueFlowBailoutIncompleteVar] cgilib-0.6/cgi.c:757:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable name [valueFlowBailoutIncompleteVar] cgilib-0.6/cgi.c:792:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable name [valueFlowBailoutIncompleteVar] cgilib-0.6/cgi.c:326:14: style: Obsolescent function 'rindex' called. It is recommended to use 'strrchr' instead. [prohibitedrindexCalled] cgilib-0.6/cgi.c:768:2: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] cgilib-0.6/cgi.c:510:3: error: Memory leak: res [memleak] cgilib-0.6/cgi.c:512:3: error: Memory leak: res [memleak] cgilib-0.6/cgi.c:515:6: error: Memory leak: res [memleak] cgilib-0.6/cgi.c:520:3: error: Memory leak: res [memleak] cgilib-0.6/cgi.c:523:6: error: Memory leak: res [memleak] cgilib-0.6/cgi.c:535:12: error: Common realloc mistake: 'line' nulled but not freed upon failure [memleakOnRealloc] cgilib-0.6/cgi.c:444:71: warning: If memory allocation fails, then there is a possible null pointer dereference: xp [nullPointerOutOfMemory] cgilib-0.6/cgi.c:441:19: note: Assuming allocation function fails cgilib-0.6/cgi.c:441:19: note: Assignment 'xp=strdup(line)', assigned value is 0 cgilib-0.6/cgi.c:444:71: note: Null pointer dereference cgilib-0.6/cgi.c:451:56: warning: If memory allocation fails, then there is a possible null pointer dereference: xp [nullPointerOutOfMemory] cgilib-0.6/cgi.c:441:19: note: Assuming allocation function fails cgilib-0.6/cgi.c:441:19: note: Assignment 'xp=strdup(line)', assigned value is 0 cgilib-0.6/cgi.c:444:79: note: Assuming condition is false cgilib-0.6/cgi.c:451:56: note: Null pointer dereference cgilib-0.6/cgi.c:146:40: style: Parameter 'boundary' can be declared as pointer to const [constParameterPointer] cgilib-0.6/cgi.c:694:32: style: Parameter 'parms' can be declared as pointer to const [constParameterPointer] cgilib-0.6/cgi.c:721:28: style: Parameter 'parms' can be declared as pointer to const [constParameterPointer] cgilib-0.6/cgitest.c:205:11: style: Variable 'path_info' can be declared as pointer to const [constVariablePointer] cgilib-0.6/cookies.c:70:44: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable s_cookie [valueFlowBailoutIncompleteVar] cgilib-0.6/cookies.c:130:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable value [valueFlowBailoutIncompleteVar] cgilib-0.6/cookies.c:147:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable value [valueFlowBailoutIncompleteVar] cgilib-0.6/cookies.c:42:22: style: Redundant condition: The condition '*n0' is redundant since '*n0 == ' '' is sufficient. [redundantCondition] cgilib-0.6/cookies.c:44:49: style: Condition '*v0==' '' is always false [knownConditionTrueFalse] cgilib-0.6/cookies.c:63:12: error: Common realloc mistake: 'res' nulled but not freed upon failure [memleakOnRealloc] cgilib-0.6/cookies.c:115:10: error: Common realloc mistake: 'res' nulled but not freed upon failure [memleakOnRealloc] cgilib-0.6/cookies.c:44:43: style: Same expression '*v0==' '' found multiple times in chain of '||' operators. [duplicateExpression] cgilib-0.6/cookies.c:110:9: style: Variable 'curpos' is reassigned a value before the old one has been used. [redundantAssignment] cgilib-0.6/cookies.c:108:13: note: curpos is assigned cgilib-0.6/cookies.c:110:9: note: curpos is overwritten cgilib-0.6/cookies.c:28:11: style: Variable 'http_cookie' can be declared as pointer to const [constVariablePointer] cgilib-0.6/cookies.c:138:30: style: Parameter 'parms' can be declared as pointer to const [constParameterPointer] cgilib-0.6/cookies.c:153:13: style: Variable 'k' is assigned a value that is never used. [unreadVariable] diff: DONE