Newly introduced defects

List of Defects

Error: SHELLCHECK_WARNING (CWE-457): [#def1]
/usr/bin/dracut:1280:42: warning[SC2154]: acpi_override is referenced but not assigned.
# 1278|   mkdir -p "$initdir"
# 1279|   
# 1280|-> if [[ $early_microcode == yes ]] || { [[ $acpi_override == yes ]] && [[ -d $acpi_table_dir ]]; }; then
# 1281|       readonly early_cpio_dir="${DRACUT_TMPDIR}/earlycpio"
# 1282|       mkdir "$early_cpio_dir"

Error: SHELLCHECK_WARNING (CWE-457): [#def2]
/usr/bin/dracut:1280:76: warning[SC2154]: acpi_table_dir is referenced but not assigned.
# 1278|   mkdir -p "$initdir"
# 1279|   
# 1280|-> if [[ $early_microcode == yes ]] || { [[ $acpi_override == yes ]] && [[ -d $acpi_table_dir ]]; }; then
# 1281|       readonly early_cpio_dir="${DRACUT_TMPDIR}/earlycpio"
# 1282|       mkdir "$early_cpio_dir"

Error: SHELLCHECK_WARNING (CWE-457): [#def3]
/usr/bin/dracut:1336:39: warning[SC2154]: srcmods is referenced but not assigned.
# 1334|   fi
# 1335|   
# 1336|-> if [[ $no_kernel != yes ]] && ! [[ -d $srcmods ]]; then
# 1337|       dfatal "Cannot find module directory $srcmods"
# 1338|       dfatal "and --no-kernel was not specified"

Error: SHELLCHECK_WARNING (CWE-457): [#def4]
/usr/bin/dracut:1427:41: warning[SC2154]: dbus is referenced but not assigned.
# 1425|   set_global_var "dbus" "dbus" "/usr/share/dbus-1"
# 1426|   set_global_var "dbus" "dbusconfdir" "/etc/dbus-1"
# 1427|-> set_global_var "dbus" "dbusinterfaces" "${dbus}/interfaces"
# 1428|   set_global_var "dbus" "dbusinterfacesconfdir" "${dbusconfdir}/interfaces"
# 1429|   set_global_var "dbus" "dbusservices" "${dbus}/services"

Error: SHELLCHECK_WARNING (CWE-457): [#def5]
/usr/bin/dracut:1428:48: warning[SC2154]: dbusconfdir is referenced but not assigned.
# 1426|   set_global_var "dbus" "dbusconfdir" "/etc/dbus-1"
# 1427|   set_global_var "dbus" "dbusinterfaces" "${dbus}/interfaces"
# 1428|-> set_global_var "dbus" "dbusinterfacesconfdir" "${dbusconfdir}/interfaces"
# 1429|   set_global_var "dbus" "dbusservices" "${dbus}/services"
# 1430|   set_global_var "dbus" "dbusservicesconfdir" "${dbusconfdir}/services"

Error: SHELLCHECK_WARNING (CWE-457): [#def6]
/usr/bin/dracut:1441:39: warning[SC2154]: udevdir is referenced but not assigned.
# 1439|   set_global_var "udev" "udevdir" "/lib/udev:/lib/udev/ata_id" "/usr/lib/udev:/usr/lib/udev/ata_id"
# 1440|   set_global_var "udev" "udevconfdir" "/etc/udev"
# 1441|-> set_global_var "udev" "udevrulesdir" "${udevdir}/rules.d"
# 1442|   set_global_var "udev" "udevrulesconfdir" "${udevconfdir}/rules.d"
# 1443|   

Error: SHELLCHECK_WARNING (CWE-457): [#def7]
/usr/bin/dracut:1442:43: warning[SC2154]: udevconfdir is referenced but not assigned.
# 1440|   set_global_var "udev" "udevconfdir" "/etc/udev"
# 1441|   set_global_var "udev" "udevrulesdir" "${udevdir}/rules.d"
# 1442|-> set_global_var "udev" "udevrulesconfdir" "${udevconfdir}/rules.d"
# 1443|   
# 1444|   # systemd global variables

Error: SHELLCHECK_WARNING (CWE-457): [#def8]
/usr/bin/dracut:1456:51: warning[SC2154]: systemdutilconfdir is referenced but not assigned.
# 1454|   set_global_var "systemd" "systemdcatalog" "${systemdutildir}/catalog"
# 1455|   set_global_var "systemd" "systemdnetwork" "${systemdutildir}/network"
# 1456|-> set_global_var "systemd" "systemdnetworkconfdir" "${systemdutilconfdir}/network"
# 1457|   set_global_var "systemd" "systemdntpunits" "${systemdutildir}/ntp-units.d"
# 1458|   set_global_var "systemd" "systemdntpunitsconfdir" "${systemdutilconfdir}/ntp-units.d"

Error: SHELLCHECK_WARNING (CWE-457): [#def9]
/usr/bin/dracut:1536:41: warning[SC2154]: systemdprefix is referenced but not assigned.
# 1534|   
# 1535|           if ! [[ -s $uefi_stub ]]; then
# 1536|->             uefi_stub="$dracutsysrootdir${systemdprefix}/lib/systemd/boot/efi/linux${EFI_MACHINE_TYPE_NAME}.efi.stub"
# 1537|           fi
# 1538|   

Error: SHELLCHECK_WARNING (CWE-457): [#def10]
/usr/bin/dracut:1886:15: warning[SC2154]: hookdirs is referenced but not assigned.
# 1884|       mkdir -p "${initdir}/etc/cmdline.d"
# 1885|       mkdir -m 0755 "${initdir}"/lib/dracut/hooks
# 1886|->     for _d in $hookdirs; do
# 1887|           # shellcheck disable=SC2174
# 1888|           mkdir -m 0755 -p "${initdir}/lib/dracut/hooks/$_d"

Error: SHELLCHECK_WARNING (CWE-457): [#def11]
/usr/bin/dracut:2030:55: warning[SC2154]: systemdsystemunitdir is referenced but not assigned.
# 2028|               {
# 2029|                   printf "%s\n" "systemdutildir=\"$systemdutildir\""
# 2030|->                 printf "%s\n" "systemdsystemunitdir=\"$systemdsystemunitdir\""
# 2031|                   printf "%s\n" "systemdsystemconfdir=\"$systemdsystemconfdir\""
# 2032|               } > "${initdir}"/etc/conf.d/systemd.conf

Error: SHELLCHECK_WARNING (CWE-457): [#def12]
/usr/bin/dracut:2031:55: warning[SC2154]: systemdsystemconfdir is referenced but not assigned.
# 2029|                   printf "%s\n" "systemdutildir=\"$systemdutildir\""
# 2030|                   printf "%s\n" "systemdsystemunitdir=\"$systemdsystemunitdir\""
# 2031|->                 printf "%s\n" "systemdsystemconfdir=\"$systemdsystemconfdir\""
# 2032|               } > "${initdir}"/etc/conf.d/systemd.conf
# 2033|           fi

Error: SHELLCHECK_WARNING (CWE-457): [#def13]
/usr/bin/dracut:2454:6: warning[SC2154]: maxloglvl is referenced but not assigned.
# 2452|   fi
# 2453|   
# 2454|-> if ((maxloglvl >= 5)) && ((verbosity_mod_l >= 0)); then
# 2455|       if [[ $allowlocal ]]; then
# 2456|           "$dracutbasedir/lsinitrd.sh" "${DRACUT_TMPDIR}/initramfs.img" | ddebug

Error: SHELLCHECK_WARNING (CWE-457): [#def14]
/usr/lib/dracut/dracut-functions.sh:57:18: warning[SC2154]: libdirs is referenced but not assigned.
#   55|   
#   56|       if [[ $1 == *.so* ]]; then
#   57|->         for l in $libdirs; do
#   58|               _path="${l}${_delim}${1}"
#   59|               if { $DRACUT_LDD "${dracutsysrootdir}${_path}" &> /dev/null; }; then

Error: SHELLCHECK_WARNING (CWE-457): [#def15]
/usr/lib/dracut/dracut-init.sh:61:10: warning[SC2154]: dracutsysrootdir is referenced but not assigned.
#   59|   fi
#   60|   
#   61|-> srcmods="$dracutsysrootdir/lib/modules/$kernel/"
#   62|   
#   63|   [[ $drivers_dir ]] && {

Error: SHELLCHECK_WARNING (CWE-457): [#def16]
/usr/lib/dracut/dracut-init.sh:108:25: warning[SC2154]: moddir is referenced but not assigned (did you mean '_moddir'?).
#  106|   # issues a standardized warning message
#  107|   require_binaries() {
#  108|->     local _module_name="${moddir##*/}"
#  109|       local _ret=0
#  110|   

Error: SHELLCHECK_WARNING (CWE-457): [#def17]
/usr/lib/dracut/dracut-init.sh:178:24: warning[SC2154]: modules_loaded is referenced but not assigned.
#  176|   
#  177|   dracut_module_included() {
#  178|->     [[ " $mods_to_load $modules_loaded " == *\ $*\ * ]]
#  179|   }
#  180|   

Error: SHELLCHECK_WARNING (CWE-457): [#def18]
/usr/lib/dracut/dracut-init.sh:387:11: warning[SC2154]: hostonly_mode is referenced but not assigned.
#  385|   # given modules.
#  386|   optional_hostonly() {
#  387|->     if [[ $hostonly_mode == "strict" ]]; then
#  388|           printf -- "%s" "$hostonly"
#  389|       else

Error: SHELLCHECK_WARNING (CWE-457): [#def19]
/usr/lib/dracut/dracut-init.sh:438:18: warning[SC2154]: udevdir is referenced but not assigned.
#  436|       for _prog in $(sed -nr 's/.*PROGRAM==?"([^ "]+).*/\1/p' "$1"); do
#  437|           _bin=""
#  438|->         if [[ -x ${udevdir}/$_prog ]]; then
#  439|               _bin="${udevdir}"/$_prog
#  440|           elif [[ ${_prog/\$env\{/} == "$_prog" ]]; then

Error: SHELLCHECK_WARNING (CWE-457): [#def20]
/usr/lib/dracut/dracut-init.sh:878:8: warning[SC2154]: host_fs_types is referenced but not assigned.
#  876|   
#  877|       [[ -z $_moddir ]] && _moddir=$(dracut_module_path "$1")
#  878|->     [ "${#host_fs_types[@]}" -le 0 ] && return 1
#  879|   
#  880|       # If we are already scheduled to be loaded, no need to check again.

Error: SHELLCHECK_WARNING (CWE-457): [#def21]
/usr/lib/dracut/dracut-init.sh:889:13: warning[SC2154]: omit_dracutmodules is referenced but not assigned.
#  887|       [[ $2 ]] || mods_checked_as_dep+=" $_mod "
#  888|   
#  889|->     if [[ " $omit_dracutmodules " == *\ $_mod\ * ]]; then
#  890|           return 1
#  891|       fi

Error: SHELLCHECK_WARNING (CWE-457): [#def22]
/usr/lib/dracut/modules.d/62bluetooth/module-setup.sh:62:10: warning[SC2154]: dbussystemservices is referenced but not assigned.
#   60|       inst_multiple -o \
#   61|           "$dbussystem"/bluetooth.conf \
#   62|->         "$dbussystemservices"/org.bluez.service \
#   63|           "${systemdsystemunitdir}/bluetooth.target" \
#   64|           "${systemdsystemunitdir}/bluetooth.service" \

Error: SHELLCHECK_WARNING (CWE-457): [#def23]
/usr/lib/dracut/modules.d/90dmsquash-live-autooverlay/create-overlay-genrules.sh:3:7: warning[SC2154]: root is referenced but not assigned.
#    1|   #!/usr/bin/sh
#    2|   
#    3|-> case "$root" in
#    4|       live:/dev/*)
#    5|           printf 'SYMLINK=="%s", RUN+="/sbin/initqueue --settled --onetime --unique /sbin/create-overlay %s"\n' \

Error: SHELLCHECK_WARNING: [#def24]
/usr/lib/dracut/modules.d/91crypt-gpg/crypt-gpg-lib.sh:44:9: warning[SC3043]: In POSIX sh, 'local' is undefined.
#   42|           GNUPGHOME="$gpghome" gpg-agent --quiet --daemon
#   43|           GNUPGHOME="$gpghome" gpg --quiet --no-tty --import < /root/crypt-public-key.gpg
#   44|->         local smartcardSerialNumber
#   45|           smartcardSerialNumber="$(GNUPGHOME=$gpghome gpg --no-tty --card-status \
#   46|               | sed -n -r -e 's|Serial number.*: ([0-9]*)|\1|p' | tr -d '\n')"

Error: SHELLCHECK_WARNING (CWE-457): [#def25]
/usr/lib/dracut/modules.d/95cifs/cifsroot.sh:16:15: warning[SC2154]: server is referenced but not assigned.
#   14|   cifs_to_var "$root"
#   15|   
#   16|-> mount.cifs "//$server/$path" "$NEWROOT" -o "$options" && { [ -e /dev/root ] || ln -s null /dev/root; }
#   17|   
#   18|   # inject new exit_if_exists

Error: SHELLCHECK_WARNING (CWE-457): [#def26]
/usr/lib/dracut/modules.d/95cifs/cifsroot.sh:16:23: warning[SC2154]: path is referenced but not assigned.
#   14|   cifs_to_var "$root"
#   15|   
#   16|-> mount.cifs "//$server/$path" "$NEWROOT" -o "$options" && { [ -e /dev/root ] || ln -s null /dev/root; }
#   17|   
#   18|   # inject new exit_if_exists

Error: SHELLCHECK_WARNING (CWE-457): [#def27]
/usr/lib/dracut/modules.d/95cifs/cifsroot.sh:16:45: warning[SC2154]: options is referenced but not assigned.
#   14|   cifs_to_var "$root"
#   15|   
#   16|-> mount.cifs "//$server/$path" "$NEWROOT" -o "$options" && { [ -e /dev/root ] || ln -s null /dev/root; }
#   17|   
#   18|   # inject new exit_if_exists

Error: SHELLCHECK_WARNING (CWE-457): [#def28]
/usr/lib/dracut/modules.d/95cifs/cifsroot.sh:20:79: warning[SC2154]: hookdir is referenced but not assigned.
#   18|   # inject new exit_if_exists
#   19|   # shellcheck disable=SC2016
#   20|-> echo 'settle_exit_if_exists="--exit-if-exists=/dev/root"; rm -f -- "$job"' > "$hookdir"/initqueue/cifs.sh
#   21|   # force udevsettle to break
#   22|   : > "$hookdir"/initqueue/work

Error: SHELLCHECK_WARNING (CWE-457): [#def29]
/usr/lib/dracut/modules.d/95nfs/module-setup.sh:79:93: warning[SC2154]: tmpfilesdir is referenced but not assigned.
#   77|   install() {
#   78|       local _nsslibs
#   79|->     inst_multiple -o rpc.idmapd mount.nfs mount.nfs4 umount sed /etc/netconfig chmod chown "$tmpfilesdir/rpcbind.conf"
#   80|       inst_multiple -o /etc/idmapd.conf
#   81|       inst_multiple -o /etc/services /etc/nsswitch.conf /etc/rpc /etc/protocols

Error: SHELLCHECK_WARNING (CWE-457): [#def30]
/usr/lib/dracut/modules.d/95rootfs-block/block-genrules.sh:3:7: warning[SC2154]: root is referenced but not assigned.
#    1|   #!/usr/bin/sh
#    2|   
#    3|-> if [ "${root%%:*}" = "block" ]; then
#    4|       {
#    5|           printf 'KERNEL=="%s", SYMLINK+="root"\n' \

Error: SHELLCHECK_WARNING (CWE-457): [#def31]
/usr/lib/dracut/modules.d/95rootfs-block/block-genrules.sh:13:46: warning[SC2154]: hookdir is referenced but not assigned.
#   11|       # shellcheck disable=SC2016
#   12|       printf '[ -e "%s" ] && { ln -s "%s" /dev/root 2>/dev/null; rm "$job"; }\n' \
#   13|->         "${root#block:}" "${root#block:}" > "$hookdir"/initqueue/settled/blocksymlink.sh
#   14|   
#   15|       wait_for_dev "${root#block:}"

Error: SHELLCHECK_WARNING (CWE-457): [#def32]
/usr/lib/dracut/modules.d/98dracut-systemd/module-setup.sh:55:49: warning[SC2154]: tmpfilesdir is referenced but not assigned.
#   53|       done
#   54|   
#   55|->     inst_simple "$moddir/dracut-tmpfiles.conf" "$tmpfilesdir/dracut-tmpfiles.conf"
#   56|   
#   57|       inst_multiple sulogin

Error: SHELLCHECK_WARNING (CWE-457): [#def33]
/usr/lib/dracut/modules.d/98dracut-systemd/parse-root.sh:22:16: warning[SC2154]: hookdir is referenced but not assigned.
#   20|       root_dev="${root#block:}"
#   21|       root_name="$(str_replace "$root_dev" '/' '\x2f')"
#   22|->     if ! [ -e "$hookdir/initqueue/finished/devexists-${root_name}.sh" ]; then
#   23|   
#   24|           # If a LUKS device needs unlocking via systemd in the initrd, assume

Error: SHELLCHECK_WARNING: [#def34]
/usr/lib/dracut/modules.d/99base/dracut-lib.sh:1147:5: warning[SC3043]: In POSIX sh, 'local' is undefined.
# 1145|   # modprobe fails if /lib/modules is not available (--no-kernel use case)
# 1146|   load_fstype() {
# 1147|->     local - fs _fs="${2:-$1}"
# 1148|       set +x
# 1149|       while read -r d fs || [ "$d" ]; do

Error: SHELLCHECK_WARNING (CWE-563): [#def35]
/usr/lib/kernel/install.d/50-dracut.install:22:5: warning[SC2034]: INITRD appears unused. Verify use (or export if used externally).
#   20|   
#   21|   if [[ -d "$BOOT_DIR_ABS" ]]; then
#   22|->     INITRD="initrd"
#   23|   else
#   24|       # No layout information, use users --uefi/--no-uefi preference

Error: SHELLCHECK_WARNING (CWE-457): [#def36]
/usr/lib/kernel/install.d/51-dracut-rescue.install:108:15: warning[SC2154]: dracut_rescue_image is referenced but not assigned.
#  106|           done
#  107|   
#  108|->         if [[ $dracut_rescue_image != "yes" ]]; then
#  109|               [[ $KERNEL_INSTALL_VERBOSE == 1 ]] \
#  110|                   && echo "Skipping, 'dracut_rescue_image' not set to 'yes' in any dracut configuration file"

Error: COMPILER_WARNING (CWE-457): [#def37]
dracut-060/src/install/dracut-install.c:148:12: warning[-Wmaybe-uninitialized]: ‘fts’ may be used uninitialized
#  148 |         if (*p)
#      |            ^
dracut-060/src/install/dracut-install.c: scope_hint: In function ‘install_modules’
dracut-060/src/install/dracut-install.c:1582:34: note: ‘fts’ was declared here
# 1582 |         _cleanup_fts_close_ FTS *fts;
#      |                                  ^~~
#  146|   static inline void fts_closep(FTS **p)
#  147|   {
#  148|->         if (*p)
#  149|                   fts_close(*p);
#  150|   }

Error: COMPILER_WARNING: [#def38]
dracut-060/src/install/dracut-install.c: scope_hint: In function ‘find_suppliers_for_sys_node’
dracut-060/src/install/dracut-install.c:1576:17: warning[-Wstringop-overflow=]: ‘strncat’ specified bound 3 equals source length
# 1574|                           closedir(d);
# 1575|                   }
# 1576|->                 strncat(node_path, "/..", 3); // Also find suppliers of parents
# 1577|           }
# 1578|   }

Scan Properties

analyzer-version-clang18.1.3
analyzer-version-cppcheck2.13.0
analyzer-version-gcc14.0.1
analyzer-version-gcc-analyzer14.0.1
analyzer-version-shellcheck0.10.0
diffbase-analyzer-version-clang18.1.3
diffbase-analyzer-version-cppcheck2.13.0
diffbase-analyzer-version-gcc14.0.1
diffbase-analyzer-version-gcc-analyzer14.0.1
diffbase-analyzer-version-shellcheck0.10.0
diffbase-enabled-pluginsclang, cppcheck, gcc, shellcheck
diffbase-exit-code0
diffbase-hostip-172-16-1-252.us-west-2.compute.internal
diffbase-mock-configfedora-41-x86_64
diffbase-project-namedracut-059-22.fc40
diffbase-store-results-to/tmp/tmpp05uu476/dracut-059-22.fc40.tar.xz
diffbase-time-created2024-04-22 10:45:16
diffbase-time-finished2024-04-22 10:47:33
diffbase-toolcsmock
diffbase-tool-args'/usr/bin/csmock' '-r' 'fedora-41-x86_64' '-t' 'cppcheck,gcc,clang,shellcheck' '-o' '/tmp/tmpp05uu476/dracut-059-22.fc40.tar.xz' '--gcc-analyze' '/tmp/tmpp05uu476/dracut-059-22.fc40.src.rpm'
diffbase-tool-versioncsmock-3.5.3-1.el9
enabled-pluginsclang, cppcheck, gcc, shellcheck
exit-code0
hostip-172-16-1-252.us-west-2.compute.internal
mock-configfedora-41-x86_64
project-namedracut-060-1.fc41
store-results-to/tmp/tmp1xbjx52o/dracut-060-1.fc41.tar.xz
time-created2024-04-22 10:48:00
time-finished2024-04-22 10:49:44
titleNewly introduced defects
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-41-x86_64' '-t' 'cppcheck,gcc,clang,shellcheck' '-o' '/tmp/tmp1xbjx52o/dracut-060-1.fc41.tar.xz' '--gcc-analyze' '/tmp/tmp1xbjx52o/dracut-060-1.fc41.src.rpm'
tool-versioncsmock-3.5.3-1.el9