2026-05-01 23:44 ftp://ftp.de.debian.org/debian/pool/main/f/fuseiso/fuseiso_20070708.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --library=gtk --library=zlib --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 -j6 platform: Linux-7.0.3+deb14-amd64-x86_64-with-glibc2.42 python: 3.13.12 client-version: 1.4.0 compiler: g++ (Debian 15.2.0-17) 15.2.0 cppcheck: head 2.20.0 head-info: e5c4a734 (2026-05-01 11:10:43 +0200) count: 93 93 elapsed-time: 0.6 0.4 head-timing-info: old-timing-info: head results: fuseiso-20070708/src/fuseiso.c:65:39: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/fuseiso.c:74:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/fuseiso.c:96:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/fuseiso.c:116:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EIO [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/fuseiso.c:159:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PATH_MAX [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/fuseiso.c:299:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable VERSION [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/fuseiso.c:305:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LC_ALL [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/fuseiso.c:98:29: portability: Non reentrant function 'getpwuid' called. For threadsafe applications it is recommended to use the reentrant replacement function 'getpwuid_r'. [prohibitedgetpwuidCalled] fuseiso-20070708/src/fuseiso.c:101:9: error: Memory leak: mtab_path [memleak] fuseiso-20070708/src/fuseiso.c:126:9: error: Resource leak: fd [resourceLeak] fuseiso-20070708/src/fuseiso.c:131:9: error: Resource leak: fd [resourceLeak] fuseiso-20070708/src/fuseiso.c:143:9: error: Resource leak: fd [resourceLeak] fuseiso-20070708/src/fuseiso.c:149:9: error: Resource leak: fd [resourceLeak] fuseiso-20070708/src/fuseiso.c:171:9: error: Resource leak: fd [resourceLeak] fuseiso-20070708/src/fuseiso.c:179:9: error: Resource leak: fd [resourceLeak] fuseiso-20070708/src/fuseiso.c:184:9: error: Resource leak: fd [resourceLeak] fuseiso-20070708/src/fuseiso.c:103:5: warning: If memory allocation fails, then there is a possible null pointer dereference: mtab_path [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:96:37: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:96:23: note: Assignment 'mtab_path=(char*)malloc(PATH_MAX)', assigned value is 0 fuseiso-20070708/src/fuseiso.c:99:8: note: Assuming condition is false fuseiso-20070708/src/fuseiso.c:103:5: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:358:5: warning: If memory allocation fails, then there is a possible null pointer dereference: nargv [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:355:36: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:355:20: note: Assignment 'nargv=(char**)malloc((argc+2)*sizeof(char*))', assigned value is 0 fuseiso-20070708/src/fuseiso.c:358:5: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:370:24: warning: If memory allocation fails, then there is a possible null pointer dereference: str [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:369:43: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:369:29: note: Assignment 'str=(char*)malloc(strlen(argv[i+optind+1])+10)', assigned value is 0 fuseiso-20070708/src/fuseiso.c:370:24: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:371:24: warning: If memory allocation fails, then there is a possible null pointer dereference: str [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:369:43: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:369:29: note: Assignment 'str=(char*)malloc(strlen(argv[i+optind+1])+10)', assigned value is 0 fuseiso-20070708/src/fuseiso.c:371:24: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:376:13: warning: If memory allocation fails, then there is a possible null pointer dereference: nargv [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:355:36: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:355:20: note: Assignment 'nargv=(char**)malloc((argc+2)*sizeof(char*))', assigned value is 0 fuseiso-20070708/src/fuseiso.c:376:13: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:379:21: warning: If memory allocation fails, then there is a possible null pointer dereference: nargv [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:355:36: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:355:20: note: Assignment 'nargv=(char**)malloc((argc+2)*sizeof(char*))', assigned value is 0 fuseiso-20070708/src/fuseiso.c:379:21: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:379:47: warning: If memory allocation fails, then there is a possible null pointer dereference: nargv [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:355:36: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:355:20: note: Assignment 'nargv=(char**)malloc((argc+2)*sizeof(char*))', assigned value is 0 fuseiso-20070708/src/fuseiso.c:379:47: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:384:9: warning: If memory allocation fails, then there is a possible null pointer dereference: nargv [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:355:36: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:355:20: note: Assignment 'nargv=(char**)malloc((argc+2)*sizeof(char*))', assigned value is 0 fuseiso-20070708/src/fuseiso.c:384:9: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:386:9: warning: If memory allocation fails, then there is a possible null pointer dereference: nargv [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:355:36: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:355:20: note: Assignment 'nargv=(char**)malloc((argc+2)*sizeof(char*))', assigned value is 0 fuseiso-20070708/src/fuseiso.c:386:9: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:394:20: warning: If memory allocation fails, then there is a possible null pointer dereference: iocharset [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:393:40: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:393:25: note: Assignment 'iocharset=(char*)malloc(strlen(nlcharset)+9)', assigned value is 0 fuseiso-20070708/src/fuseiso.c:394:20: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:395:20: warning: If memory allocation fails, then there is a possible null pointer dereference: iocharset [nullPointerOutOfMemory] fuseiso-20070708/src/fuseiso.c:393:40: note: Assuming allocation function fails fuseiso-20070708/src/fuseiso.c:393:25: note: Assignment 'iocharset=(char*)malloc(strlen(nlcharset)+9)', assigned value is 0 fuseiso-20070708/src/fuseiso.c:395:20: note: Null pointer dereference fuseiso-20070708/src/fuseiso.c:98:20: style: Variable 'passwd' can be declared as pointer to const [constVariablePointer] fuseiso-20070708/src/fuseiso.c:226:64: style: Parameter 'fi' can be declared as pointer to const. However it seems that 'isofs_open' is a callback function, if 'fi' is declared with const you might also need to cast function pointer(s). [constParameterCallback] fuseiso-20070708/src/fuseiso.c:276:19: note: You might need to cast the function pointer here fuseiso-20070708/src/fuseiso.c:226:64: note: Parameter 'fi' can be declared as pointer to const fuseiso-20070708/src/fuseiso.c:237:73: style: Parameter 'fi' can be declared as pointer to const. However it seems that 'isofs_flush' is a callback function, if 'fi' is declared with const you might also need to cast function pointer(s). [constParameterCallback] fuseiso-20070708/src/fuseiso.c:278:19: note: You might need to cast the function pointer here fuseiso-20070708/src/fuseiso.c:237:73: note: Parameter 'fi' can be declared as pointer to const fuseiso-20070708/src/fuseiso.c:252:33: style: Parameter 'param' can be declared as pointer to const. However it seems that 'isofs_destroy' is a callback function, if 'param' is declared with const you might also need to cast function pointer(s). [constParameterCallback] fuseiso-20070708/src/fuseiso.c:280:19: note: You might need to cast the function pointer here fuseiso-20070708/src/fuseiso.c:252:33: note: Parameter 'param' can be declared as pointer to const fuseiso-20070708/src/fuseiso.c:259:67: style: Parameter 'fi' can be declared as pointer to const. However it seems that 'isofs_opendir' is a callback function, if 'fi' is declared with const you might also need to cast function pointer(s). [constParameterCallback] fuseiso-20070708/src/fuseiso.c:281:19: note: You might need to cast the function pointer here fuseiso-20070708/src/fuseiso.c:259:67: note: Parameter 'fi' can be declared as pointer to const fuseiso-20070708/src/fuseiso.c:391:15: style: Variable 'nlcharset' can be declared as pointer to const [constVariablePointer] fuseiso-20070708/src/isofs.h:110:45: style: Parameter 'p' can be declared as pointer to const [constParameterPointer] fuseiso-20070708/src/fuseiso.c:418:8: style: Variable 'rc' is assigned a value that is never used. [unreadVariable] fuseiso-20070708/src/isofs.c:70:63: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable iso_volume_descriptor [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:354:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENOMEM [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:448:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:471:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:508:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:550:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable S_IRUSR [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:611:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NAME_MAX [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:676:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENOMEM [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:779:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:1339:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:1351:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:1566:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENOENT [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:1581:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:1596:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:1638:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ENOMEM [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:1735:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:1810:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ISOFS_SUPER_MAGIC [valueFlowBailoutIncompleteVar] fuseiso-20070708/src/isofs.c:1078:42: style:inconclusive: Boolean expression '!nm_flags' is used in bitwise operation. Did you mean '&&'? [bitwiseOnBoolean] fuseiso-20070708/src/isofs.c:576:22: style: Obsolescent function 'index' called. It is recommended to use 'strchr' instead. [prohibitedindexCalled] fuseiso-20070708/src/isofs.c:580:22: style: Obsolescent function 'rindex' called. It is recommended to use 'strrchr' instead. [prohibitedrindexCalled] fuseiso-20070708/src/isofs.c:1078:42: style: Boolean result is used in bitwise operation. Clarify expression with parentheses. [clarifyCondition] fuseiso-20070708/src/isofs.c:1028:37: style: Condition 'inode->sl' is always false [knownConditionTrueFalse] fuseiso-20070708/src/isofs.c:1026:54: note: Assuming that condition '!inode->sl' is not redundant fuseiso-20070708/src/isofs.c:1028:37: note: Condition 'inode->sl' is always false fuseiso-20070708/src/isofs.c:101:13: portability: %d in format string (no. 1) requires 'int' but the argument type is 'ssize_t {aka signed long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:101:13: portability: %d in format string (no. 3) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:152:13: portability: %d in format string (no. 1) requires 'int' but the argument type is 'ssize_t {aka signed long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:152:13: portability: %d in format string (no. 3) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:181:29: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:327:9: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:369:9: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:374:9: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:380:9: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:380:9: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:482:9: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:482:9: portability: %d in format string (no. 3) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:1058:29: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:1123:25: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:1128:25: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:1134:25: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:1134:25: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:1427:21: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:1433:17: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:1439:17: portability: %d in format string (no. 1) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:1439:17: portability: %d in format string (no. 2) requires 'int' but the argument type is 'size_t {aka unsigned long}'. [invalidPrintfArgType_sint] fuseiso-20070708/src/isofs.c:1643:9: error: Memory leak: cbuf [memleak] fuseiso-20070708/src/isofs.c:378:15: style: Checking if unsigned expression 'sa_len' is less than zero. [unsignedLessThanZero] fuseiso-20070708/src/isofs.c:1132:31: style: Checking if unsigned expression 'sa_len' is less than zero. [unsignedLessThanZero] fuseiso-20070708/src/isofs.c:1437:23: style: Checking if unsigned expression 'sa_len' is less than zero. [unsignedLessThanZero] fuseiso-20070708/src/isofs.c:1119:28: style: Local variable 'sa_len' shadows outer argument [shadowArgument] fuseiso-20070708/src/isofs.c:758:64: note: Shadowed declaration fuseiso-20070708/src/isofs.c:1119:28: note: Shadow variable fuseiso-20070708/src/isofs.c:91:9: style: Variable 'iso_offsets' can be declared as const array [constVariable] fuseiso-20070708/src/isofs.c:105:15: style: Variable 'vd_id' can be declared as pointer to const [constVariablePointer] fuseiso-20070708/src/isofs.c:439:12: style: Variable 'part' can be declared as pointer to const [constVariablePointer] fuseiso-20070708/src/isofs.c:494:32: style: Parameter 'stamp' can be declared as pointer to const [constParameterPointer] fuseiso-20070708/src/isofs.c:691:21: style: Variable 'zf_header' can be declared as pointer to const [constVariablePointer] fuseiso-20070708/src/isofs.c:911:50: style: Variable 'comp' can be declared as pointer to const [constVariablePointer] fuseiso-20070708/src/isofs.c:1337:18: style: Variable 'inode' can be declared as pointer to const [constVariablePointer] fuseiso-20070708/src/isofs.c:1579:18: style: Variable 'inode' can be declared as pointer to const [constVariablePointer] fuseiso-20070708/src/isofs.c:1594:18: style: Variable 'inode' can be declared as pointer to const [constVariablePointer] fuseiso-20070708/src/isofs.c:1235:33: style: Variable 'stamp_no' is assigned a value that is never used. [unreadVariable] diff: DONE