2025-05-09 13:49 ftp://ftp.de.debian.org/debian/pool/main/b/bubblewrap/bubblewrap_0.11.0.orig.tar.xz 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 -j3 platform: Linux-6.8.0-1022-oracle-aarch64-with-glibc2.39 python: 3.12.3 client-version: 1.3.67 compiler: g++ (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 cppcheck: head 2.17.0 head-info: d655a3a (2025-05-09 12:19:47 +0200) count: 103 107 elapsed-time: 4.1 4.3 head-timing-info: old-timing-info: head results: bubblewrap-0.11.0/network.c:53:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AF_NETLINK [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/network.c:74:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/network.c:129:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable NLM_F_REQUEST [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/network.c:142:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AF_NETLINK [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bind-mount.c:92:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MS_RDONLY [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bind-mount.c:398:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable MS_BIND [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bind-mount.c:564:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/network.c:51:37: style: Parameter 'header' can be declared as pointer to const [constParameterPointer] bubblewrap-0.11.0/network.c:87:25: style: Variable 'err' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:291:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:386:37: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PR_SET_PDEATHSIG [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:399:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIG_BLOCK [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:415:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIG_UNBLOCK [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:476:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:526:36: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SFD_CLOEXEC [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:605:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDONLY [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:688:43: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _LINUX_CAPABILITY_VERSION_3 [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:705:43: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _LINUX_CAPABILITY_VERSION_3 [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:745:43: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _LINUX_CAPABILITY_VERSION_3 [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:770:24: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CAP_LAST_CAP [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:892:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable _LINUX_CAPABILITY_VERSION_3 [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:927:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PR_SET_KEEPCAPS [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:951:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PR_SET_DUMPABLE [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:975:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_PATH [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:1068:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:1209:49: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:1634:49: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:1691:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:1717:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PACKAGE_STRING [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:1731:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_WARNING [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:1790:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:2794:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable AT_FDCWD [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:2819:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_PATH [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bubblewrap.c:2908:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PR_SET_NO_NEW_PRIVS [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bind-mount.c:319:5: warning: If memory allocation fails, then there is a possible null pointer dereference: by_id [nullPointerOutOfMemory] bubblewrap-0.11.0/bind-mount.c:317:19: note: Assuming allocation function fails bubblewrap-0.11.0/bind-mount.c:317:19: note: Assignment 'by_id=xcalloc(max_id+1,sizeof(struct MountInfoLine*))', assigned value is 0 bubblewrap-0.11.0/bind-mount.c:319:5: note: Null pointer dereference bubblewrap-0.11.0/bind-mount.c:324:31: warning: If memory allocation fails, then there is a possible null pointer dereference: by_id [nullPointerOutOfMemory] bubblewrap-0.11.0/bind-mount.c:317:19: note: Assuming allocation function fails bubblewrap-0.11.0/bind-mount.c:317:19: note: Assignment 'by_id=xcalloc(max_id+1,sizeof(struct MountInfoLine*))', assigned value is 0 bubblewrap-0.11.0/bind-mount.c:324:31: note: Null pointer dereference bubblewrap-0.11.0/tests/try-syscall.c:90:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EBADF [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/bind-mount.c:237:14: style: Variable 'end_tab' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bind-mount.c:390:22: style: Variable 'dest_proc' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bind-mount.c:391:22: style: Variable 'oldroot_dest_proc' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bind-mount.c:561:9: style: Variable 'message' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/tests/try-syscall.c:126:23: error: Invalid ioctl() argument nr 1. The value is -1 but the valid values are '0:'. [invalidFunctionArg] bubblewrap-0.11.0/tests/try-syscall.c:157:24: error: Invalid listen() argument nr 1. The value is -1 but the valid values are '0:'. [invalidFunctionArg] bubblewrap-0.11.0/utils.c:47:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:75:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:90:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:105:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable LOG_ERR [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:128:29: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:381:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_DIRECTORY [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:438:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:463:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_RDWR [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:488:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:521:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:542:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:569:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_CLOEXEC [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:611:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SSIZE_MAX [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:650:8: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable O_CLOEXEC [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:689:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:714:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:761:60: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ucred [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:790:45: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SOCK_CLOEXEC [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:803:60: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable ucred [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:845:18: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIZE_MAX [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:884:25: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable __NR_clone [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:894:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:970:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIZE_MAX [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:990:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable SIZE_MAX [valueFlowBailoutIncompleteVar] bubblewrap-0.11.0/utils.c:389:20: portability: Non reentrant function 'readdir' called. For threadsafe applications it is recommended to use the reentrant replacement function 'readdir_r'. [prohibitedreaddirCalled] bubblewrap-0.11.0/utils.c:743:21: style: Redundant condition: The condition '*p' is redundant since '*p == '/'' is sufficient. [redundantCondition] bubblewrap-0.11.0/utils.c:721:11: warning: If memory allocation fails, then there is a possible null pointer dereference: p [nullPointerOutOfMemory] bubblewrap-0.11.0/utils.c:718:16: note: Assuming allocation function fails bubblewrap-0.11.0/utils.c:718:16: note: Assignment 'fn=xstrdup(pathname)', assigned value is 0 bubblewrap-0.11.0/utils.c:720:7: note: Assignment 'p=fn', assigned value is 0 bubblewrap-0.11.0/utils.c:721:11: note: Null pointer dereference bubblewrap-0.11.0/utils.c:455:28: style:inconclusive: Function 'write_file_at' argument 1 names different: declaration 'dirfd' definition 'dfd'. [funcArgNamesDifferent] bubblewrap-0.11.0/utils.h:112:34: note: Function 'write_file_at' argument 1 names different: declaration 'dirfd' definition 'dfd'. bubblewrap-0.11.0/utils.c:455:28: note: Function 'write_file_at' argument 1 names different: declaration 'dirfd' definition 'dfd'. bubblewrap-0.11.0/utils.c:643:27: style:inconclusive: Function 'load_file_at' argument 1 names different: declaration 'dirfd' definition 'dfd'. [funcArgNamesDifferent] bubblewrap-0.11.0/utils.h:110:33: note: Function 'load_file_at' argument 1 names different: declaration 'dirfd' definition 'dfd'. bubblewrap-0.11.0/utils.c:643:27: note: Function 'load_file_at' argument 1 names different: declaration 'dirfd' definition 'dfd'. bubblewrap-0.11.0/utils.c:756:25: style:inconclusive: Function 'send_pid_on_socket' argument 1 names different: declaration 'socket' definition 'sockfd'. [funcArgNamesDifferent] bubblewrap-0.11.0/utils.h:135:30: note: Function 'send_pid_on_socket' argument 1 names different: declaration 'socket' definition 'sockfd'. bubblewrap-0.11.0/utils.c:756:25: note: Function 'send_pid_on_socket' argument 1 names different: declaration 'socket' definition 'sockfd'. bubblewrap-0.11.0/utils.c:798:27: style:inconclusive: Function 'read_pid_from_socket' argument 1 names different: declaration 'socket' definition 'sockfd'. [funcArgNamesDifferent] bubblewrap-0.11.0/utils.h:136:32: note: Function 'read_pid_from_socket' argument 1 names different: declaration 'socket' definition 'sockfd'. bubblewrap-0.11.0/utils.c:798:27: note: Function 'read_pid_from_socket' argument 1 names different: declaration 'socket' definition 'sockfd'. bubblewrap-0.11.0/utils.c:387:22: style: Variable 'de' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:2919:20: portability: Non reentrant function 'ttyname' called. For threadsafe applications it is recommended to use the reentrant replacement function 'ttyname_r'. [prohibitedttynameCalled] bubblewrap-0.11.0/bubblewrap.c:975:29: warning: If memory allocation fails, then there is a possible null pointer dereference: dir [nullPointerOutOfMemory] bubblewrap-0.11.0/bubblewrap.c:971:19: note: Assuming allocation function fails bubblewrap-0.11.0/bubblewrap.c:971:19: note: Assignment 'dir=xstrdup("self")', assigned value is 0 bubblewrap-0.11.0/bubblewrap.c:975:29: note: Null pointer dereference bubblewrap-0.11.0/bubblewrap.c:423:8: style: Variable 'extra_fds' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:472:22: style: Variable 'output' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:759:23: style: Parameter 'caps' can be declared as pointer to const [constParameterPointer] bubblewrap-0.11.0/bubblewrap.c:964:22: style: Variable 'uid_map' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:965:22: style: Variable 'gid_map' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1127:28: style: Variable 'mode' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1197:26: style: Variable 'source' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1381:34: style: Variable 'node_dest' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1382:34: style: Variable 'node_src' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1393:34: style: Variable 'target' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1394:34: style: Variable 'node_dest' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1410:32: style: Variable 'pts' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1411:32: style: Variable 'ptmx' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1412:32: style: Variable 'shm' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1433:34: style: Variable 'src_tty_dev' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1434:34: style: Variable 'dest_console' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:1663:33: style: Parameter 'buffer' can be declared as pointer to const [constParameterPointer] bubblewrap-0.11.0/bubblewrap.c:2791:22: style: Variable 'uid_data' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:2792:22: style: Variable 'gid_data' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:2826:13: style: Variable 'do_unshare' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:2852:26: style: Variable 'output' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:2888:22: style: Variable 'args_data' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:2991:30: style: Variable 'enable' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:3000:30: style: Variable 'max_user_ns' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:3185:30: style: Variable 'output' can be declared as pointer to const [constVariablePointer] bubblewrap-0.11.0/bubblewrap.c:3193:30: style: Variable 'output' can be declared as pointer to const [constVariablePointer] diff: 2.17.0 bubblewrap-0.11.0/utils.c:320:4: warning: If memory allocation fails, then there is a possible null pointer dereference: res [nullPointerOutOfMemory] bubblewrap-0.11.0/utils.c:319:17: note: Assuming allocation function fails bubblewrap-0.11.0/utils.c:319:17: note: Assignment 'res=xmalloc(len+1)', assigned value is 0 bubblewrap-0.11.0/utils.c:320:4: note: Null pointer dereference 2.17.0 bubblewrap-0.11.0/utils.c:324:13: warning: If memory allocation fails, then there is a possible null pointer dereference: res [nullPointerOutOfMemory] bubblewrap-0.11.0/utils.c:319:17: note: Assuming allocation function fails bubblewrap-0.11.0/utils.c:319:17: note: Assignment 'res=xmalloc(len+1)', assigned value is 0 bubblewrap-0.11.0/utils.c:324:13: note: Null pointer dereference 2.17.0 bubblewrap-0.11.0/utils.c:345:4: warning: If memory allocation fails, then there is a possible null pointer dereference: res [nullPointerOutOfMemory] bubblewrap-0.11.0/utils.c:344:17: note: Assuming allocation function fails bubblewrap-0.11.0/utils.c:344:17: note: Assignment 'res=xmalloc(len+1)', assigned value is 0 bubblewrap-0.11.0/utils.c:345:4: note: Null pointer dereference 2.17.0 bubblewrap-0.11.0/utils.c:351:13: warning: If memory allocation fails, then there is a possible null pointer dereference: res [nullPointerOutOfMemory] bubblewrap-0.11.0/utils.c:344:17: note: Assuming allocation function fails bubblewrap-0.11.0/utils.c:344:17: note: Assignment 'res=xmalloc(len+1)', assigned value is 0 bubblewrap-0.11.0/utils.c:351:13: note: Null pointer dereference DONE