bootc-202509181109.gcc5e9467d7-1

List of Findings

Error: COMPILER_WARNING (CWE-704): [#def1]
bootc-202509181109.gcc5e9467d7/vendor/libz-sys/src/smoke.c: scope_hint: In function 'main'
bootc-202509181109.gcc5e9467d7/vendor/libz-sys/src/smoke.c:4:10: warning[-Wpointer-to-int-cast]: cast from pointer to integer of different size
#    2|   
#    3|   int main() {
#    4|->   return (int) adler32;
#    5|   }

Error: CLIPPY_WARNING: [#def2]
crates/etc-merge/src/lib.rs:78:5: warning: unneeded `return` statement
#     |
#  78 |     return true;
#     |     ^^^^^^^^^^^
#     |
#     = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return
#     = note: `#[warn(clippy::needless_return)]` on by default
#  help: remove `return`
#     |
#  78 -     return true;
#  78 +     true
#     |

Error: CLIPPY_WARNING: [#def3]
crates/etc-merge/src/lib.rs:295:5: warning: doc list item without indentation
#      |
#  295 | /// Usually this will be obtained by remounting the EROFS image to a temporary location
#      |     ^
#      |
#      = help: if this is supposed to be its own paragraph, add a blank line
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
#      = note: `#[warn(clippy::doc_lazy_continuation)]` on by default
#  help: indent this line
#      |
#  295 | ///   Usually this will be obtained by remounting the EROFS image to a temporary location
#      |     ++

Error: CLIPPY_WARNING: [#def4]
crates/etc-merge/src/lib.rs:300:5: warning: doc list item without indentation
#      |
#  300 | /// again be usually obtained by mounting the new EROFS image to a temporary location. If merging
#      |     ^
#      |
#      = help: if this is supposed to be its own paragraph, add a blank line
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
#  help: indent this line
#      |
#  300 | ///   again be usually obtained by mounting the new EROFS image to a temporary location. If merging
#      |     ++

Error: CLIPPY_WARNING: [#def5]
crates/etc-merge/src/lib.rs:301:5: warning: doc list item without indentation
#      |
#  301 | /// it will be necessary to make the `/etc` for the deployment writeable
#      |     ^
#      |
#      = help: if this is supposed to be its own paragraph, add a blank line
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
#  help: indent this line
#      |
#  301 | ///   it will be necessary to make the `/etc` for the deployment writeable
#      |     ++

Error: CLIPPY_WARNING: [#def6]
crates/etc-merge/src/lib.rs:330:5: warning: unneeded `return` statement
#      |
#  330 |     return Ok((pristine_etc_files, current_etc_files, new_etc_files));
#      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return
#  help: remove `return`
#      |
#  330 -     return Ok((pristine_etc_files, current_etc_files, new_etc_files));
#  330 +     Ok((pristine_etc_files, current_etc_files, new_etc_files))
#      |

Error: CLIPPY_WARNING: [#def7]
crates/etc-merge/src/lib.rs:434:35: warning: useless use of `format!`
#      |
#  434 |         let entry = entry.context(format!("Getting entry"))?;
#      |                                   ^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Getting entry".to_string()`
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format
#      = note: `#[warn(clippy::useless_format)]` on by default

Error: CLIPPY_WARNING: [#def8]
crates/lib/src/bootc_composefs/boot.rs:142:5: warning: unneeded `return` statement
#      |
#  142 |     return Ok(parent);
#      |     ^^^^^^^^^^^^^^^^^
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return
#      = note: `#[warn(clippy::needless_return)]` on by default
#  help: remove `return`
#      |
#  142 -     return Ok(parent);
#  142 +     Ok(parent)
#      |

Error: CLIPPY_WARNING: [#def9]
crates/lib/src/bootc_composefs/boot.rs:294:39: warning: useless conversion to the same type: `std::string::String`
#      |
#  294 |             let mut cmdline_options = String::from(root_setup.kargs.join(" "));
#      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `String::from()`: `root_setup.kargs.join(" ")`
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
#      = note: `#[warn(clippy::useless_conversion)]` on by default

Error: CLIPPY_WARNING: [#def10]
crates/lib/src/bootc_composefs/boot.rs:514:16: warning: writing `&PathBuf` instead of `&Path` involves a new object where a slice will do
#      |
#  514 |     file_path: &PathBuf,
#      |                ^^^^^^^^ help: change this to: `&Path`
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg
#      = note: `#[warn(clippy::ptr_arg)]` on by default

Error: CLIPPY_WARNING: [#def11]
crates/lib/src/bootc_composefs/boot.rs:703:20: warning: length comparison to zero
#      |
#  703 |                 if v.len() > 0 {
#      |                    ^^^^^^^^^^^ help: using `!is_empty` is clearer and more explicit: `!v.is_empty()`
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero
#      = note: `#[warn(clippy::len_zero)]` on by default

Error: CLIPPY_WARNING: [#def12]
crates/lib/src/bootc_composefs/boot.rs:822:23: warning: using `.iter().next()` on an array
#      |
#  822 |     let Some(entry) = entries.iter().next() else {
#      |                       ^^^^^^^^^^^^^^^^^^^^^ help: try calling: `entries.first()`
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_next_slice
#      = note: `#[warn(clippy::iter_next_slice)]` on by default

Error: CLIPPY_WARNING: [#def13]
crates/lib/src/bootc_composefs/repo.rs:66:6: warning: very complex type used. Consider factoring parts into `type` definitions
#     |
#  66 |   ) -> Result<(
#     |  ______^
#  67 | |     ComposefsRepository<Sha256HashValue>,
#  68 | |     Vec<ComposefsBootEntry<Sha256HashValue>>,
#  69 | |     Sha256HashValue,
#  70 | |     FileSystem<Sha256HashValue>,
#  71 | | )> {
#     | |__^
#     |
#     = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
#     = note: `#[warn(clippy::type_complexity)]` on by default

Error: CLIPPY_WARNING: [#def14]
crates/lib/src/bootc_composefs/rollback.rs:37:18: warning: useless use of `format!`
#     |
#  37 |         .context(format!("Reopening entries dir as owned fd"))?;
#     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Reopening entries dir as owned fd".to_string()`
#     |
#     = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format
#     = note: `#[warn(clippy::useless_format)]` on by default

Error: CLIPPY_WARNING: [#def15]
crates/lib/src/bootc_composefs/rollback.rs:39:32: warning: useless use of `format!`
#     |
#  39 |     fsync(entries_dir).context(format!("fsync entries dir"))?;
#     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"fsync entries dir".to_string()`
#     |
#     = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format

Error: CLIPPY_WARNING: [#def16]
crates/lib/src/bootc_composefs/rollback.rs:62:26: warning: useless use of `format!`
#     |
#  62 |         .with_context(|| format!("Reopening /sysroot/boot/loader as owned fd"))?;
#     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"Reopening /sysroot/boot/loader as owned fd".to_string()`
#     |
#     = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format

Error: CLIPPY_WARNING: [#def17]
crates/lib/src/bootc_composefs/status.rs:1:37: warning: importing legacy numeric constants
#    |
#  1 | use std::{io::Read, sync::OnceLock, u16};
#    |                                     ^^^
#    |
#    = help: remove this import
#    = note: then `u16::<CONST>` will resolve to the respective associated constant
#    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants
#    = note: `#[warn(clippy::legacy_numeric_constants)]` on by default

Error: CLIPPY_WARNING: [#def18]
crates/lib/src/bootc_composefs/status.rs:145:19: warning: slow zero-filling initialization
#      |
#  145 |       let mut buf = Vec::with_capacity(manifest.config().size() as usize);
#      |  ___________________^
#  146 | |     buf.resize(manifest.config().size() as usize, 0);
#      | |____________________________________________________^ help: consider replacing this with: `vec![0; manifest.config().size() as usize]`
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#slow_vector_initialization
#      = note: `#[warn(clippy::slow_vector_initialization)]` on by default

Error: CLIPPY_WARNING: [#def19]
crates/lib/src/bootc_composefs/switch.rs:42:23: warning: using `.iter().next()` on an array
#     |
#  42 |     let Some(entry) = entries.iter().next() else {
#     |                       ^^^^^^^^^^^^^^^^^^^^^ help: try calling: `entries.first()`
#     |
#     = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_next_slice

Error: CLIPPY_WARNING: [#def20]
crates/lib/src/bootc_composefs/update.rs:32:23: warning: using `.iter().next()` on an array
#     |
#  32 |     let Some(entry) = entries.iter().next() else {
#     |                       ^^^^^^^^^^^^^^^^^^^^^ help: try calling: `entries.first()`
#     |
#     = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_next_slice

Error: CLIPPY_WARNING: [#def21]
crates/lib/src/cfsctl.rs:16:52: warning: unused import: `Sha512HashValue`
#     |
#  16 |     fsverity::{FsVerityHashValue, Sha256HashValue, Sha512HashValue},
#     |                                                    ^^^^^^^^^^^^^^^
#     |
#     = note: `#[warn(unused_imports)]` on by default

Error: CLIPPY_WARNING: [#def22]
crates/lib/src/cli.rs:988:5: warning: unneeded `return` statement
#      |
#  988 |     return Ok(target);
#      |     ^^^^^^^^^^^^^^^^^
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return
#  help: remove `return`
#      |
#  988 -     return Ok(target);
#  988 +     Ok(target)
#      |

Error: CLIPPY_WARNING: [#def23]
crates/lib/src/install.rs:559:16: warning: inequality checks against false are unnecessary
#      |
#  559 |             if self.composefs_opts.insecure != false {
#      |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try simplifying it as shown: `self.composefs_opts.insecure`
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_comparison
#      = note: `#[warn(clippy::bool_comparison)]` on by default

Error: CLIPPY_WARNING: [#def24]
crates/lib/src/install.rs:1567:24: warning: called `.as_ref().map(|s| s.as_str())` on an `Option` value
#       |
#  1567 |       let source_image = opts
#       |  ________________________^
#  1568 | |         .source_opts
#  1569 | |         .source_imgref
#  1570 | |         .as_ref()
#  1571 | |         .map(|s| s.as_str())
#       | |____________________________^
#       |
#       = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_as_ref_deref
#       = note: `#[warn(clippy::option_as_ref_deref)]` on by default
#  help: consider using as_deref
#       |
#  1567 ~     let source_image = opts
#  1568 +         .source_opts
#  1569 +         .source_imgref.as_deref()
#       |

Error: CLIPPY_WARNING: [#def25]
crates/lib/src/install.rs:1831:24: warning: called `.as_ref().map(|s| s.as_str())` on an `Option` value
#       |
#  1831 |       let source_image = opts
#       |  ________________________^
#  1832 | |         .source_opts
#  1833 | |         .source_imgref
#  1834 | |         .as_ref()
#  1835 | |         .map(|s| s.as_str())
#       | |____________________________^
#       |
#       = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_as_ref_deref
#  help: consider using as_deref
#       |
#  1831 ~     let source_image = opts
#  1832 +         .source_opts
#  1833 +         .source_imgref.as_deref()
#       |

Error: CLIPPY_WARNING: [#def26]
crates/lib/src/install.rs:2099:24: warning: called `.as_ref().map(|s| s.as_str())` on an `Option` value
#       |
#  2099 |       let source_image = opts
#       |  ________________________^
#  2100 | |         .source_opts
#  2101 | |         .source_imgref
#  2102 | |         .as_ref()
#  2103 | |         .map(|s| s.as_str())
#       | |____________________________^
#       |
#       = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_as_ref_deref
#  help: consider using as_deref
#       |
#  2099 ~     let source_image = opts
#  2100 +         .source_opts
#  2101 +         .source_imgref.as_deref()
#       |

Error: CLIPPY_WARNING: [#def27]
crates/lib/src/parsers/grub_menuconfig.rs:118:22: warning: redundant guard
#      |
#  118 |                 c if c == '\\' => {
#      |                      ^^^^^^^^^
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_guards
#      = note: `#[warn(clippy::redundant_guards)]` on by default
#  help: try
#      |
#  118 -                 c if c == '\\' => {
#  118 +                 '\\' => {
#      |

Error: CLIPPY_WARNING: [#def28]
crates/lib/src/utils.rs:205:14: warning: this `repeat().take()` can be written more concisely
#      |
#  205 |     let up = std::iter::repeat(Component::ParentDir).take(from.len() - common);
#      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(Component::ParentDir, from.len() - common)`
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
#      = note: `#[warn(clippy::manual_repeat_n)]` on by default

Error: CLIPPY_WARNING: [#def29]
crates/lib/src/utils.rs:211:5: warning: unneeded `return` statement
#      |
#  211 |     return Ok(final_path);
#      |     ^^^^^^^^^^^^^^^^^^^^^
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return
#  help: remove `return`
#      |
#  211 -     return Ok(final_path);
#  211 +     Ok(final_path)
#      |

Error: CLIPPY_WARNING: [#def30]
crates/ostree-ext/src/container/store.rs:945:5: warning: this function has too many arguments (10/7)
#      |
#  945 | /     fn write_merge_commit_impl(
#  946 | |         repo: &ostree::Repo,
#  947 | |         base_commit: Option<&str>,
#  948 | |         layer_commits: &[String],
#  ...   |
#  955 | |         cancellable: Option<&gio::Cancellable>,
#  956 | |     ) -> Result<Box<LayeredImageState>> {
#      | |_______________________________________^
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
#      = note: `#[warn(clippy::too_many_arguments)]` on by default

Error: CLIPPY_WARNING: [#def31]
crates/ostree-ext/src/container/store.rs:1044:22: warning: derefed type is same as origin
#       |
#  1044 |         let parent = base_commit.as_deref();
#       |                      ^^^^^^^^^^^^^^^^^^^^^^ help: try: `base_commit`
#       |
#       = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_option_as_deref
#       = note: `#[warn(clippy::needless_option_as_deref)]` on by default

Error: CLIPPY_WARNING: [#def32]
crates/ostree-ext/src/container/store.rs:1580:36: warning: using `clone` on type `Option<&History>` which implements the `Copy` trait
#       |
#  1580 |           let previous_description = history_entry
#       |  ____________________________________^
#  1581 | |             .clone()
#       | |____________________^ help: try removing the `clone` call: `history_entry`
#       |
#       = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
#       = note: `#[warn(clippy::clone_on_copy)]` on by default

Error: CLIPPY_WARNING: [#def33]
crates/xtask/src/man.rs:288:13: warning: returning the result of a `let` binding from a block
#      |
#  287 |             let path = find_command_path_for_filename(cli_structure, cmd_part);
#      |             ------------------------------------------------------------------- unnecessary `let` binding
#  288 |             path
#      |             ^^^^
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_and_return
#      = note: `#[warn(clippy::let_and_return)]` on by default
#  help: return the expression directly
#      |
#  287 ~             
#  288 ~             find_command_path_for_filename(cli_structure, cmd_part)
#      |

Error: CLIPPY_WARNING: [#def34]
crates/xtask/src/man.rs:568:5: warning: empty string literal in `println!`
#      |
#  568 |     println!("");
#      |     ^^^^^^^^^--^
#      |              |
#      |              help: remove the empty string
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#println_empty_string
#      = note: `#[warn(clippy::println_empty_string)]` on by default

Error: CLIPPY_WARNING: [#def35]
crates/xtask/src/man.rs:583:12: warning: this `map_or` can be simplified
#      |
#  583 |           if path
#      |  ____________^
#  584 | |             .extension()
#  585 | |             .and_then(|s| s.to_str())
#  586 | |             .map_or(false, |e| e.chars().all(|c| c.is_numeric()))
#      | |_________________________________________________________________^
#      |
#      = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_map_or
#      = note: `#[warn(clippy::unnecessary_map_or)]` on by default
#  help: use is_some_and instead
#      |
#  586 -             .map_or(false, |e| e.chars().all(|c| c.is_numeric()))
#  586 +             .is_some_and(|e| e.chars().all(|c| c.is_numeric()))
#      |

Scan Properties

analyzer-version-clippy1.89.0
analyzer-version-cppcheck2.18.3
analyzer-version-gcc15.2.1
analyzer-version-gcc-analyzer15.2.1
analyzer-version-shellcheck0.11.0
analyzer-version-unicontrol0.0.2
enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
exit-code0
hostip-172-16-1-144.us-west-2.compute.internal
known-false-positives/usr/share/csmock/known-false-positives.js
known-false-positives-rpmknown-false-positives-0.0.0.20250521.132812.g8eff701.main-1.el9.noarch
mock-configfedora-rawhide-x86_64
project-namebootc-202509181109.gcc5e9467d7-1
store-results-to/tmp/tmp0lala8s6/bootc-202509181109.gcc5e9467d7-1.tar.xz
time-created2025-09-18 11:49:49
time-finished2025-09-18 11:57:09
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'unicontrol,shellcheck,gcc,clippy,cppcheck' '-o' '/tmp/tmp0lala8s6/bootc-202509181109.gcc5e9467d7-1.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '/tmp/tmp0lala8s6/bootc-202509181109.gcc5e9467d7-1.src.rpm'
tool-versioncsmock-3.8.2.20250811.215846.gf3b3dbf-1.el9