2026-03-31 03:18 ftp://ftp.de.debian.org/debian/pool/main/p/portreserve/portreserve_0.0.4.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-106-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.70 compiler: g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0 cppcheck: head 2.20.0 head-info: a1e752f (2026-03-30 08:28:45 +0200) count: 16 16 elapsed-time: 0.1 0.1 head-timing-info: old-timing-info: head results: portreserve-0.0.4/src/portreserve.c:93:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AF_UNIX [valueFlowBailoutIncompleteVar] portreserve-0.0.4/src/portreserve.c:171:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AF_INET [valueFlowBailoutIncompleteVar] portreserve-0.0.4/src/portreserve.c:221:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AF_UNIX [valueFlowBailoutIncompleteVar] portreserve-0.0.4/src/portreserve.c:244:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NAME_MAX [valueFlowBailoutIncompleteVar] portreserve-0.0.4/src/portreserve.c:337:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable S_IRUSR [valueFlowBailoutIncompleteVar] portreserve-0.0.4/src/portreserve.c:428:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] portreserve-0.0.4/src/portreserve.c:156:27: portability: Non reentrant function 'getservbyname' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getservbyname_r'. [prohibitedgetservbynameCalled] portreserve-0.0.4/src/portreserve.c:269:7: style: Condition 'newmaps' is always true [knownConditionTrueFalse] portreserve-0.0.4/src/portreserve.c:232:4: error: Resource handle 's' freed twice. [doubleFree] portreserve-0.0.4/src/portreserve.c:226:4: note: Resource handle 's' freed twice. portreserve-0.0.4/src/portreserve.c:232:4: note: Resource handle 's' freed twice. portreserve-0.0.4/src/portreserve.c:236:2: error: Returning/dereferencing 's' after it is deallocated / released [deallocret] portreserve-0.0.4/src/portreserve.c:226:4: note: Returning/dereferencing 's' after it is deallocated / released portreserve-0.0.4/src/portreserve.c:236:2: note: Returning/dereferencing 's' after it is deallocated / released portreserve-0.0.4/src/portreserve.c:245:23: error: If memory allocation fails: pointer addition with NULL pointer. [nullPointerArithmeticOutOfMemory] portreserve-0.0.4/src/portreserve.c:244:25: note: Assuming allocation function fails portreserve-0.0.4/src/portreserve.c:244:25: note: Assignment 'cfgfile=malloc(strlen(dir)+NAME_MAX+1)', assigned value is 0 portreserve-0.0.4/src/portreserve.c:245:23: note: Null pointer addition portreserve-0.0.4/src/portreserve.c:156:20: style: Variable 'serv' can be declared as pointer to const [constVariablePointer] portreserve-0.0.4/src/portreserve.c:246:17: style: Variable 'd' can be declared as pointer to const [constVariablePointer] portreserve-0.0.4/src/portreserve.c:335:27: style: Parameter 'pidfile' can be declared as pointer to const [constParameterPointer] portreserve-0.0.4/src/portreserve.c:287:9: style: Variable 'prev' is assigned a value that is never used. [unreadVariable] portreserve-0.0.4/src/portreserve.c:257:7: style: Unused variable: s [unusedVariable] diff: DONE