2026-05-05 15:45 ftp://ftp.de.debian.org/debian/pool/main/v/vdetelweb/vdetelweb_1.2.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-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: 6278f6b (2026-05-05 15:01:04 +0200) count: 60 60 elapsed-time: 0.7 0.6 head-timing-info: old-timing-info: head results: vdetelweb-1.2.4/telnet.c:88:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable HIST_PASSWDFLAG [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/telnet.c:139:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/telnet.c:153:2: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable vdehist_termread [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/telnet.c:162:2: style: Obsolescent function 'bzero' called. It is recommended to use 'memset' instead. [prohibitedbzeroCalled] vdetelweb-1.2.4/vdetelweb.c:92:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:105:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_WARNING [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:111:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MHASH_SHA1 [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:129:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIG_DFL [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:163:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIG_ERR [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:168:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:190:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PF_UNIX [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:212:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PF_UNIX [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:288:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:340:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:422:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:431:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable fd [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:454:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable fd [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:477:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _POSIX_PATH_MAX [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:538:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDWR [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:580:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable optarg [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/vdetelweb.c:224:12: style: Obsolescent function 'rindex' called. It is recommended to use 'strrchr' instead. [prohibitedrindexCalled] vdetelweb-1.2.4/vdetelweb.c:233:13: style: Obsolescent function 'index' called. It is recommended to use 'strchr' instead. [prohibitedindexCalled] vdetelweb-1.2.4/vdetelweb.c:286:12: style: Obsolescent function 'rindex' called. It is recommended to use 'strrchr' instead. [prohibitedrindexCalled] vdetelweb-1.2.4/vdetelweb.c:402:10: style: Obsolescent function 'rindex' called. It is recommended to use 'strrchr' instead. [prohibitedrindexCalled] vdetelweb-1.2.4/vdetelweb.c:655:13: warning: If memory allocation fails, then there is a possible null pointer dereference: conffile [nullPointerOutOfMemory] vdetelweb-1.2.4/vdetelweb.c:654:21: note: Assuming allocation function fails vdetelweb-1.2.4/vdetelweb.c:654:21: note: Assignment 'conffile=malloc(len)', assigned value is 0 vdetelweb-1.2.4/vdetelweb.c:655:13: note: Null pointer dereference vdetelweb-1.2.4/vdetelweb.c:443:8: style: Redundant initialization for 'i'. The initialized value is overwritten before it is read. [redundantInitialization] vdetelweb-1.2.4/vdetelweb.c:442:7: note: i is initialized vdetelweb-1.2.4/vdetelweb.c:443:8: note: i is overwritten vdetelweb-1.2.4/vdetelweb.c:536:8: style: Variable 'voidn' is reassigned a value before the old one has been used. [redundantAssignment] vdetelweb-1.2.4/vdetelweb.c:527:11: note: voidn is assigned vdetelweb-1.2.4/vdetelweb.c:536:8: note: voidn is overwritten vdetelweb-1.2.4/vdetelweb.c:167:25: style: Parameter 'progname' can be declared as pointer to const [constParameterPointer] vdetelweb-1.2.4/vdetelweb.c:173:22: style: Parameter 'ctrl' can be declared as pointer to const [constParameterPointer] vdetelweb-1.2.4/vdetelweb.c:173:33: style: Parameter 'nodename' can be declared as pointer to const [constParameterPointer] vdetelweb-1.2.4/vdetelweb.c:271:70: style: Parameter 'addr' can be declared as pointer to const [constParameterPointer] vdetelweb-1.2.4/vdetelweb.c:303:27: style: Variable 'in' can be declared as pointer to const [constVariablePointer] vdetelweb-1.2.4/vdetelweb.c:345:26: style: Variable 'in' can be declared as pointer to const [constVariablePointer] vdetelweb-1.2.4/vdetelweb.c:368:32: style: Parameter 'arg' can be declared as pointer to const. However it seems that 'readpassword' is a callback function, if 'arg' is declared with const you might also need to cast function pointer(s). [constParameterCallback] vdetelweb-1.2.4/vdetelweb.c:385:14: note: You might need to cast the function pointer here vdetelweb-1.2.4/vdetelweb.c:368:32: note: Parameter 'arg' can be declared as pointer to const vdetelweb-1.2.4/vdetelweb.c:388:24: style: Parameter 'path' can be declared as pointer to const [constParameterPointer] vdetelweb-1.2.4/vdetelweb.c:562:24: style: Variable 'long_options' can be declared as const array [constVariable] vdetelweb-1.2.4/vdetelweb.c:650:9: style: Variable 'homedir' can be declared as pointer to const [constVariablePointer] vdetelweb-1.2.4/vdetelweb.c:659:19: warning: Uninitialized variable: rv [uninitvar] vdetelweb-1.2.4/vdetelweb.c:651:7: note: Assuming condition is false vdetelweb-1.2.4/vdetelweb.c:659:19: note: Uninitialized variable: rv vdetelweb-1.2.4/vdetelweb.c:138:32: style: struct member 'Anonymous0::name' is never used. [unusedStructMember] vdetelweb-1.2.4/vdetelweb.c:197:8: style: Variable 'n' is assigned a value that is never used. [unreadVariable] vdetelweb-1.2.4/vdetelweb.c:227:8: style: Variable 'voidn' is assigned a value that is never used. [unreadVariable] vdetelweb-1.2.4/vdetelweb.c:536:8: style: Variable 'voidn' is assigned a value that is never used. [unreadVariable] vdetelweb-1.2.4/web.c:648:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/web.c:678:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/web.c:695:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] vdetelweb-1.2.4/web.c:376:15: style: Obsolescent function 'index' called. It is recommended to use 'strchr' instead. [prohibitedindexCalled] vdetelweb-1.2.4/web.c:698:2: style: Obsolescent function 'bzero' called. It is recommended to use 'memset' instead. [prohibitedbzeroCalled] vdetelweb-1.2.4/web.c:582:3: warning: sscanf() without field width limits can crash with huge input data. [invalidscanf] vdetelweb-1.2.4/web.c:587:3: warning: sscanf() without field width limits can crash with huge input data. [invalidscanf] vdetelweb-1.2.4/web.c:363:51: style: Parameter 'menu' can be declared as pointer to const [constParameterPointer] vdetelweb-1.2.4/web.c:367:17: style: Variable 'cmd' can be declared as pointer to const [constVariablePointer] vdetelweb-1.2.4/web.c:596:9: style: Variable 'passwd_buf_shift' can be declared as pointer to const [constVariablePointer] vdetelweb-1.2.4/web.c:169:7: style: Variable 'n' is assigned a value that is never used. [unreadVariable] vdetelweb-1.2.4/web.c:169:12: style: Variable 'ib' is assigned a value that is never used. [unreadVariable] vdetelweb-1.2.4/web.c:321:8: style: Variable 'voidn' is assigned a value that is never used. [unreadVariable] vdetelweb-1.2.4/web.c:369:14: style: Variable 'postcmd' is assigned a value that is never used. [unreadVariable] vdetelweb-1.2.4/web.c:398:10: style: Variable 'voidn' is assigned a value that is never used. [unreadVariable] vdetelweb-1.2.4/web.c:429:9: style: Variable 'voidn' is assigned a value that is never used. [unreadVariable] vdetelweb-1.2.4/web.c:527:10: style: Variable 'voidn' is assigned a value that is never used. [unreadVariable] vdetelweb-1.2.4/web.c:155:1: error: va_list 'arg' was opened but not closed by va_end(). [va_end_missing] diff: DONE