2025-05-10 06:00 ftp://ftp.de.debian.org/debian/pool/main/e/eperl/eperl_2.2.15.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-59-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.67 compiler: g++ (Ubuntu 14.2.0-4ubuntu2~24.04) 14.2.0 cppcheck: head 2.17.0 head-info: b3c7f00 (2025-05-09 17:59:20 +0200) count: 45 45 elapsed-time: 2.2 2.3 head-timing-info: old-timing-info: head results: ossp-eperl-ePerl_2_2_15/eperl_http.c:114:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable data [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_http.c:129:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable data [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_http.c:197:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EPERL_VERSION_SHORT [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_http.c:192:13: warning: If resource allocation fails, then there is a possible null pointer dereference: fp [nullPointerOutOfResources] ossp-eperl-ePerl_2_2_15/eperl_http.c:191:22: note: Assuming allocation function fails ossp-eperl-ePerl_2_2_15/eperl_http.c:191:22: note: Assignment 'fp=fdopen(s,"r+")', assigned value is 0 ossp-eperl-ePerl_2_2_15/eperl_http.c:192:13: note: Null pointer dereference ossp-eperl-ePerl_2_2_15/eperl_http.c:201:33: warning:inconclusive: If resource allocation fails, then there is a possible null pointer dereference: fp [nullPointerOutOfResources] ossp-eperl-ePerl_2_2_15/eperl_http.c:191:22: note: Assuming allocation function fails ossp-eperl-ePerl_2_2_15/eperl_http.c:191:22: note: Assignment 'fp=fdopen(s,"r+")', assigned value is 0 ossp-eperl-ePerl_2_2_15/eperl_http.c:201:33: note: Null pointer dereference ossp-eperl-ePerl_2_2_15/eperl_http.c:146:36: style:inconclusive: Function 'HTTP_openURLasFP' argument 1 names different: declaration 'url' definition 'url_arg'. [funcArgNamesDifferent] ossp-eperl-ePerl_2_2_15/eperl.h:73:43: note: Function 'HTTP_openURLasFP' argument 1 names different: declaration 'url' definition 'url_arg'. ossp-eperl-ePerl_2_2_15/eperl_http.c:146:36: note: Function 'HTTP_openURLasFP' argument 1 names different: declaration 'url' definition 'url_arg'. ossp-eperl-ePerl_2_2_15/eperl_http.c:17:11: style: Variable 'colon' can be declared as pointer to const [constVariablePointer] ossp-eperl-ePerl_2_2_15/eperl_main.c:62:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EPERL_VERSION_SHORT [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_main.c:97:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_main.c:111:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_main.c:127:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_main.c:132:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_main.c:174:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable mysighandler [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_main.c:187:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_main.c:266:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable optarg [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_main.c:592:18: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] ossp-eperl-ePerl_2_2_15/eperl_main.c:607:35: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] ossp-eperl-ePerl_2_2_15/eperl_main.c:609:35: portability: Non reentrant function 'getpwnam' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwnam_r'. [prohibitedgetpwnamCalled] ossp-eperl-ePerl_2_2_15/eperl_main.c:627:18: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] ossp-eperl-ePerl_2_2_15/eperl_main.c:639:18: portability: Non reentrant function 'getgrgid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getgrgid_r'. [prohibitedgetgrgidCalled] ossp-eperl-ePerl_2_2_15/eperl_main.c:656:22: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] ossp-eperl-ePerl_2_2_15/eperl_main.c:780:21: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. [prohibitedlocaltimeCalled] ossp-eperl-ePerl_2_2_15/eperl_main.c:784:15: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] ossp-eperl-ePerl_2_2_15/eperl_main.c:167:5: error: Common reallocarray mistake: 'RememberedINC' nulled but not freed upon failure [memleakOnRealloc] ossp-eperl-ePerl_2_2_15/eperl_main.c:791:11: style: Variable 'sourcedir' can be declared as pointer to const [constVariablePointer] ossp-eperl-ePerl_2_2_15/eperl_parse.c:230:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cpe [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_parse.c:258:66: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_parse.c:215:27: style: Variable 'ent' can be declared as pointer to const [constVariablePointer] ossp-eperl-ePerl_2_2_15/eperl_parse.c:230:43: portability: 'buf' is of type 'const void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] ossp-eperl-ePerl_2_2_15/eperl_parse.c:230:47: portability: 'buf+n' is of type 'const void *'. When using void pointers in calculations, the behaviour is undefined. [arithOperationsOnVoidPointer] ossp-eperl-ePerl_2_2_15/eperl_perl5.c:31:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable dTHR [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_perl5.c:113:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_CLOEXEC [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_perl5.c:115:107: style: Condition 'stdout_thread=0,true' is always true [knownConditionTrueFalse] ossp-eperl-ePerl_2_2_15/eperl_perl5.c:116:107: style: Condition 'stderr_thread=0,true' is always true [knownConditionTrueFalse] ossp-eperl-ePerl_2_2_15/eperl_perl5.c:53:5: error: Common reallocarray mistake: 'Perl5_RememberedScalars' nulled but not freed upon failure [memleakOnRealloc] ossp-eperl-ePerl_2_2_15/eperl_perl5.c:78:12: warning: If resource allocation fails, then there is a possible null pointer dereference: piperd [nullPointerOutOfResources] ossp-eperl-ePerl_2_2_15/eperl_perl5.c:74:26: note: Assuming allocation function fails ossp-eperl-ePerl_2_2_15/eperl_perl5.c:74:26: note: Assignment 'piperd=fdopen(state->pipe[0],"r")', assigned value is 0 ossp-eperl-ePerl_2_2_15/eperl_perl5.c:78:12: note: Null pointer dereference ossp-eperl-ePerl_2_2_15/eperl_pp.c:160:23: style: Variable 'argstart' can be declared as pointer to const [constVariablePointer] ossp-eperl-ePerl_2_2_15/eperl_sys.c:39:1: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable F_DUPFD_CLOEXEC [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_sys.c:40:1: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable F_DUPFD_CLOEXEC [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_sys.c:50:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_CLOEXEC [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_sys.c:97:77: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] ossp-eperl-ePerl_2_2_15/eperl_sys.c:15:5: warning: Return value of function vasprintf() is not used. [ignoredReturnValue] ossp-eperl-ePerl_2_2_15/eperl_sys.c:112:15: style: Variable 'path' can be declared as pointer to const [constVariablePointer] ossp-eperl-ePerl_2_2_15/eperl_sys.c:110:8: error: Null pointer dereference: nBuf [ctunullpointer] ossp-eperl-ePerl_2_2_15/eperl_main.c:320:31: note: Calling function PrintError, 5th argument is null ossp-eperl-ePerl_2_2_15/eperl_main.c:33:9: note: Calling function ePerl_SubstErrorLog, 2nd argument is null ossp-eperl-ePerl_2_2_15/eperl_sys.c:110:8: note: Dereferencing argument nBuf that is null ossp-eperl-ePerl_2_2_15/eperl_sys.c:108:33: error: Null pointer dereference: replace [ctunullpointer] ossp-eperl-ePerl_2_2_15/eperl_main.c:320:31: note: Calling function PrintError, 3rd argument is null ossp-eperl-ePerl_2_2_15/eperl_main.c:33:9: note: Calling function ePerl_SubstErrorLog, 3rd argument is null ossp-eperl-ePerl_2_2_15/eperl_sys.c:108:33: note: Dereferencing argument replace that is null diff: DONE