[INFO] fetching crate bell_system 0.0.1...
[INFO] checking bell_system-0.0.1 against master#779e19d8baa3e3625bd4fc5c85cbb2ad47b43155 for pr-147589-1
[INFO] extracting crate bell_system 0.0.1 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate bell_system 0.0.1
[INFO] finished tweaking crates.io crate bell_system 0.0.1
[INFO] tweaked toml for crates.io crate bell_system 0.0.1 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate bell_system 0.0.1 on toolchain 779e19d8baa3e3625bd4fc5c85cbb2ad47b43155
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 326 packages to latest compatible versions
[INFO] [stderr]       Adding base64 v0.21.7 (available: v0.22.1)
[INFO] [stderr]       Adding ipnetwork v0.20.0 (available: v0.21.1)
[INFO] [stderr]       Adding lettre v0.10.4 (available: v0.11.19)
[INFO] [stderr]       Adding libseccomp v0.3.0 (available: v0.4.0)
[INFO] [stderr]       Adding local-ip-address v0.5.7 (available: v0.6.5)
[INFO] [stderr]       Adding nix v0.26.4 (available: v0.30.1)
[INFO] [stderr]       Adding rand v0.8.5 (available: v0.9.2)
[INFO] [stderr]       Adding rand_core v0.6.4 (available: v0.9.3)
[INFO] [stderr]       Adding reqwest v0.11.27 (available: v0.12.24)
[INFO] [stderr]       Adding rusqlite v0.29.0 (available: v0.37.0)
[INFO] [stderr]       Adding sysinfo v0.29.11 (available: v0.37.2)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.17)
[INFO] [stderr]       Adding toml v0.7.8 (available: v0.9.8)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded neli v0.6.5
[INFO] [stderr]   Downloaded totp-rs v5.7.0
[INFO] [stderr]   Downloaded libseccomp-sys v0.2.1
[INFO] [stderr]   Downloaded quoted_printable v0.4.8
[INFO] [stderr]   Downloaded libseccomp v0.3.0
[INFO] [stderr]   Downloaded email-encoding v0.2.1
[INFO] [stderr]   Downloaded local-ip-address v0.5.7
[INFO] [stderr]   Downloaded seccomp-sys v0.1.3
[INFO] [stderr]   Downloaded syscallz v0.17.0
[INFO] [stderr]   Downloaded neli-proc-macros v0.1.4
[INFO] [stderr]   Downloaded lettre v0.10.4
[INFO] [stderr]   Downloaded rusqlite v0.29.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ca66ed469dae68e7d2306b55bdbeee414845b6545c028595ea267d0954945925
[INFO] running `Command { std: "docker" "start" "-a" "ca66ed469dae68e7d2306b55bdbeee414845b6545c028595ea267d0954945925", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ca66ed469dae68e7d2306b55bdbeee414845b6545c028595ea267d0954945925", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ca66ed469dae68e7d2306b55bdbeee414845b6545c028595ea267d0954945925", kill_on_drop: false }`
[INFO] [stdout] ca66ed469dae68e7d2306b55bdbeee414845b6545c028595ea267d0954945925
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+779e19d8baa3e3625bd4fc5c85cbb2ad47b43155" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d1e24adf01d9ceb945df42d6c7b7e7711c59add524466c94bd98f564a8482f91
[INFO] running `Command { std: "docker" "start" "-a" "d1e24adf01d9ceb945df42d6c7b7e7711c59add524466c94bd98f564a8482f91", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]    Compiling ring v0.16.20
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]    Compiling memoffset v0.7.1
[INFO] [stderr]    Compiling libsqlite3-sys v0.26.0
[INFO] [stderr]    Compiling seccomp-sys v0.1.3
[INFO] [stderr]    Compiling libseccomp-sys v0.2.1
[INFO] [stderr]    Compiling derive_more-impl v2.0.1
[INFO] [stderr]     Checking toml_datetime v0.6.11
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling syscallz v0.17.0
[INFO] [stderr]    Compiling libseccomp v0.3.0
[INFO] [stderr]     Checking winnow v0.5.40
[INFO] [stderr]     Checking base64ct v1.8.0
[INFO] [stderr]     Checking base64 v0.22.1
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]     Checking idna v0.3.0
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking email-encoding v0.2.1
[INFO] [stderr]     Checking ordered-float v2.10.1
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]    Compiling structopt-derive v0.4.18
[INFO] [stderr]     Checking typemap-ors v1.0.0
[INFO] [stderr]     Checking serde-value v0.7.0
[INFO] [stderr]     Checking log-mdc v0.1.0
[INFO] [stderr]     Checking email_address v0.2.9
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking fallible-iterator v0.2.0
[INFO] [stderr]     Checking mock_instant v0.6.0
[INFO] [stderr]     Checking hashlink v0.8.4
[INFO] [stderr]    Compiling neli-proc-macros v0.1.4
[INFO] [stderr]     Checking quoted_printable v0.4.8
[INFO] [stderr]     Checking base32 v0.5.1
[INFO] [stderr]     Checking ipnetwork v0.20.0
[INFO] [stderr]     Checking thiserror v2.0.17
[INFO] [stderr]     Checking derive_more v2.0.1
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking signal-hook-registry v1.4.6
[INFO] [stderr]     Checking socket2 v0.6.1
[INFO] [stderr]     Checking mio v1.1.0
[INFO] [stderr]     Checking openssl-sys v0.9.110
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking thread-id v5.0.0
[INFO] [stderr]     Checking rand_core v0.9.3
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking socket2 v0.4.10
[INFO] [stderr]     Checking neli v0.6.5
[INFO] [stderr]     Checking hostname v0.3.1
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking toml_edit v0.19.15
[INFO] [stderr]     Checking users v0.11.0
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking sysinfo v0.29.11
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking nix v0.26.4
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking rustls-webpki v0.100.3
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking log4rs v1.4.0
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking webpki-roots v0.23.1
[INFO] [stderr]     Checking totp-rs v5.7.0
[INFO] [stderr]     Checking structopt v0.3.26
[INFO] [stderr]     Checking openssl v0.10.74
[INFO] [stderr]     Checking toml v0.7.8
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]     Checking local-ip-address v0.5.7
[INFO] [stderr]     Checking tokio-util v0.7.16
[INFO] [stderr]     Checking native-tls v0.2.14
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking lettre v0.10.4
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking rusqlite v0.29.0
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking hyper-rustls v0.24.2
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.27
[INFO] [stderr]     Checking bell_system v0.0.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]   --> src/authentication_compliance/complication.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::error`
[INFO] [stdout]   --> src/user_privilege/privilege.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use log::error;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::error`
[INFO] [stdout]   --> src/user_privilege/user.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use log::error;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize`
[INFO] [stdout]   --> src/authentication_compliance/complication.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 | use serde::{Deserialize, Serialize};
[INFO] [stdout]    |             ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::error`
[INFO] [stdout]   --> src/user_privilege/privilege.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use log::error;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::error`
[INFO] [stdout]   --> src/user_privilege/user.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | use log::error;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:211:41
[INFO] [stdout]     |
[INFO] [stdout] 211 |             let key = Key::<Aes256Gcm>::from_slice(&key_data);
[INFO] [stdout]     |                                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:230:41
[INFO] [stdout]     |
[INFO] [stdout] 230 |             let key = Key::<Aes256Gcm>::from_slice(&key_data);
[INFO] [stdout]     |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:339:28
[INFO] [stdout]     |
[INFO] [stdout] 339 |         let nonce = Nonce::from_slice(&nonce);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:361:28
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let nonce = Nonce::from_slice(&data[..NONCE_SIZE]);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:211:41
[INFO] [stdout]     |
[INFO] [stdout] 211 |             let key = Key::<Aes256Gcm>::from_slice(&key_data);
[INFO] [stdout]     |                                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:385:41
[INFO] [stdout]     |
[INFO] [stdout] 385 |             let key = Key::<Aes256Gcm>::from_slice(&key_data);
[INFO] [stdout]     |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:230:41
[INFO] [stdout]     |
[INFO] [stdout] 230 |             let key = Key::<Aes256Gcm>::from_slice(&key_data);
[INFO] [stdout]     |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:412:41
[INFO] [stdout]     |
[INFO] [stdout] 412 |             let key = Key::<Aes256Gcm>::from_slice(&key_bytes);
[INFO] [stdout]     |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:425:28
[INFO] [stdout]     |
[INFO] [stdout] 425 |         let nonce = Nonce::from_slice(&[0u8; NONCE_SIZE]);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:339:28
[INFO] [stdout]     |
[INFO] [stdout] 339 |         let nonce = Nonce::from_slice(&nonce);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:497:37
[INFO] [stdout]     |
[INFO] [stdout] 497 |         let key = Key::<Aes256Gcm>::from_slice(&key_bytes).clone();
[INFO] [stdout]     |                                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:361:28
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let nonce = Nonce::from_slice(&data[..NONCE_SIZE]);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:385:41
[INFO] [stdout]     |
[INFO] [stdout] 385 |             let key = Key::<Aes256Gcm>::from_slice(&key_data);
[INFO] [stdout]     |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:412:41
[INFO] [stdout]     |
[INFO] [stdout] 412 |             let key = Key::<Aes256Gcm>::from_slice(&key_bytes);
[INFO] [stdout]     |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:425:28
[INFO] [stdout]     |
[INFO] [stdout] 425 |         let nonce = Nonce::from_slice(&[0u8; NONCE_SIZE]);
[INFO] [stdout]     |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `sha2::digest::generic_array::GenericArray::<T, N>::from_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]    --> src/hsm/hsm.rs:497:37
[INFO] [stdout]     |
[INFO] [stdout] 497 |         let key = Key::<Aes256Gcm>::from_slice(&key_bytes).clone();
[INFO] [stdout]     |                                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/network/network.rs:445:9
[INFO] [stdout]     |
[INFO] [stdout] 445 |     let mut file = OpenOptions::new()
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/network/network.rs:445:9
[INFO] [stdout]     |
[INFO] [stdout] 445 |     let mut file = OpenOptions::new()
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `compliance_config`
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1028:37
[INFO] [stdout]      |
[INFO] [stdout] 1028 | async fn check_linux_configurations(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compliance_config`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `compliance_config`
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:865:37
[INFO] [stdout]     |
[INFO] [stdout] 865 | async fn perform_os_specific_checks(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compliance_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `compliance_config`
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1028:37
[INFO] [stdout]      |
[INFO] [stdout] 1028 | async fn check_linux_configurations(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]      |                                     ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compliance_config`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `compliance_config`
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:865:37
[INFO] [stdout]     |
[INFO] [stdout] 865 | async fn perform_os_specific_checks(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_compliance_config`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `KeyType` is more private than the item `SecureStorage::generate_key`
[INFO] [stdout]    --> src/hsm/hsm.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 290 | /     pub async fn generate_key(
[INFO] [stdout] 291 | |         &self,
[INFO] [stdout] 292 | |         label: &str,
[INFO] [stdout] 293 | |         key_type: KeyType,
[INFO] [stdout] 294 | |         usage: KeyUsage,
[INFO] [stdout] 295 | |     ) -> Result<Vec<u8>> {
[INFO] [stdout]     | |________________________^ method `SecureStorage::generate_key` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `KeyType` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/hsm/hsm.rs:59:1
[INFO] [stdout]     |
[INFO] [stdout]  59 | enum KeyType {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `KeyUsage` is more private than the item `SecureStorage::generate_key`
[INFO] [stdout]    --> src/hsm/hsm.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 290 | /     pub async fn generate_key(
[INFO] [stdout] 291 | |         &self,
[INFO] [stdout] 292 | |         label: &str,
[INFO] [stdout] 293 | |         key_type: KeyType,
[INFO] [stdout] 294 | |         usage: KeyUsage,
[INFO] [stdout] 295 | |     ) -> Result<Vec<u8>> {
[INFO] [stdout]     | |________________________^ method `SecureStorage::generate_key` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `KeyUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/hsm/hsm.rs:67:1
[INFO] [stdout]     |
[INFO] [stdout]  67 | enum KeyUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `privilege_level`, `command`, and `args` are never read
[INFO] [stdout]   --> src/bell.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 42 |     Run {
[INFO] [stdout]    |     --- fields in this variant
[INFO] [stdout] 43 |         #[structopt(short, long)]
[INFO] [stdout] 44 |         privilege_level: String,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 45 |         #[structopt(short, long)]
[INFO] [stdout] 46 |         command: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 47 |         #[structopt(short, long)]
[INFO] [stdout] 48 |         args: Vec<String>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Opt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cmd` is never read
[INFO] [stdout]   --> src/bell.rs:53:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     User {
[INFO] [stdout]    |     ---- field in this variant
[INFO] [stdout] 52 |         #[structopt(subcommand)]
[INFO] [stdout] 53 |         cmd: UserCommand,
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Opt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `username` and `privilege` are never read
[INFO] [stdout]   --> src/bell.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |     Add {
[INFO] [stdout]    |     --- fields in this variant
[INFO] [stdout] 60 |         username: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 61 |         #[structopt(short, long)]
[INFO] [stdout] 62 |         privilege: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UserCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `username` is never read
[INFO] [stdout]   --> src/bell.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     Remove {
[INFO] [stdout]    |     ------ field in this variant
[INFO] [stdout] 65 |         username: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UserCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `username` is never read
[INFO] [stdout]   --> src/bell.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     ChangePassword {
[INFO] [stdout]    |     -------------- field in this variant
[INFO] [stdout] 68 |         username: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UserCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `username` and `privilege` are never read
[INFO] [stdout]   --> src/bell.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     ChangePrivilege {
[INFO] [stdout]    |     --------------- fields in this variant
[INFO] [stdout] 71 |         username: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 72 |         privilege: String,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UserCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `username` and `group` are never read
[INFO] [stdout]   --> src/bell.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     AddToGroup {
[INFO] [stdout]    |     ---------- fields in this variant
[INFO] [stdout] 75 |         username: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 76 |         group: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UserCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `username` and `group` are never read
[INFO] [stdout]   --> src/bell.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     RemoveFromGroup {
[INFO] [stdout]    |     --------------- fields in this variant
[INFO] [stdout] 79 |         username: String,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 80 |         group: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UserCommand` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main` is never used
[INFO] [stdout]   --> src/bell.rs:85:10
[INFO] [stdout]    |
[INFO] [stdout] 85 | async fn main() -> Result<(), Box<dyn std::error::Error>> {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AuditConfig` is never constructed
[INFO] [stdout]   --> src/audit/audit.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct AuditConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AuditEvent` is never constructed
[INFO] [stdout]   --> src/audit/audit.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct AuditEvent {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `EventSeverity` is never used
[INFO] [stdout]   --> src/audit/audit.rs:86:10
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub enum EventSeverity {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log_audit_event` is never used
[INFO] [stdout]   --> src/audit/audit.rs:93:14
[INFO] [stdout]    |
[INFO] [stdout] 93 | pub async fn log_audit_event(event: &str, user: &str, details: &str) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_audit_event` is never used
[INFO] [stdout]    --> src/audit/audit.rs:119:4
[INFO] [stdout]     |
[INFO] [stdout] 119 | fn create_audit_event(event: &str, user: &str, details: &str) -> AuditEvent {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_to_log_file` is never used
[INFO] [stdout]    --> src/audit/audit.rs:131:10
[INFO] [stdout]     |
[INFO] [stdout] 131 | async fn write_to_log_file(config: &AuditConfig, event: &AuditEvent) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log_to_database` is never used
[INFO] [stdout]    --> src/audit/audit.rs:155:10
[INFO] [stdout]     |
[INFO] [stdout] 155 | async fn log_to_database(config: &AuditConfig, event: &AuditEvent) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_critical_event` is never used
[INFO] [stdout]    --> src/audit/audit.rs:191:4
[INFO] [stdout]     |
[INFO] [stdout] 191 | fn is_critical_event(config: &AuditConfig, event: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `determine_severity` is never used
[INFO] [stdout]    --> src/audit/audit.rs:195:4
[INFO] [stdout]     |
[INFO] [stdout] 195 | fn determine_severity(event: &str) -> EventSeverity {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_alert` is never used
[INFO] [stdout]    --> src/audit/audit.rs:204:10
[INFO] [stdout]     |
[INFO] [stdout] 204 | async fn send_alert(config: &AuditConfig, event: &AuditEvent) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_and_rotate_logs` is never used
[INFO] [stdout]    --> src/audit/audit.rs:235:10
[INFO] [stdout]     |
[INFO] [stdout] 235 | async fn check_and_rotate_logs(config: &AuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SecurityAuditConfig` is never constructed
[INFO] [stdout]   --> src/audit/security_audit.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct SecurityAuditConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_os_critical_paths` is never used
[INFO] [stdout]   --> src/audit/security_audit.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn get_os_critical_paths() -> Vec<PathBuf> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_security_audit` is never used
[INFO] [stdout]   --> src/audit/security_audit.rs:81:14
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub async fn perform_security_audit(config: &Config) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_system_updates` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:116:10
[INFO] [stdout]     |
[INFO] [stdout] 116 | async fn check_system_updates() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan_for_vulnerabilities` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:154:10
[INFO] [stdout]     |
[INFO] [stdout] 154 | async fn scan_for_vulnerabilities(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_software_versions` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:170:10
[INFO] [stdout]     |
[INFO] [stdout] 170 | async fn check_software_versions() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_common_misconfigurations` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:189:10
[INFO] [stdout]     |
[INFO] [stdout] 189 | async fn check_common_misconfigurations(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_permissions` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:203:10
[INFO] [stdout]     |
[INFO] [stdout] 203 | async fn check_permissions(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_path_permissions` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:220:10
[INFO] [stdout]     |
[INFO] [stdout] 220 | async fn check_path_permissions(path: &Path) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_world_writable_files` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout] 255 | async fn check_world_writable_files() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_suid_binaries` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:289:10
[INFO] [stdout]     |
[INFO] [stdout] 289 | async fn check_suid_binaries() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_suspicious_processes` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:350:10
[INFO] [stdout]     |
[INFO] [stdout] 350 | async fn check_suspicious_processes(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_unauthorized_users` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:381:10
[INFO] [stdout]     |
[INFO] [stdout] 381 | async fn check_unauthorized_users(config: &Config) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_macos_users` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:392:10
[INFO] [stdout]     |
[INFO] [stdout] 392 | async fn check_macos_users(config: &Config) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_linux_users` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:413:10
[INFO] [stdout]     |
[INFO] [stdout] 413 | async fn check_linux_users(config: &Config) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_users` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:431:10
[INFO] [stdout]     |
[INFO] [stdout] 431 | async fn check_bellande_users(config: &Config) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_macos_system_user` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:452:4
[INFO] [stdout]     |
[INFO] [stdout] 452 | fn is_macos_system_user(username: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_linux_system_user` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:459:4
[INFO] [stdout]     |
[INFO] [stdout] 459 | fn is_linux_system_user(username: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_bellande_system_user` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:491:4
[INFO] [stdout]     |
[INFO] [stdout] 491 | fn is_bellande_system_user(username: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_open_ports` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:498:10
[INFO] [stdout]     |
[INFO] [stdout] 498 | async fn check_open_ports(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_port_output` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:542:10
[INFO] [stdout]     |
[INFO] [stdout] 542 | async fn check_port_output(output: &str, allowed_ports: &HashSet<u16>) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_port_from_line` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:561:4
[INFO] [stdout]     |
[INFO] [stdout] 561 | fn extract_port_from_line(line: &str) -> Option<u16> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_file_integrity` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:570:10
[INFO] [stdout]     |
[INFO] [stdout] 570 | async fn check_file_integrity(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_directory_integrity` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:584:10
[INFO] [stdout]     |
[INFO] [stdout] 584 | async fn check_directory_integrity(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_os_specific_checks` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:616:10
[INFO] [stdout]     |
[INFO] [stdout] 616 | async fn perform_os_specific_checks() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_macos_specific_checks` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:626:10
[INFO] [stdout]     |
[INFO] [stdout] 626 | async fn perform_macos_specific_checks() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_linux_specific_checks` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:675:10
[INFO] [stdout]     |
[INFO] [stdout] 675 | async fn perform_linux_specific_checks() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_bellande_specific_checks` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:714:10
[INFO] [stdout]     |
[INFO] [stdout] 714 | async fn perform_bellande_specific_checks() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_kernel_parameters` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:763:10
[INFO] [stdout]     |
[INFO] [stdout] 763 | async fn check_kernel_parameters() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_file_hash` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:791:4
[INFO] [stdout]     |
[INFO] [stdout] 791 | fn calculate_file_hash(path: &Path) -> Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_hash_database` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:798:4
[INFO] [stdout]     |
[INFO] [stdout] 798 | fn load_hash_database(path: &Path) -> Result<HashMap<PathBuf, String>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_hash_database` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:808:4
[INFO] [stdout]     |
[INFO] [stdout] 808 | fn save_hash_database(path: &Path, database: &HashMap<PathBuf, String>) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Session` is never constructed
[INFO] [stdout]   --> src/authentication_compliance/authentication.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct Session {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RateLimiter` is never constructed
[INFO] [stdout]   --> src/authentication_compliance/authentication.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct RateLimiter {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `check` are never used
[INFO] [stdout]   --> src/authentication_compliance/authentication.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | impl RateLimiter {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 40 |     pub fn new(max_attempts: usize, window: Duration) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn check(&mut self, key: &str) -> bool {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `authenticate_user` is never used
[INFO] [stdout]   --> src/authentication_compliance/authentication.rs:66:14
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub async fn authenticate_user(
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_password` is never used
[INFO] [stdout]    --> src/authentication_compliance/authentication.rs:105:4
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn verify_password(hash: &str, password: &str) -> Result<bool> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash_password` is never used
[INFO] [stdout]    --> src/authentication_compliance/authentication.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn hash_password(password: &str) -> Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NetworkRequirements` is never constructed
[INFO] [stdout]   --> src/authentication_compliance/complication.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct NetworkRequirements {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ComplianceConfig` is never constructed
[INFO] [stdout]   --> src/authentication_compliance/complication.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct ComplianceConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PasswordViolation` is never constructed
[INFO] [stdout]   --> src/authentication_compliance/complication.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | struct PasswordViolation {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ViolationSeverity` is never used
[INFO] [stdout]   --> src/authentication_compliance/complication.rs:68:6
[INFO] [stdout]    |
[INFO] [stdout] 68 | enum ViolationSeverity {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_security_paths` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn get_security_paths() -> HashMap<String, Vec<PathBuf>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_required_services` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:162:4
[INFO] [stdout]     |
[INFO] [stdout] 162 | fn get_required_services() -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_required_kernel_params` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:178:4
[INFO] [stdout]     |
[INFO] [stdout] 178 | fn get_required_kernel_params() -> HashMap<String, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_security_services` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:302:4
[INFO] [stdout]     |
[INFO] [stdout] 302 | fn get_security_services() -> HashMap<String, Vec<String>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_compliance` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:366:14
[INFO] [stdout]     |
[INFO] [stdout] 366 | pub async fn check_compliance(config: &Config) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_password_complexity` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:398:10
[INFO] [stdout]     |
[INFO] [stdout] 398 | async fn check_password_complexity(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_common_password` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:500:10
[INFO] [stdout]     |
[INFO] [stdout] 500 | async fn is_common_password(password: &str) -> Result<bool> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_password_strength` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:512:4
[INFO] [stdout]     |
[INFO] [stdout] 512 | fn validate_password_strength(password: &str, config: &ComplianceConfig) -> Vec<PasswordViolation> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_repeating_chars` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:571:4
[INFO] [stdout]     |
[INFO] [stdout] 571 | fn has_repeating_chars(password: &str, max_repeats: usize) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_password_entropy` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:590:4
[INFO] [stdout]     |
[INFO] [stdout] 590 | fn calculate_password_entropy(password: &str) -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_file_permissions` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:618:10
[INFO] [stdout]     |
[INFO] [stdout] 618 | async fn check_file_permissions(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_single_file_permissions` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:662:10
[INFO] [stdout]     |
[INFO] [stdout] 662 | async fn check_single_file_permissions(file_path: &Path) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_system_configurations` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:709:10
[INFO] [stdout]     |
[INFO] [stdout] 709 | async fn check_system_configurations(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_kernel_parameter` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:738:10
[INFO] [stdout]     |
[INFO] [stdout] 738 | async fn check_kernel_parameter(param: &str, expected_value: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_expected_value` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:775:4
[INFO] [stdout]     |
[INFO] [stdout] 775 | fn get_expected_value(param: &str) -> Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_kernel_parameter` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:787:10
[INFO] [stdout]     |
[INFO] [stdout] 787 | async fn get_kernel_parameter(param: &str) -> Result<String> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_audit_log_integrity` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:797:10
[INFO] [stdout]     |
[INFO] [stdout] 797 | async fn check_audit_log_integrity(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_network_configurations` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:838:10
[INFO] [stdout]     |
[INFO] [stdout] 838 | async fn check_network_configurations(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_os_specific_checks` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:865:10
[INFO] [stdout]     |
[INFO] [stdout] 865 | async fn perform_os_specific_checks(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_macos_configurations` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:951:10
[INFO] [stdout]     |
[INFO] [stdout] 951 | async fn check_macos_configurations() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_linux_configurations` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1028:10
[INFO] [stdout]      |
[INFO] [stdout] 1028 | async fn check_linux_configurations(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_configurations` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1090:10
[INFO] [stdout]      |
[INFO] [stdout] 1090 | async fn check_bellande_configurations() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_sysctl_settings` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1159:10
[INFO] [stdout]      |
[INFO] [stdout] 1159 | async fn check_sysctl_settings() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_password_policies` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1193:10
[INFO] [stdout]      |
[INFO] [stdout] 1193 | async fn check_password_policies() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_core_dumps` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1222:10
[INFO] [stdout]      |
[INFO] [stdout] 1222 | async fn check_core_dumps() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_security_policies` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1240:10
[INFO] [stdout]      |
[INFO] [stdout] 1240 | async fn check_bellande_security_policies() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_service_running` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1270:10
[INFO] [stdout]      |
[INFO] [stdout] 1270 | async fn is_service_running(service: &str) -> Result<bool> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_firewall_status` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1294:10
[INFO] [stdout]      |
[INFO] [stdout] 1294 | async fn check_firewall_status() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_network_encryption` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1346:10
[INFO] [stdout]      |
[INFO] [stdout] 1346 | async fn check_network_encryption(network_requirements: &NetworkRequirements) -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_ssl_versions` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1359:10
[INFO] [stdout]      |
[INFO] [stdout] 1359 | async fn check_ssl_versions(required_protocols: &[String]) -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_ssh_configuration` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1385:10
[INFO] [stdout]      |
[INFO] [stdout] 1385 | async fn check_ssh_configuration() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_encrypted_protocols` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1429:10
[INFO] [stdout]      |
[INFO] [stdout] 1429 | async fn check_encrypted_protocols() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_last_password_change` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1454:10
[INFO] [stdout]      |
[INFO] [stdout] 1454 | async fn get_last_password_change(username: &str) -> Result<Option<String>> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_file_hash` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1481:4
[INFO] [stdout]      |
[INFO] [stdout] 1481 | fn calculate_file_hash(path: &Path) -> Result<String> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_file_hashes` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1488:4
[INFO] [stdout]      |
[INFO] [stdout] 1488 | fn load_file_hashes(path: &Path) -> Result<HashMap<PathBuf, String>> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_file_hash` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1497:4
[INFO] [stdout]      |
[INFO] [stdout] 1497 | fn save_file_hash(path: &Path, file_path: &Path, hash: &str) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommandConfig` is never constructed
[INFO] [stdout]   --> src/command/command.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct CommandConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SandboxContext` is never constructed
[INFO] [stdout]   --> src/command/command.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 88 | struct SandboxContext {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `load`, and `allow_syscall` are never used
[INFO] [stdout]    --> src/command/command.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl SandboxContext {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 101 |     fn new(context: SyscallContext) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |     fn load(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 111 |     fn allow_syscall(&mut self, syscall: Syscall) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CommandContext` is never constructed
[INFO] [stdout]    --> src/command/command.rs:119:8
[INFO] [stdout]     |
[INFO] [stdout] 119 | struct CommandContext {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DangerousPattern` is never constructed
[INFO] [stdout]    --> src/command/command.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | struct DangerousPattern {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_command_with_privilege` is never used
[INFO] [stdout]    --> src/command/command.rs:145:14
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub async fn run_command_with_privilege(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_command_input` is never used
[INFO] [stdout]    --> src/command/command.rs:176:4
[INFO] [stdout]     |
[INFO] [stdout] 176 | fn validate_command_input(command: &str, args: &[String]) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_session_and_permissions` is never used
[INFO] [stdout]    --> src/command/command.rs:195:10
[INFO] [stdout]     |
[INFO] [stdout] 195 | async fn check_session_and_permissions(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_session_state` is never used
[INFO] [stdout]    --> src/command/command.rs:226:10
[INFO] [stdout]     |
[INFO] [stdout] 226 | async fn check_session_state(session: &Session, command: &str, args: &[String]) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_command_permissions` is never used
[INFO] [stdout]    --> src/command/command.rs:260:10
[INFO] [stdout]     |
[INFO] [stdout] 260 | async fn check_command_permissions(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_network_access` is never used
[INFO] [stdout]    --> src/command/command.rs:309:10
[INFO] [stdout]     |
[INFO] [stdout] 309 | async fn check_network_access(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `execute_command_safely` is never used
[INFO] [stdout]    --> src/command/command.rs:329:10
[INFO] [stdout]     |
[INFO] [stdout] 329 | async fn execute_command_safely(ctx: CommandContext) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_command_context` is never used
[INFO] [stdout]    --> src/command/command.rs:384:4
[INFO] [stdout]     |
[INFO] [stdout] 384 | fn create_command_context(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `execute_command_with_timeout` is never used
[INFO] [stdout]    --> src/command/command.rs:406:10
[INFO] [stdout]     |
[INFO] [stdout] 406 | async fn execute_command_with_timeout(ctx: &CommandContext) -> Result<std::process::Output> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_command_output` is never used
[INFO] [stdout]    --> src/command/command.rs:420:10
[INFO] [stdout]     |
[INFO] [stdout] 420 | async fn process_command_output(ctx: &CommandContext, output: &std::process::Output) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_sandbox` is never used
[INFO] [stdout]    --> src/command/command.rs:470:4
[INFO] [stdout]     |
[INFO] [stdout] 470 | fn create_sandbox() -> Result<SandboxContext> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `drop_privileges` is never used
[INFO] [stdout]    --> src/command/command.rs:533:4
[INFO] [stdout]     |
[INFO] [stdout] 533 | fn drop_privileges() -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_dangerous_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:551:10
[INFO] [stdout]     |
[INFO] [stdout] 551 | async fn check_dangerous_patterns(ctx: &CommandContext) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `convert_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:578:4
[INFO] [stdout]     |
[INFO] [stdout] 578 | fn convert_patterns<const N: usize>(patterns: [(&str, &str); N]) -> Vec<DangerousPattern> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_macos_specific_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:582:10
[INFO] [stdout]     |
[INFO] [stdout] 582 | async fn check_macos_specific_patterns(ctx: &CommandContext, command: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_linux_specific_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:593:10
[INFO] [stdout]     |
[INFO] [stdout] 593 | async fn check_linux_specific_patterns(ctx: &CommandContext, command: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_specific_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:605:10
[INFO] [stdout]     |
[INFO] [stdout] 605 | async fn check_bellande_specific_patterns(ctx: &CommandContext, command: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:616:10
[INFO] [stdout]     |
[INFO] [stdout] 616 | async fn check_patterns(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_macos_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:630:10
[INFO] [stdout]     |
[INFO] [stdout] 630 | async fn check_macos_patterns(ctx: &CommandContext, command: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_linux_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:653:10
[INFO] [stdout]     |
[INFO] [stdout] 653 | async fn check_linux_patterns(ctx: &CommandContext, command: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:676:10
[INFO] [stdout]     |
[INFO] [stdout] 676 | async fn check_bellande_patterns(ctx: &CommandContext, command: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Config` is never constructed
[INFO] [stdout]   --> src/config/config.rs:32:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Config {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Group` is never constructed
[INFO] [stdout]   --> src/config/config.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct Group {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SecuritySettings` is never constructed
[INFO] [stdout]   --> src/config/config.rs:57:12
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub struct SecuritySettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OsSpecificConfig` is never constructed
[INFO] [stdout]   --> src/config/config.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub struct OsSpecificConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MacOSConfig` is never constructed
[INFO] [stdout]   --> src/config/config.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct MacOSConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LinuxConfig` is never constructed
[INFO] [stdout]   --> src/config/config.rs:84:12
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub struct LinuxConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BellandeOSConfig` is never constructed
[INFO] [stdout]   --> src/config/config.rs:91:12
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub struct BellandeOSConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConfigPaths` is never constructed
[INFO] [stdout]   --> src/config/config.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub struct ConfigPaths {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/config/config.rs:172:12
[INFO] [stdout]     |
[INFO] [stdout] 171 | impl Config {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout] 172 |     pub fn load() -> Result<Self> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub fn save(&self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     fn get_config_path() -> Result<PathBuf> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     fn ensure_directories_exist() -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     fn verify_integrity(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 258 |     async fn create_backup(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 272 |     fn update_os_settings(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_default_allowed_commands` is never used
[INFO] [stdout]    --> src/config/config.rs:301:4
[INFO] [stdout]     |
[INFO] [stdout] 301 | fn get_default_allowed_commands() -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_default_denied_commands` is never used
[INFO] [stdout]    --> src/config/config.rs:310:4
[INFO] [stdout]     |
[INFO] [stdout] 310 | fn get_default_denied_commands() -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_default_macos_applications` is never used
[INFO] [stdout]    --> src/config/config.rs:322:4
[INFO] [stdout]     |
[INFO] [stdout] 322 | fn get_default_macos_applications() -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_permission` is never used
[INFO] [stdout]    --> src/config/config.rs:329:4
[INFO] [stdout]     |
[INFO] [stdout] 329 | fn is_valid_permission(permission: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_SIZE` is never used
[INFO] [stdout]   --> src/hsm/hsm.rs:35:7
[INFO] [stdout]    |
[INFO] [stdout] 35 | const KEY_SIZE: usize = 32;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `NONCE_SIZE` is never used
[INFO] [stdout]   --> src/hsm/hsm.rs:36:7
[INFO] [stdout]    |
[INFO] [stdout] 36 | const NONCE_SIZE: usize = 12;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_ROTATION_DAYS` is never used
[INFO] [stdout]   --> src/hsm/hsm.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | const KEY_ROTATION_DAYS: u64 = 30;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyStore` is never constructed
[INFO] [stdout]   --> src/hsm/hsm.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct KeyStore {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `KeyMetadata` is never constructed
[INFO] [stdout]   --> src/hsm/hsm.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | struct KeyMetadata {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `KeyType` is never used
[INFO] [stdout]   --> src/hsm/hsm.rs:59:6
[INFO] [stdout]    |
[INFO] [stdout] 59 | enum KeyType {
[INFO] [stdout]    |      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `KeyUsage` is never used
[INFO] [stdout]   --> src/hsm/hsm.rs:67:6
[INFO] [stdout]    |
[INFO] [stdout] 67 | enum KeyUsage {
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SecureStorage` is never constructed
[INFO] [stdout]   --> src/hsm/hsm.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct SecureStorage {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_secure_permissions` is never used
[INFO] [stdout]   --> src/hsm/hsm.rs:80:4
[INFO] [stdout]    |
[INFO] [stdout] 80 | fn set_secure_permissions(options: &mut OpenOptions) -> &mut OpenOptions {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `encode_sensitive_data` is never used
[INFO] [stdout]   --> src/hsm/hsm.rs:85:4
[INFO] [stdout]    |
[INFO] [stdout] 85 | fn encode_sensitive_data(data: &[u8]) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_sensitive_data` is never used
[INFO] [stdout]   --> src/hsm/hsm.rs:89:4
[INFO] [stdout]    |
[INFO] [stdout] 89 | fn decode_sensitive_data(data: &str) -> Result<Vec<u8>> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/hsm/hsm.rs:96:18
[INFO] [stdout]     |
[INFO] [stdout]  95 | impl SecureStorage {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout]  96 |     pub async fn new() -> Result<Self> {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     async fn initialize(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     async fn load_key_from_keyring(&self, line: &str) -> Result<Option<KeyStore>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     async fn load_key_from_keychain(&self, line: &str) -> Result<Option<KeyStore>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     async fn load_key_from_bellande(&self, line: &str) -> Result<Option<KeyStore>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 199 |     async fn load_master_key_from_keychain(&self) -> Result<Key<Aes256Gcm>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     async fn load_master_key_from_bellande(&self) -> Result<Key<Aes256Gcm>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     async fn save_keys(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub async fn generate_key(
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 333 |     pub async fn encrypt_data(&self, data: &str) -> Result<Vec<u8>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 353 |     pub async fn decrypt_data(&self, data: &[u8]) -> Result<String> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 373 |     async fn load_master_key_from_keyring(&self) -> Result<Key<Aes256Gcm>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 392 |     async fn load_master_key(&self) -> Result<Key<Aes256Gcm>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 401 |     async fn load_master_key_from_file(&self) -> Result<Key<Aes256Gcm>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 419 |     async fn encrypt_with_master_key(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 431 |     async fn check_key_rotation(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 455 |     async fn initialize_keychain(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |     async fn initialize_keyring(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 481 |     async fn initialize_bellande_secure_store(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 494 |     async fn generate_and_store_master_key(&self) -> Result<Key<Aes256Gcm>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 533 |     async fn store_master_key_to_file(&self, key: &[u8]) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 548 |     async fn store_key_in_platform_storage(&self, key_store: &KeyStore) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 562 |     async fn store_key_in_keychain(&self, key_store: &KeyStore, encoded_data: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 599 |     async fn store_key_in_keyring(&self, key_store: &KeyStore, encoded_data: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 623 |     async fn store_key_in_bellande(&self, key_store: &KeyStore, encoded_data: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 658 |     async fn store_key_in_file(&self, key_store: &KeyStore, encoded_data: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 682 |     async fn load_keys(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_platform_storage_path` is never used
[INFO] [stdout]    --> src/hsm/hsm.rs:764:4
[INFO] [stdout]     |
[INFO] [stdout] 764 | fn get_platform_storage_path() -> Result<PathBuf> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ensure_secure_directory` is never used
[INFO] [stdout]    --> src/hsm/hsm.rs:779:4
[INFO] [stdout]     |
[INFO] [stdout] 779 | fn ensure_secure_directory(path: &Path) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_key_fingerprint` is never used
[INFO] [stdout]    --> src/hsm/hsm.rs:793:4
[INFO] [stdout]     |
[INFO] [stdout] 793 | fn calculate_key_fingerprint(key: &[u8]) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log_crypto_operation` is never used
[INFO] [stdout]    --> src/hsm/hsm.rs:799:10
[INFO] [stdout]     |
[INFO] [stdout] 799 | async fn log_crypto_operation(operation: &str, data: &[u8]) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `encrypt_data` is never used
[INFO] [stdout]    --> src/hsm/hsm.rs:810:14
[INFO] [stdout]     |
[INFO] [stdout] 810 | pub async fn encrypt_data(data: &str) -> anyhow::Result<String> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decrypt_data` is never used
[INFO] [stdout]    --> src/hsm/hsm.rs:816:14
[INFO] [stdout]     |
[INFO] [stdout] 816 | pub async fn decrypt_data(encrypted_data: &str) -> anyhow::Result<String> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NetworkConfig` is never constructed
[INFO] [stdout]   --> src/network/network.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct NetworkConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NetworkCommands` is never constructed
[INFO] [stdout]   --> src/network/network.rs:56:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | struct NetworkCommands {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/network/network.rs:64:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl NetworkCommands {
[INFO] [stdout]    | -------------------- associated function in this implementation
[INFO] [stdout] 64 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AuditEvent` is never constructed
[INFO] [stdout]    --> src/network/network.rs:133:8
[INFO] [stdout]     |
[INFO] [stdout] 133 | struct AuditEvent {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AuditSeverity` is never used
[INFO] [stdout]    --> src/network/network.rs:143:6
[INFO] [stdout]     |
[INFO] [stdout] 143 | enum AuditSeverity {
[INFO] [stdout]     |      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `isolate_network` is never used
[INFO] [stdout]    --> src/network/network.rs:156:14
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub async fn isolate_network() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `restore_network` is never used
[INFO] [stdout]    --> src/network/network.rs:191:14
[INFO] [stdout]     |
[INFO] [stdout] 191 | pub async fn restore_network() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_command` is never used
[INFO] [stdout]    --> src/network/network.rs:234:10
[INFO] [stdout]     |
[INFO] [stdout] 234 | async fn run_command(cmd: &str, args: &[String]) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `replace_interface_placeholder` is never used
[INFO] [stdout]    --> src/network/network.rs:248:4
[INFO] [stdout]     |
[INFO] [stdout] 248 | fn replace_interface_placeholder(cmd: &[String], interface: &str) -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_firewall_rules` is never used
[INFO] [stdout]    --> src/network/network.rs:254:10
[INFO] [stdout]     |
[INFO] [stdout] 254 | async fn setup_firewall_rules(config: &NetworkConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_pf_firewall` is never used
[INFO] [stdout]    --> src/network/network.rs:264:10
[INFO] [stdout]     |
[INFO] [stdout] 264 | async fn setup_pf_firewall(config: &NetworkConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_iptables_firewall` is never used
[INFO] [stdout]    --> src/network/network.rs:278:10
[INFO] [stdout]     |
[INFO] [stdout] 278 | async fn setup_iptables_firewall(config: &NetworkConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_bell_firewall` is never used
[INFO] [stdout]    --> src/network/network.rs:303:10
[INFO] [stdout]     |
[INFO] [stdout] 303 | async fn setup_bell_firewall(config: &NetworkConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_pf_rules` is never used
[INFO] [stdout]    --> src/network/network.rs:324:4
[INFO] [stdout]     |
[INFO] [stdout] 324 | fn generate_pf_rules(config: &NetworkConfig) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_default_interface` is never used
[INFO] [stdout]    --> src/network/network.rs:354:4
[INFO] [stdout]     |
[INFO] [stdout] 354 | fn get_default_interface() -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `request_dhcp_lease` is never used
[INFO] [stdout]    --> src/network/network.rs:363:10
[INFO] [stdout]     |
[INFO] [stdout] 363 | async fn request_dhcp_lease(interface: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log_audit_event` is never used
[INFO] [stdout]    --> src/network/network.rs:387:10
[INFO] [stdout]     |
[INFO] [stdout] 387 | async fn log_audit_event(event_type: &str, user: &str, message: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_source_ip` is never used
[INFO] [stdout]    --> src/network/network.rs:410:10
[INFO] [stdout]     |
[INFO] [stdout] 410 | async fn get_source_ip() -> Option<String> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_event_severity` is never used
[INFO] [stdout]    --> src/network/network.rs:417:4
[INFO] [stdout]     |
[INFO] [stdout] 417 | fn get_event_severity(event_type: &str) -> AuditSeverity {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_audit_log` is never used
[INFO] [stdout]    --> src/network/network.rs:426:10
[INFO] [stdout]     |
[INFO] [stdout] 426 | async fn write_audit_log(event: &AuditEvent) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `flush_audit_log` is never used
[INFO] [stdout]    --> src/network/network.rs:442:10
[INFO] [stdout]     |
[INFO] [stdout] 442 | async fn flush_audit_log() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_audit_log_path` is never used
[INFO] [stdout]    --> src/network/network.rs:456:4
[INFO] [stdout]     |
[INFO] [stdout] 456 | fn get_audit_log_path() -> PathBuf {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rotate_audit_logs` is never used
[INFO] [stdout]    --> src/network/network.rs:465:14
[INFO] [stdout]     |
[INFO] [stdout] 465 | pub async fn rotate_audit_logs() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_network_allowed` is never used
[INFO] [stdout]    --> src/network/network.rs:494:14
[INFO] [stdout]     |
[INFO] [stdout] 494 | pub async fn is_network_allowed(config: &Config) -> Result<bool> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PrivilegeLevel` is never used
[INFO] [stdout]   --> src/user_privilege/privilege.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub enum PrivilegeLevel {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PrivilegeLevelError` is never used
[INFO] [stdout]   --> src/user_privilege/privilege.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub enum PrivilegeLevelError {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PrivilegeConfig` is never constructed
[INFO] [stdout]   --> src/user_privilege/privilege.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct PrivilegeConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PrivilegeManager` is never constructed
[INFO] [stdout]   --> src/user_privilege/privilege.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct PrivilegeManager {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PrivilegeElevation` is never constructed
[INFO] [stdout]   --> src/user_privilege/privilege.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | struct PrivilegeElevation {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `check_permission`, `elevate_privilege`, `revoke_elevation`, and `cleanup_expired_elevations` are never used
[INFO] [stdout]    --> src/user_privilege/privilege.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl PrivilegeManager {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 118 |     pub fn new(config: PrivilegeConfig) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub async fn check_permission(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 |     pub async fn elevate_privilege(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub async fn revoke_elevation(&mut self, user: &str, level: PrivilegeLevel) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn cleanup_expired_elevations(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_os_specific_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/privilege.rs:256:14
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub async fn check_os_specific_privileges(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_macos_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/privilege.rs:268:10
[INFO] [stdout]     |
[INFO] [stdout] 268 | async fn check_macos_privileges(user: &User, required_privilege: PrivilegeLevel) -> Result<bool> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_linux_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/privilege.rs:283:10
[INFO] [stdout]     |
[INFO] [stdout] 283 | async fn check_linux_privileges(user: &User, required_privilege: PrivilegeLevel) -> Result<bool> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/privilege.rs:299:10
[INFO] [stdout]     |
[INFO] [stdout] 299 | async fn check_bellande_privileges(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `User` is never constructed
[INFO] [stdout]   --> src/user_privilege/user.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct User {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UserSettings` is never constructed
[INFO] [stdout]   --> src/user_privilege/user.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct UserSettings {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UserError` is never used
[INFO] [stdout]   --> src/user_privilege/user.rs:59:10
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum UserError {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `is_locked`, `password_expired`, and `record_login_attempt` are never used
[INFO] [stdout]    --> src/user_privilege/user.rs:87:12
[INFO] [stdout]     |
[INFO] [stdout]  86 | impl User {
[INFO] [stdout]     | --------- associated items in this implementation
[INFO] [stdout]  87 |     pub fn new(username: &str, password: &str, privilege: PrivilegeLevel) -> Result<Self> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn is_locked(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn password_expired(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn record_login_attempt(&mut self, success: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_user` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:137:14
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub async fn add_user(
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_user` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:171:14
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub async fn remove_user(config: &mut Config, username: &str) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `change_password` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:194:14
[INFO] [stdout]     |
[INFO] [stdout] 194 | pub async fn change_password(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `change_privilege` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:235:14
[INFO] [stdout]     |
[INFO] [stdout] 235 | pub async fn change_privilege(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_user_to_group` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:275:14
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub async fn add_user_to_group(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_user_from_group` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:326:14
[INFO] [stdout]     |
[INFO] [stdout] 326 | pub async fn remove_user_from_group(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash_password` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:363:4
[INFO] [stdout]     |
[INFO] [stdout] 363 | fn hash_password(password: &str) -> Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_password` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:377:4
[INFO] [stdout]     |
[INFO] [stdout] 377 | fn verify_password(hash: &str, password: &str) -> Result<bool> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_totp_secret` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:390:4
[INFO] [stdout]     |
[INFO] [stdout] 390 | fn generate_totp_secret() -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_password_complexity` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:394:4
[INFO] [stdout]     |
[INFO] [stdout] 394 | fn validate_password_complexity(password: &str) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_os_user` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:415:10
[INFO] [stdout]     |
[INFO] [stdout] 415 | async fn create_os_user(username: &str, privilege: PrivilegeLevel) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_os_user` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:424:10
[INFO] [stdout]     |
[INFO] [stdout] 424 | async fn remove_os_user(username: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_os_password` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:433:10
[INFO] [stdout]     |
[INFO] [stdout] 433 | async fn update_os_password(username: &str, password: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_os_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:442:10
[INFO] [stdout]     |
[INFO] [stdout] 442 | async fn update_os_privileges(username: &str, privilege: PrivilegeLevel) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_macos_user` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:452:10
[INFO] [stdout]     |
[INFO] [stdout] 452 | async fn create_macos_user(username: &str, privilege: PrivilegeLevel) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_linux_user` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:467:10
[INFO] [stdout]     |
[INFO] [stdout] 467 | async fn create_linux_user(username: &str, privilege: PrivilegeLevel) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_bellande_user` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:482:10
[INFO] [stdout]     |
[INFO] [stdout] 482 | async fn create_bellande_user(username: &str, privilege: PrivilegeLevel) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_macos_user` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:503:10
[INFO] [stdout]     |
[INFO] [stdout] 503 | async fn remove_macos_user(username: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_linux_user` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:511:10
[INFO] [stdout]     |
[INFO] [stdout] 511 | async fn remove_linux_user(username: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_bellande_user` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:519:10
[INFO] [stdout]     |
[INFO] [stdout] 519 | async fn remove_bellande_user(username: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_macos_password` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:527:10
[INFO] [stdout]     |
[INFO] [stdout] 527 | async fn update_macos_password(username: &str, password: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_linux_password` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:535:10
[INFO] [stdout]     |
[INFO] [stdout] 535 | async fn update_linux_password(username: &str, password: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_bellande_password` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:552:10
[INFO] [stdout]     |
[INFO] [stdout] 552 | async fn update_bellande_password(username: &str, password: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_macos_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:569:10
[INFO] [stdout]     |
[INFO] [stdout] 569 | async fn update_macos_privileges(username: &str, privilege: PrivilegeLevel) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_linux_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:587:10
[INFO] [stdout]     |
[INFO] [stdout] 587 | async fn update_linux_privileges(username: &str, privilege: PrivilegeLevel) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_bellande_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:611:10
[INFO] [stdout]     |
[INFO] [stdout] 611 | async fn update_bellande_privileges(username: &str, privilege: PrivilegeLevel) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_os_user_to_group` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:627:10
[INFO] [stdout]     |
[INFO] [stdout] 627 | async fn add_os_user_to_group(username: &str, group: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `remove_os_user_from_group` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:652:10
[INFO] [stdout]     |
[INFO] [stdout] 652 | async fn remove_os_user_from_group(username: &str, group: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `KeyType` is more private than the item `SecureStorage::generate_key`
[INFO] [stdout]    --> src/hsm/hsm.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 290 | /     pub async fn generate_key(
[INFO] [stdout] 291 | |         &self,
[INFO] [stdout] 292 | |         label: &str,
[INFO] [stdout] 293 | |         key_type: KeyType,
[INFO] [stdout] 294 | |         usage: KeyUsage,
[INFO] [stdout] 295 | |     ) -> Result<Vec<u8>> {
[INFO] [stdout]     | |________________________^ method `SecureStorage::generate_key` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `KeyType` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/hsm/hsm.rs:59:1
[INFO] [stdout]     |
[INFO] [stdout]  59 | enum KeyType {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `KeyUsage` is more private than the item `SecureStorage::generate_key`
[INFO] [stdout]    --> src/hsm/hsm.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 290 | /     pub async fn generate_key(
[INFO] [stdout] 291 | |         &self,
[INFO] [stdout] 292 | |         label: &str,
[INFO] [stdout] 293 | |         key_type: KeyType,
[INFO] [stdout] 294 | |         usage: KeyUsage,
[INFO] [stdout] 295 | |     ) -> Result<Vec<u8>> {
[INFO] [stdout]     | |________________________^ method `SecureStorage::generate_key` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `KeyUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/hsm/hsm.rs:67:1
[INFO] [stdout]     |
[INFO] [stdout]  67 | enum KeyUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SecurityAuditConfig` is never constructed
[INFO] [stdout]   --> src/audit/security_audit.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct SecurityAuditConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_os_critical_paths` is never used
[INFO] [stdout]   --> src/audit/security_audit.rs:59:4
[INFO] [stdout]    |
[INFO] [stdout] 59 | fn get_os_critical_paths() -> Vec<PathBuf> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_security_audit` is never used
[INFO] [stdout]   --> src/audit/security_audit.rs:81:14
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub async fn perform_security_audit(config: &Config) -> Result<()> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_system_updates` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:116:10
[INFO] [stdout]     |
[INFO] [stdout] 116 | async fn check_system_updates() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scan_for_vulnerabilities` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:154:10
[INFO] [stdout]     |
[INFO] [stdout] 154 | async fn scan_for_vulnerabilities(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_software_versions` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:170:10
[INFO] [stdout]     |
[INFO] [stdout] 170 | async fn check_software_versions() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_common_misconfigurations` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:189:10
[INFO] [stdout]     |
[INFO] [stdout] 189 | async fn check_common_misconfigurations(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_permissions` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:203:10
[INFO] [stdout]     |
[INFO] [stdout] 203 | async fn check_permissions(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_path_permissions` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:220:10
[INFO] [stdout]     |
[INFO] [stdout] 220 | async fn check_path_permissions(path: &Path) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_world_writable_files` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:255:10
[INFO] [stdout]     |
[INFO] [stdout] 255 | async fn check_world_writable_files() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_suid_binaries` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:289:10
[INFO] [stdout]     |
[INFO] [stdout] 289 | async fn check_suid_binaries() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_suspicious_processes` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:350:10
[INFO] [stdout]     |
[INFO] [stdout] 350 | async fn check_suspicious_processes(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_unauthorized_users` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:381:10
[INFO] [stdout]     |
[INFO] [stdout] 381 | async fn check_unauthorized_users(config: &Config) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_macos_users` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:392:10
[INFO] [stdout]     |
[INFO] [stdout] 392 | async fn check_macos_users(config: &Config) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_linux_users` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:413:10
[INFO] [stdout]     |
[INFO] [stdout] 413 | async fn check_linux_users(config: &Config) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_users` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:431:10
[INFO] [stdout]     |
[INFO] [stdout] 431 | async fn check_bellande_users(config: &Config) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_macos_system_user` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:452:4
[INFO] [stdout]     |
[INFO] [stdout] 452 | fn is_macos_system_user(username: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_linux_system_user` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:459:4
[INFO] [stdout]     |
[INFO] [stdout] 459 | fn is_linux_system_user(username: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_bellande_system_user` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:491:4
[INFO] [stdout]     |
[INFO] [stdout] 491 | fn is_bellande_system_user(username: &str) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_open_ports` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:498:10
[INFO] [stdout]     |
[INFO] [stdout] 498 | async fn check_open_ports(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_port_output` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:542:10
[INFO] [stdout]     |
[INFO] [stdout] 542 | async fn check_port_output(output: &str, allowed_ports: &HashSet<u16>) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_port_from_line` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:561:4
[INFO] [stdout]     |
[INFO] [stdout] 561 | fn extract_port_from_line(line: &str) -> Option<u16> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_file_integrity` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:570:10
[INFO] [stdout]     |
[INFO] [stdout] 570 | async fn check_file_integrity(config: &SecurityAuditConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_directory_integrity` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:584:10
[INFO] [stdout]     |
[INFO] [stdout] 584 | async fn check_directory_integrity(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_os_specific_checks` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:616:10
[INFO] [stdout]     |
[INFO] [stdout] 616 | async fn perform_os_specific_checks() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_macos_specific_checks` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:626:10
[INFO] [stdout]     |
[INFO] [stdout] 626 | async fn perform_macos_specific_checks() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_linux_specific_checks` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:675:10
[INFO] [stdout]     |
[INFO] [stdout] 675 | async fn perform_linux_specific_checks() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_bellande_specific_checks` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:714:10
[INFO] [stdout]     |
[INFO] [stdout] 714 | async fn perform_bellande_specific_checks() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_kernel_parameters` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:763:10
[INFO] [stdout]     |
[INFO] [stdout] 763 | async fn check_kernel_parameters() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_file_hash` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:791:4
[INFO] [stdout]     |
[INFO] [stdout] 791 | fn calculate_file_hash(path: &Path) -> Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_hash_database` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:798:4
[INFO] [stdout]     |
[INFO] [stdout] 798 | fn load_hash_database(path: &Path) -> Result<HashMap<PathBuf, String>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_hash_database` is never used
[INFO] [stdout]    --> src/audit/security_audit.rs:808:4
[INFO] [stdout]     |
[INFO] [stdout] 808 | fn save_hash_database(path: &Path, database: &HashMap<PathBuf, String>) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash_password` is never used
[INFO] [stdout]    --> src/authentication_compliance/authentication.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn hash_password(password: &str) -> Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NetworkRequirements` is never constructed
[INFO] [stdout]   --> src/authentication_compliance/complication.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct NetworkRequirements {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ComplianceConfig` is never constructed
[INFO] [stdout]   --> src/authentication_compliance/complication.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct ComplianceConfig {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PasswordViolation` is never constructed
[INFO] [stdout]   --> src/authentication_compliance/complication.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | struct PasswordViolation {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ViolationSeverity` is never used
[INFO] [stdout]   --> src/authentication_compliance/complication.rs:68:6
[INFO] [stdout]    |
[INFO] [stdout] 68 | enum ViolationSeverity {
[INFO] [stdout]    |      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_security_paths` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:115:4
[INFO] [stdout]     |
[INFO] [stdout] 115 | fn get_security_paths() -> HashMap<String, Vec<PathBuf>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_required_services` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:162:4
[INFO] [stdout]     |
[INFO] [stdout] 162 | fn get_required_services() -> Vec<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_required_kernel_params` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:178:4
[INFO] [stdout]     |
[INFO] [stdout] 178 | fn get_required_kernel_params() -> HashMap<String, String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_security_services` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:302:4
[INFO] [stdout]     |
[INFO] [stdout] 302 | fn get_security_services() -> HashMap<String, Vec<String>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_compliance` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:366:14
[INFO] [stdout]     |
[INFO] [stdout] 366 | pub async fn check_compliance(config: &Config) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_password_complexity` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:398:10
[INFO] [stdout]     |
[INFO] [stdout] 398 | async fn check_password_complexity(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_common_password` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:500:10
[INFO] [stdout]     |
[INFO] [stdout] 500 | async fn is_common_password(password: &str) -> Result<bool> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_password_strength` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:512:4
[INFO] [stdout]     |
[INFO] [stdout] 512 | fn validate_password_strength(password: &str, config: &ComplianceConfig) -> Vec<PasswordViolation> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_repeating_chars` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:571:4
[INFO] [stdout]     |
[INFO] [stdout] 571 | fn has_repeating_chars(password: &str, max_repeats: usize) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_password_entropy` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:590:4
[INFO] [stdout]     |
[INFO] [stdout] 590 | fn calculate_password_entropy(password: &str) -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_file_permissions` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:618:10
[INFO] [stdout]     |
[INFO] [stdout] 618 | async fn check_file_permissions(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_single_file_permissions` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:662:10
[INFO] [stdout]     |
[INFO] [stdout] 662 | async fn check_single_file_permissions(file_path: &Path) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_system_configurations` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:709:10
[INFO] [stdout]     |
[INFO] [stdout] 709 | async fn check_system_configurations(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_kernel_parameter` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:738:10
[INFO] [stdout]     |
[INFO] [stdout] 738 | async fn check_kernel_parameter(param: &str, expected_value: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_expected_value` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:775:4
[INFO] [stdout]     |
[INFO] [stdout] 775 | fn get_expected_value(param: &str) -> Result<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_kernel_parameter` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:787:10
[INFO] [stdout]     |
[INFO] [stdout] 787 | async fn get_kernel_parameter(param: &str) -> Result<String> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_audit_log_integrity` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:797:10
[INFO] [stdout]     |
[INFO] [stdout] 797 | async fn check_audit_log_integrity(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_network_configurations` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:838:10
[INFO] [stdout]     |
[INFO] [stdout] 838 | async fn check_network_configurations(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `perform_os_specific_checks` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:865:10
[INFO] [stdout]     |
[INFO] [stdout] 865 | async fn perform_os_specific_checks(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_macos_configurations` is never used
[INFO] [stdout]    --> src/authentication_compliance/complication.rs:951:10
[INFO] [stdout]     |
[INFO] [stdout] 951 | async fn check_macos_configurations() -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_linux_configurations` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1028:10
[INFO] [stdout]      |
[INFO] [stdout] 1028 | async fn check_linux_configurations(compliance_config: &ComplianceConfig) -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_configurations` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1090:10
[INFO] [stdout]      |
[INFO] [stdout] 1090 | async fn check_bellande_configurations() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_sysctl_settings` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1159:10
[INFO] [stdout]      |
[INFO] [stdout] 1159 | async fn check_sysctl_settings() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_password_policies` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1193:10
[INFO] [stdout]      |
[INFO] [stdout] 1193 | async fn check_password_policies() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_core_dumps` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1222:10
[INFO] [stdout]      |
[INFO] [stdout] 1222 | async fn check_core_dumps() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_security_policies` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1240:10
[INFO] [stdout]      |
[INFO] [stdout] 1240 | async fn check_bellande_security_policies() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_service_running` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1270:10
[INFO] [stdout]      |
[INFO] [stdout] 1270 | async fn is_service_running(service: &str) -> Result<bool> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_firewall_status` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1294:10
[INFO] [stdout]      |
[INFO] [stdout] 1294 | async fn check_firewall_status() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_network_encryption` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1346:10
[INFO] [stdout]      |
[INFO] [stdout] 1346 | async fn check_network_encryption(network_requirements: &NetworkRequirements) -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_ssl_versions` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1359:10
[INFO] [stdout]      |
[INFO] [stdout] 1359 | async fn check_ssl_versions(required_protocols: &[String]) -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_ssh_configuration` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1385:10
[INFO] [stdout]      |
[INFO] [stdout] 1385 | async fn check_ssh_configuration() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_encrypted_protocols` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1429:10
[INFO] [stdout]      |
[INFO] [stdout] 1429 | async fn check_encrypted_protocols() -> Result<()> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_last_password_change` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1454:10
[INFO] [stdout]      |
[INFO] [stdout] 1454 | async fn get_last_password_change(username: &str) -> Result<Option<String>> {
[INFO] [stdout]      |          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calculate_file_hash` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1481:4
[INFO] [stdout]      |
[INFO] [stdout] 1481 | fn calculate_file_hash(path: &Path) -> Result<String> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_file_hashes` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1488:4
[INFO] [stdout]      |
[INFO] [stdout] 1488 | fn load_file_hashes(path: &Path) -> Result<HashMap<PathBuf, String>> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_file_hash` is never used
[INFO] [stdout]     --> src/authentication_compliance/complication.rs:1497:4
[INFO] [stdout]      |
[INFO] [stdout] 1497 | fn save_file_hash(path: &Path, file_path: &Path, hash: &str) -> Result<()> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `allow_syscall` is never used
[INFO] [stdout]    --> src/command/command.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | impl SandboxContext {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 111 |     fn allow_syscall(&mut self, syscall: Syscall) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `start_time` is never read
[INFO] [stdout]    --> src/command/command.rs:124:5
[INFO] [stdout]     |
[INFO] [stdout] 119 | struct CommandContext {
[INFO] [stdout]     |        -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 124 |     start_time: SystemTime,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `CommandContext` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_macos_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:630:10
[INFO] [stdout]     |
[INFO] [stdout] 630 | async fn check_macos_patterns(ctx: &CommandContext, command: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_linux_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:653:10
[INFO] [stdout]     |
[INFO] [stdout] 653 | async fn check_linux_patterns(ctx: &CommandContext, command: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_patterns` is never used
[INFO] [stdout]    --> src/command/command.rs:676:10
[INFO] [stdout]     |
[INFO] [stdout] 676 | async fn check_bellande_patterns(ctx: &CommandContext, command: &str) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `save_keys` and `generate_key` are never used
[INFO] [stdout]    --> src/hsm/hsm.rs:237:14
[INFO] [stdout]     |
[INFO] [stdout]  95 | impl SecureStorage {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 237 |     async fn save_keys(&self) -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 290 |     pub async fn generate_key(
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `firewall_cmd` is never read
[INFO] [stdout]   --> src/network/network.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | struct NetworkCommands {
[INFO] [stdout]    |        --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 60 |     firewall_cmd: Vec<String>,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NetworkCommands` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rotate_audit_logs` is never used
[INFO] [stdout]    --> src/network/network.rs:465:14
[INFO] [stdout]     |
[INFO] [stdout] 465 | pub async fn rotate_audit_logs() -> Result<()> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `InsufficientPrivileges`, `ExpiredPrivileges`, `GroupNotFound`, and `PermissionNotFound` are never constructed
[INFO] [stdout]   --> src/user_privilege/privilege.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub enum PrivilegeLevelError {
[INFO] [stdout]    |          ------------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 46 |     InsufficientPrivileges,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 47 |     #[error("Expired privileges")]
[INFO] [stdout] 48 |     ExpiredPrivileges,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 49 |     #[error("Group not found: {0}")]
[INFO] [stdout] 50 |     GroupNotFound(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 51 |     #[error("Permission not found: {0}")]
[INFO] [stdout] 52 |     PermissionNotFound(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PrivilegeLevelError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `config` is never read
[INFO] [stdout]   --> src/user_privilege/privilege.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct PrivilegeManager {
[INFO] [stdout]    |            ---------------- field in this struct
[INFO] [stdout] 78 |     config: PrivilegeConfig,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PrivilegeManager` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `granted_at` and `reason` are never read
[INFO] [stdout]   --> src/user_privilege/privilege.rs:85:5
[INFO] [stdout]    |
[INFO] [stdout] 83 | struct PrivilegeElevation {
[INFO] [stdout]    |        ------------------ fields in this struct
[INFO] [stdout] 84 |     level: PrivilegeLevel,
[INFO] [stdout] 85 |     granted_at: SystemTime,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 86 |     expires_at: SystemTime,
[INFO] [stdout] 87 |     reason: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PrivilegeElevation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `elevate_privilege`, `revoke_elevation`, and `cleanup_expired_elevations` are never used
[INFO] [stdout]    --> src/user_privilege/privilege.rs:185:18
[INFO] [stdout]     |
[INFO] [stdout] 117 | impl PrivilegeManager {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 185 |     pub async fn elevate_privilege(
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub async fn revoke_elevation(&mut self, user: &str, level: PrivilegeLevel) -> Result<()> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 247 |     pub fn cleanup_expired_elevations(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_os_specific_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/privilege.rs:256:14
[INFO] [stdout]     |
[INFO] [stdout] 256 | pub async fn check_os_specific_privileges(
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_macos_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/privilege.rs:268:10
[INFO] [stdout]     |
[INFO] [stdout] 268 | async fn check_macos_privileges(user: &User, required_privilege: PrivilegeLevel) -> Result<bool> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_linux_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/privilege.rs:283:10
[INFO] [stdout]     |
[INFO] [stdout] 283 | async fn check_linux_privileges(user: &User, required_privilege: PrivilegeLevel) -> Result<bool> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_bellande_privileges` is never used
[INFO] [stdout]    --> src/user_privilege/privilege.rs:299:10
[INFO] [stdout]     |
[INFO] [stdout] 299 | async fn check_bellande_privileges(
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `AccountLocked` and `PasswordExpired` are never constructed
[INFO] [stdout]   --> src/user_privilege/user.rs:67:5
[INFO] [stdout]    |
[INFO] [stdout] 59 | pub enum UserError {
[INFO] [stdout]    |          --------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 67 |     AccountLocked(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 68 |     #[error("Password expired")]
[INFO] [stdout] 69 |     PasswordExpired,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UserError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_locked`, `password_expired`, and `record_login_attempt` are never used
[INFO] [stdout]    --> src/user_privilege/user.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout]  86 | impl User {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn is_locked(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn password_expired(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn record_login_attempt(&mut self, success: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_password` is never used
[INFO] [stdout]    --> src/user_privilege/user.rs:377:4
[INFO] [stdout]     |
[INFO] [stdout] 377 | fn verify_password(hash: &str, password: &str) -> Result<bool> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 42.83s
[INFO] running `Command { std: "docker" "inspect" "d1e24adf01d9ceb945df42d6c7b7e7711c59add524466c94bd98f564a8482f91", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d1e24adf01d9ceb945df42d6c7b7e7711c59add524466c94bd98f564a8482f91", kill_on_drop: false }`
[INFO] [stdout] d1e24adf01d9ceb945df42d6c7b7e7711c59add524466c94bd98f564a8482f91
