[INFO] fetching crate qssh 0.0.3-alpha...
[INFO] testing qssh-0.0.3-alpha against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-8
[INFO] extracting crate qssh 0.0.3-alpha into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate qssh 0.0.3-alpha
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate qssh 0.0.3-alpha
[INFO] tweaked toml for crates.io crate qssh 0.0.3-alpha written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate qssh 0.0.3-alpha on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate qssh 0.0.3-alpha already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f31f22edbc4d3b523eea989ec431e8e4fdddbed4dd151ab9d70a7d29ec1b4f26
[INFO] running `Command { std: "docker" "start" "-a" "f31f22edbc4d3b523eea989ec431e8e4fdddbed4dd151ab9d70a7d29ec1b4f26", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f31f22edbc4d3b523eea989ec431e8e4fdddbed4dd151ab9d70a7d29ec1b4f26", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f31f22edbc4d3b523eea989ec431e8e4fdddbed4dd151ab9d70a7d29ec1b4f26", kill_on_drop: false }`
[INFO] [stdout] f31f22edbc4d3b523eea989ec431e8e4fdddbed4dd151ab9d70a7d29ec1b4f26
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8d829b9192807dab8bdf032e4c085718c442def1aa672c749cd1270f4e7a1e9d
[INFO] running `Command { std: "docker" "start" "-a" "8d829b9192807dab8bdf032e4c085718c442def1aa672c749cd1270f4e7a1e9d", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.175
[INFO] [stderr]    Compiling find-msvc-tools v0.1.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling unicode-ident v1.0.19
[INFO] [stderr]    Compiling cfg-if v1.0.3
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling pqcrypto-traits v0.3.5
[INFO] [stderr]    Compiling serde_core v1.0.225
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling litemap v0.8.0
[INFO] [stderr]    Compiling writeable v0.6.1
[INFO] [stderr]    Compiling memchr v2.7.5
[INFO] [stderr]    Compiling serde v1.0.225
[INFO] [stderr]    Compiling icu_normalizer_data v2.0.0
[INFO] [stderr]    Compiling icu_properties_data v2.0.1
[INFO] [stderr]    Compiling bitflags v2.9.4
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling anstyle-parse v0.2.7
[INFO] [stderr]    Compiling regex-syntax v0.8.6
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling anstyle-query v1.1.4
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling anstyle v1.0.11
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling opaque-debug v0.3.1
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling anyhow v1.0.99
[INFO] [stderr]    Compiling clap_lex v0.7.5
[INFO] [stderr]    Compiling iri-string v0.7.8
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling anstream v0.6.20
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling mio v1.0.4
[INFO] [stderr]    Compiling socket2 v0.6.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling signal-hook-registry v1.4.6
[INFO] [stderr]    Compiling cc v1.2.37
[INFO] [stderr]    Compiling indexmap v2.11.3
[INFO] [stderr]    Compiling parking_lot v0.12.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling clap_builder v4.5.47
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling rtoolbox v0.0.3
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling jiff v0.2.15
[INFO] [stderr]    Compiling keccak v0.1.5
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling ghash v0.5.1
[INFO] [stderr]    Compiling iana-time-zone v0.1.64
[INFO] [stderr]    Compiling rpassword v7.4.0
[INFO] [stderr]    Compiling sha3 v0.10.8
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling regex-automata v0.4.10
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling termios v0.3.3
[INFO] [stderr]    Compiling hostname v0.4.1
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling if-addrs v0.12.0
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling whoami v1.6.1
[INFO] [stderr]    Compiling pqcrypto-internals v0.2.11
[INFO] [stderr]    Compiling openssl-sys v0.9.109
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling pqcrypto-hqc v0.2.2
[INFO] [stderr]    Compiling pqcrypto-sphincsplus v0.7.2
[INFO] [stderr]    Compiling pqcrypto-kyber v0.8.1
[INFO] [stderr]    Compiling pqcrypto-classicmceliece v0.2.1
[INFO] [stderr]    Compiling pqcrypto-dilithium v0.5.0
[INFO] [stderr]    Compiling lz4-sys v1.11.1+lz4-1.10.0
[INFO] [stderr]    Compiling pqcrypto-falcon v0.3.0
[INFO] [stderr]    Compiling pqcrypto-kyber v0.4.1
[INFO] [stderr]    Compiling pqcrypto-falcon v0.2.10
[INFO] [stderr]    Compiling pqcrypto-sphincsplus v0.5.3
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling regex v1.11.2
[INFO] [stderr]    Compiling env_filter v0.1.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.0
[INFO] [stderr]    Compiling zerovec-derive v0.11.1
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling serde_derive v1.0.225
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling zeroize_derive v1.4.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.5.47
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.0
[INFO] [stderr]    Compiling zerovec v0.11.4
[INFO] [stderr]    Compiling zerotrie v0.2.2
[INFO] [stderr]    Compiling zeroize v1.8.1
[INFO] [stderr]    Compiling rustls-pki-types v1.12.0
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling tinystr v0.8.1
[INFO] [stderr]    Compiling icu_locale_core v2.0.0
[INFO] [stderr]    Compiling potential_utf v0.1.3
[INFO] [stderr]    Compiling icu_collections v2.0.0
[INFO] [stderr]    Compiling icu_provider v2.0.0
[INFO] [stderr]    Compiling clap v4.5.47
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling env_logger v0.11.8
[INFO] [stderr]    Compiling icu_properties v2.0.1
[INFO] [stderr]    Compiling icu_normalizer v2.0.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling tokio-util v0.7.16
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling h2 v0.4.12
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling tower-http v0.6.6
[INFO] [stderr]    Compiling hyper v1.7.0
[INFO] [stderr]    Compiling hyper-util v0.1.17
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.23
[INFO] [stderr]    Compiling lz4 v1.28.1
[INFO] [stderr]    Compiling pqcrypto v0.17.0
[INFO] [stderr]    Compiling qssh v0.0.3-alpha (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `QsshError`
[INFO] [stdout]  --> src/crypto/cipher_choice.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{Result, QsshError};
[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: `KeyType`
[INFO] [stdout]  --> src/client.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 |     vault::{QuantumVault, KeyType},
[INFO] [stdout]   |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/agent/mod.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH`
[INFO] [stdout]   --> src/agent/mod.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]    |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `UnixListener` and `UnixStream`
[INFO] [stdout]  --> src/x11/mod.rs:7:42
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::net::{TcpListener, TcpStream, UnixListener, UnixStream};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsRawFd` and `FromRawFd`
[INFO] [stdout]  --> src/pty.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::os::unix::io::{AsRawFd, FromRawFd, RawFd};
[INFO] [stdout]   |                         ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha3_512`
[INFO] [stdout]  --> src/vault/mod.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use sha3::{Sha3_256, Sha3_512, Digest};
[INFO] [stdout]   |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha3_512`
[INFO] [stdout]  --> src/vault/lamport.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use sha3::{Sha3_256, Sha3_512, Digest};
[INFO] [stdout]   |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/shell_handler.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]  --> src/shell_handler.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsRawFd`
[INFO] [stdout]  --> src/shell_handler.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::os::unix::io::{AsRawFd, FromRawFd};
[INFO] [stdout]   |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsRawFd` and `RawFd`
[INFO] [stdout]  --> src/shell_handler_pty.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::os::unix::io::{AsRawFd, FromRawFd, RawFd};
[INFO] [stdout]   |                         ^^^^^^^             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::fs::File`
[INFO] [stdout]  --> src/shell_handler_pty.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead` and `AsyncWrite`
[INFO] [stdout]  --> src/pty_async.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::io::{AsyncRead, AsyncWrite, AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Stdio`
[INFO] [stdout]  --> src/pty_async.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::process::Stdio;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsRawFd`
[INFO] [stdout]  --> src/pty_thread.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::os::unix::io::{AsRawFd, RawFd, FromRawFd};
[INFO] [stdout]   |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Child`
[INFO] [stdout]  --> src/shell_handler_thread.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::process::{Command, Child};
[INFO] [stdout]   |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::mpsc`
[INFO] [stdout]  --> src/shell_handler_thread.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::mpsc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::path::{Path, PathBuf};
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::sync::Mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/subsystems/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]  --> src/subsystems/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `oneshot`
[INFO] [stdout]  --> src/multiplex/mod.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio::sync::{RwLock, mpsc, oneshot};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/proxy/mod.rs:8:31
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/proxy/mod.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/known_hosts.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ZlibEncoder`
[INFO] [stdout]  --> src/compression.rs:7:33
[INFO] [stdout]   |
[INFO] [stdout] 7 | use flate2::read::{ZlibDecoder, ZlibEncoder};
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ZlibDecoder as ZlibWriteDecoder`
[INFO] [stdout]  --> src/compression.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use flate2::write::{ZlibDecoder as ZlibWriteDecoder, ZlibEncoder as ZlibWriteEncoder};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `UNIX_EPOCH`
[INFO] [stdout]  --> src/gssapi.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::{Duration, SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Engine as _` and `engine::general_purpose::STANDARD as BASE64`
[INFO] [stdout]  --> src/gssapi.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | use base64::{Engine as _, engine::general_purpose::STANDARD as BASE64};
[INFO] [stdout]   |              ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/shell_handler.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut process = cmd.spawn()
[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/port_forward.rs:230:24
[INFO] [stdout]     |
[INFO] [stdout] 230 |     let (tx_to_remote, mut rx_to_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |                        ----^^^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PublicKey`
[INFO] [stdout]    --> src/crypto/mod.rs:125:37
[INFO] [stdout]     |
[INFO] [stdout] 125 |         use pqcrypto_traits::sign::{PublicKey as PubKey, DetachedSignature};
[INFO] [stdout]     |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]   --> src/client.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]   --> src/client.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/shell_handler_async.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/shell_handler_async.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/proxy/mod.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `endpoint`
[INFO] [stdout]   --> src/crypto/qrng_integration.rs:61:37
[INFO] [stdout]    |
[INFO] [stdout] 61 |     async fn fetch_from_qrng(&self, endpoint: &str, num_bytes: usize) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_endpoint`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_bytes`
[INFO] [stdout]   --> src/crypto/qrng_integration.rs:61:53
[INFO] [stdout]    |
[INFO] [stdout] 61 |     async fn fetch_from_qrng(&self, endpoint: &str, num_bytes: usize) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |                                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkd_key`
[INFO] [stdout]    --> src/handshake.rs:250:14
[INFO] [stdout]     |
[INFO] [stdout] 250 |         let (qkd_key, qkd_proof): (Option<Vec<u8>>, Option<Vec<u8>>) = (None, None);
[INFO] [stdout]     |              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_qkd_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/handshake.rs:438:13
[INFO] [stdout]     |
[INFO] [stdout] 438 |         let mut password_manager = crate::auth::system_password_auth();
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rekey`
[INFO] [stdout]    --> src/server.rs:196:24
[INFO] [stdout]     |
[INFO] [stdout] 196 |         Message::Rekey(rekey) => {
[INFO] [stdout]     |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_rekey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `byte_order`
[INFO] [stdout]    --> src/x11/mod.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |     let byte_order = auth_buffer[0];
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_byte_order`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `protocol_major`
[INFO] [stdout]    --> src/x11/mod.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 179 |     let protocol_major = u16::from_be_bytes([auth_buffer[2], auth_buffer[3]]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_protocol_major`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `protocol_minor`
[INFO] [stdout]    --> src/x11/mod.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |     let protocol_minor = u16::from_be_bytes([auth_buffer[4], auth_buffer[5]]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_protocol_minor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pty.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 |         let mut async_fd = match tokio::io::unix::AsyncFd::new(self.fd) {
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pty.rs:218:13
[INFO] [stdout]     |
[INFO] [stdout] 218 |         let mut async_fd = match tokio::io::unix::AsyncFd::new(self.fd) {
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/auth.rs:132:13
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let mut key_data;
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `announce_task`
[INFO] [stdout]   --> src/p2p/discovery.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let announce_task = {
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_announce_task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket`
[INFO] [stdout]    --> src/p2p/nat.rs:148:37
[INFO] [stdout]     |
[INFO] [stdout] 148 |     async fn detect_nat_type(&self, socket: &UdpSocket) -> Result<NatType> {
[INFO] [stdout]     |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slave_stdio`
[INFO] [stdout]   --> src/shell_handler.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let slave_stdio = unsafe { Stdio::from_raw_fd(slave_fd) };
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slave_stdio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_to_remote`
[INFO] [stdout]    --> src/port_forward.rs:230:10
[INFO] [stdout]     |
[INFO] [stdout] 230 |     let (tx_to_remote, mut rx_to_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_to_remote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rx_to_remote`
[INFO] [stdout]    --> src/port_forward.rs:230:24
[INFO] [stdout]     |
[INFO] [stdout] 230 |     let (tx_to_remote, mut rx_to_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rx_to_remote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_from_remote`
[INFO] [stdout]    --> src/port_forward.rs:231:10
[INFO] [stdout]     |
[INFO] [stdout] 231 |     let (tx_from_remote, mut rx_from_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_from_remote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]    --> src/subsystems/sftp/protocol.rs:252:13
[INFO] [stdout]     |
[INFO] [stdout] 252 |         let length = cursor.read_u32::<BigEndian>()? as usize;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extensions`
[INFO] [stdout]    --> src/subsystems/sftp/protocol.rs:332:45
[INFO] [stdout]     |
[INFO] [stdout] 332 |             SftpMessage::Version { version, extensions } => {
[INFO] [stdout]     |                                             ^^^^^^^^^^ help: try ignoring the field: `extensions: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport`
[INFO] [stdout]    --> src/multiplex/mod.rs:240:5
[INFO] [stdout]     |
[INFO] [stdout] 240 |     transport: &Arc<Transport>,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `command`
[INFO] [stdout]    --> src/multiplex/mod.rs:241:5
[INFO] [stdout]     |
[INFO] [stdout] 241 |     command: Option<String>,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/multiplex/mod.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 242 |     env: HashMap<String, String>,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/session.rs:443:31
[INFO] [stdout]     |
[INFO] [stdout] 443 | fn encrypt_state(data: &[u8], key: &[u8], nonce: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nonce`
[INFO] [stdout]    --> src/session.rs:443:43
[INFO] [stdout]     |
[INFO] [stdout] 443 | fn encrypt_state(data: &[u8], key: &[u8], nonce: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_nonce`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token`
[INFO] [stdout]    --> src/gssapi.rs:349:42
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn process_ntlm_challenge(&mut self, token: &[u8]) -> Result<GssapiToken> {
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entropy_cache` is never read
[INFO] [stdout]   --> src/crypto/qrng_integration.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct QuantumRng {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     entropy_cache: Arc<Mutex<Vec<u8>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `channel_id` is never read
[INFO] [stdout]    --> src/transport/channel.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct PortForward {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 140 |     channel_id: Option<u32>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `host_key` is never read
[INFO] [stdout]    --> src/handshake.rs:430:5
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub struct ServerHandshake {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 429 |     stream: TcpStream,
[INFO] [stdout] 430 |     host_key: PqKeyExchange,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `start_transport_handler` is never used
[INFO] [stdout]    --> src/client.rs:223:8
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl QsshClient {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 223 |     fn start_transport_handler(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_message` is never used
[INFO] [stdout]    --> src/client.rs:484:10
[INFO] [stdout]     |
[INFO] [stdout] 484 | async fn handle_message(msg: Message, channel_manager: &ChannelManager) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `username` and `transport` are never read
[INFO] [stdout]   --> src/server.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 96 | struct ClientConnection {
[INFO] [stdout]    |        ---------------- fields in this struct
[INFO] [stdout] 97 |     username: String,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 98 |     transport: Transport,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `channel_type` are never read
[INFO] [stdout]    --> src/server.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 103 | struct Channel {
[INFO] [stdout]     |        ------- fields in this struct
[INFO] [stdout] 104 |     id: u32,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 105 |     channel_type: ChannelType,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `key_type` is never read
[INFO] [stdout]   --> src/vault/mod.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct ProtectedKey {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     key_type: KeyType,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ProtectedKey` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `root_seed` is never read
[INFO] [stdout]   --> src/vault/mod.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | struct LamportKeyChain {
[INFO] [stdout]    |        --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 60 |     root_seed: [u8; 32],
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `root` is never read
[INFO] [stdout]    --> src/vault/lamport.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub struct LamportMerkleTree {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 148 |     root: [u8; 32],
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_LSTAT` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:47:7
[INFO] [stdout]    |
[INFO] [stdout] 47 | const SSH_FXP_LSTAT: u8 = 7;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_FSTAT` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:48:7
[INFO] [stdout]    |
[INFO] [stdout] 48 | const SSH_FXP_FSTAT: u8 = 8;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_SETSTAT` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:49:7
[INFO] [stdout]    |
[INFO] [stdout] 49 | const SSH_FXP_SETSTAT: u8 = 9;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_FSETSTAT` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:50:7
[INFO] [stdout]    |
[INFO] [stdout] 50 | const SSH_FXP_FSETSTAT: u8 = 10;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_REMOVE` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:53:7
[INFO] [stdout]    |
[INFO] [stdout] 53 | const SSH_FXP_REMOVE: u8 = 13;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_MKDIR` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:54:7
[INFO] [stdout]    |
[INFO] [stdout] 54 | const SSH_FXP_MKDIR: u8 = 14;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_RMDIR` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:55:7
[INFO] [stdout]    |
[INFO] [stdout] 55 | const SSH_FXP_RMDIR: u8 = 15;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_RENAME` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:58:7
[INFO] [stdout]    |
[INFO] [stdout] 58 | const SSH_FXP_RENAME: u8 = 18;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_READLINK` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:59:7
[INFO] [stdout]    |
[INFO] [stdout] 59 | const SSH_FXP_READLINK: u8 = 19;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_SYMLINK` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:60:7
[INFO] [stdout]    |
[INFO] [stdout] 60 | const SSH_FXP_SYMLINK: u8 = 20;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `channel_id` are never read
[INFO] [stdout]   --> src/multiplex/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct SessionHandle {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 30 |     id: u32,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 31 |     channel_id: u32,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `stdin` and `stdout` are never read
[INFO] [stdout]    --> src/proxy/mod.rs:227:5
[INFO] [stdout]     |
[INFO] [stdout] 226 | struct ProcessStream {
[INFO] [stdout]     |        ------------- fields in this struct
[INFO] [stdout] 227 |     stdin: tokio::process::ChildStdin,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 228 |     stdout: tokio::process::ChildStdout,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `strict_checking` is never read
[INFO] [stdout]   --> src/known_hosts.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct KnownHosts {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     strict_checking: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `service_name` and `mic_token` are never read
[INFO] [stdout]   --> src/gssapi.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct GssapiContext {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 53 |     service_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     mic_token: Option<Vec<u8>>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Error` is never constructed
[INFO] [stdout]   --> src/gssapi.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 68 | enum ContextState {
[INFO] [stdout]    |      ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 78 |     Error(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ContextState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pvno`, `msg_type`, `ap_options`, `ticket`, and `authenticator` are never read
[INFO] [stdout]    --> src/gssapi.rs:559:5
[INFO] [stdout]     |
[INFO] [stdout] 558 | struct KerberosApReq {
[INFO] [stdout]     |        ------------- fields in this struct
[INFO] [stdout] 559 |     pvno: u8,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 560 |     msg_type: u8,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 561 |     ap_options: u32,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 562 |     ticket: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 563 |     authenticator: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pvno`, `msg_type`, and `enc_part` are never read
[INFO] [stdout]    --> src/gssapi.rs:567:5
[INFO] [stdout]     |
[INFO] [stdout] 566 | struct KerberosApRep {
[INFO] [stdout]     |        ------------- fields in this struct
[INFO] [stdout] 567 |     pvno: u8,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 568 |     msg_type: u8,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 569 |     enc_part: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `signature`, `message_type`, `flags`, `domain`, and `workstation` are never read
[INFO] [stdout]    --> src/gssapi.rs:573:5
[INFO] [stdout]     |
[INFO] [stdout] 572 | struct NtlmType1Message {
[INFO] [stdout]     |        ---------------- fields in this struct
[INFO] [stdout] 573 |     signature: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 574 |     message_type: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 575 |     flags: u32,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 576 |     domain: String,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 577 |     workstation: String,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/gssapi.rs:581:5
[INFO] [stdout]     |
[INFO] [stdout] 580 | struct NtlmType3Message {
[INFO] [stdout]     |        ---------------- fields in this struct
[INFO] [stdout] 581 |     signature: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 582 |     message_type: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 583 |     lm_response: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 584 |     ntlm_response: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 585 |     domain: String,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 586 |     username: String,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 587 |     workstation: String,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 588 |     session_key: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `mech_types`, `req_flags`, `mech_token`, and `mech_list_mic` are never read
[INFO] [stdout]    --> src/gssapi.rs:592:5
[INFO] [stdout]     |
[INFO] [stdout] 591 | struct SpnegoNegTokenInit {
[INFO] [stdout]     |        ------------------ fields in this struct
[INFO] [stdout] 592 |     mech_types: Vec<Vec<u8>>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 593 |     req_flags: u32,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 594 |     mech_token: Option<Vec<u8>>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 595 |     mech_list_mic: Option<Vec<u8>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `hash_password`
[INFO] [stdout]  --> src/bin/qssh-passwd.rs:4:39
[INFO] [stdout]   |
[INFO] [stdout] 4 | use qssh::auth::{PasswordAuthManager, hash_password};
[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: `PathBuf`
[INFO] [stdout]  --> src/bin/qscp.rs:5:23
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6m 53s
[INFO] running `Command { std: "docker" "inspect" "8d829b9192807dab8bdf032e4c085718c442def1aa672c749cd1270f4e7a1e9d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8d829b9192807dab8bdf032e4c085718c442def1aa672c749cd1270f4e7a1e9d", kill_on_drop: false }`
[INFO] [stdout] 8d829b9192807dab8bdf032e4c085718c442def1aa672c749cd1270f4e7a1e9d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 12880f533914bcb07f80fdc5688bf2dd3e0dd1df381e3259f722453ee596a779
[INFO] running `Command { std: "docker" "start" "-a" "12880f533914bcb07f80fdc5688bf2dd3e0dd1df381e3259f722453ee596a779", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling serde_core v1.0.225
[INFO] [stderr]    Compiling bitflags v2.9.4
[INFO] [stderr]    Compiling serde v1.0.225
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling tokio v1.47.1
[INFO] [stderr]    Compiling regex-syntax v0.8.6
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling half v2.6.0
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling openssl v0.10.73
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling pqcrypto-internals v0.2.11
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling pqcrypto-dilithium v0.5.0
[INFO] [stderr]    Compiling pqcrypto-sphincsplus v0.7.2
[INFO] [stderr]    Compiling pqcrypto-classicmceliece v0.2.1
[INFO] [stderr]    Compiling pqcrypto-falcon v0.3.0
[INFO] [stderr]    Compiling pqcrypto-hqc v0.2.2
[INFO] [stderr]    Compiling pqcrypto-kyber v0.8.1
[INFO] [stderr]    Compiling pqcrypto-falcon v0.2.10
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling pqcrypto v0.17.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling regex-automata v0.4.10
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling url v2.5.7
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling tempfile v3.22.0
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling proptest v1.7.0
[INFO] [stderr]    Compiling regex v1.11.2
[INFO] [stderr]    Compiling env_filter v0.1.3
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling env_logger v0.11.8
[INFO] [stderr]    Compiling tokio-util v0.7.16
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling tokio-test v0.4.4
[INFO] [stderr]    Compiling h2 v0.4.12
[INFO] [stderr]    Compiling tower-http v0.6.6
[INFO] [stderr]    Compiling hyper v1.7.0
[INFO] [stderr]    Compiling hyper-util v0.1.17
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.23
[INFO] [stderr]    Compiling qssh v0.0.3-alpha (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `QsshError`
[INFO] [stdout]  --> src/crypto/cipher_choice.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{Result, QsshError};
[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: `KeyType`
[INFO] [stdout]  --> src/client.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 |     vault::{QuantumVault, KeyType},
[INFO] [stdout]   |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/agent/mod.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH`
[INFO] [stdout]   --> src/agent/mod.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]    |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `UnixListener` and `UnixStream`
[INFO] [stdout]  --> src/x11/mod.rs:7:42
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::net::{TcpListener, TcpStream, UnixListener, UnixStream};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsRawFd` and `FromRawFd`
[INFO] [stdout]  --> src/pty.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::os::unix::io::{AsRawFd, FromRawFd, RawFd};
[INFO] [stdout]   |                         ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha3_512`
[INFO] [stdout]  --> src/vault/mod.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use sha3::{Sha3_256, Sha3_512, Digest};
[INFO] [stdout]   |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha3_512`
[INFO] [stdout]  --> src/vault/lamport.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use sha3::{Sha3_256, Sha3_512, Digest};
[INFO] [stdout]   |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/shell_handler.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]  --> src/shell_handler.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsRawFd`
[INFO] [stdout]  --> src/shell_handler.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::os::unix::io::{AsRawFd, FromRawFd};
[INFO] [stdout]   |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsRawFd` and `RawFd`
[INFO] [stdout]  --> src/shell_handler_pty.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::os::unix::io::{AsRawFd, FromRawFd, RawFd};
[INFO] [stdout]   |                         ^^^^^^^             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::fs::File`
[INFO] [stdout]  --> src/shell_handler_pty.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead` and `AsyncWrite`
[INFO] [stdout]  --> src/pty_async.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::io::{AsyncRead, AsyncWrite, AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Stdio`
[INFO] [stdout]  --> src/pty_async.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::process::Stdio;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsRawFd`
[INFO] [stdout]  --> src/pty_thread.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::os::unix::io::{AsRawFd, RawFd, FromRawFd};
[INFO] [stdout]   |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Child`
[INFO] [stdout]  --> src/shell_handler_thread.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::process::{Command, Child};
[INFO] [stdout]   |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::mpsc`
[INFO] [stdout]  --> src/shell_handler_thread.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::mpsc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::path::{Path, PathBuf};
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::sync::Mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/subsystems/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]  --> src/subsystems/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `oneshot`
[INFO] [stdout]  --> src/multiplex/mod.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio::sync::{RwLock, mpsc, oneshot};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/proxy/mod.rs:8:31
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/proxy/mod.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/known_hosts.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ZlibEncoder`
[INFO] [stdout]  --> src/compression.rs:7:33
[INFO] [stdout]   |
[INFO] [stdout] 7 | use flate2::read::{ZlibDecoder, ZlibEncoder};
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ZlibDecoder as ZlibWriteDecoder`
[INFO] [stdout]  --> src/compression.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use flate2::write::{ZlibDecoder as ZlibWriteDecoder, ZlibEncoder as ZlibWriteEncoder};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `UNIX_EPOCH`
[INFO] [stdout]  --> src/gssapi.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::{Duration, SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Engine as _` and `engine::general_purpose::STANDARD as BASE64`
[INFO] [stdout]  --> src/gssapi.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | use base64::{Engine as _, engine::general_purpose::STANDARD as BASE64};
[INFO] [stdout]   |              ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/shell_handler.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut process = cmd.spawn()
[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/port_forward.rs:230:24
[INFO] [stdout]     |
[INFO] [stdout] 230 |     let (tx_to_remote, mut rx_to_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |                        ----^^^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `QsshError`
[INFO] [stdout]  --> src/crypto/cipher_choice.rs:3:21
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{Result, QsshError};
[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: `KeyType`
[INFO] [stdout]  --> src/client.rs:7:27
[INFO] [stdout]   |
[INFO] [stdout] 7 |     vault::{QuantumVault, KeyType},
[INFO] [stdout]   |                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/agent/mod.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SystemTime` and `UNIX_EPOCH`
[INFO] [stdout]   --> src/agent/mod.rs:13:17
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::time::{SystemTime, UNIX_EPOCH};
[INFO] [stdout]    |                 ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `UnixListener` and `UnixStream`
[INFO] [stdout]  --> src/x11/mod.rs:7:42
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::net::{TcpListener, TcpStream, UnixListener, UnixStream};
[INFO] [stdout]   |                                          ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsRawFd` and `FromRawFd`
[INFO] [stdout]  --> src/pty.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::os::unix::io::{AsRawFd, FromRawFd, RawFd};
[INFO] [stdout]   |                         ^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha3_512`
[INFO] [stdout]  --> src/vault/mod.rs:7:22
[INFO] [stdout]   |
[INFO] [stdout] 7 | use sha3::{Sha3_256, Sha3_512, Digest};
[INFO] [stdout]   |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha3_512`
[INFO] [stdout]  --> src/vault/lamport.rs:5:22
[INFO] [stdout]   |
[INFO] [stdout] 5 | use sha3::{Sha3_256, Sha3_512, Digest};
[INFO] [stdout]   |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/shell_handler.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]  --> src/shell_handler.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsRawFd`
[INFO] [stdout]  --> src/shell_handler.rs:9:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::os::unix::io::{AsRawFd, FromRawFd};
[INFO] [stdout]   |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsRawFd` and `RawFd`
[INFO] [stdout]  --> src/shell_handler_pty.rs:7:25
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::os::unix::io::{AsRawFd, FromRawFd, RawFd};
[INFO] [stdout]   |                         ^^^^^^^             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::fs::File`
[INFO] [stdout]  --> src/shell_handler_pty.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::fs::File;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead` and `AsyncWrite`
[INFO] [stdout]  --> src/pty_async.rs:4:17
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::io::{AsyncRead, AsyncWrite, AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::Stdio`
[INFO] [stdout]  --> src/pty_async.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::process::Stdio;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsRawFd`
[INFO] [stdout]  --> src/pty_thread.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::os::unix::io::{AsRawFd, RawFd, FromRawFd};
[INFO] [stdout]   |                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Child`
[INFO] [stdout]  --> src/shell_handler_thread.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::process::{Command, Child};
[INFO] [stdout]   |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::mpsc`
[INFO] [stdout]  --> src/shell_handler_thread.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::mpsc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:10:17
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::path::{Path, PathBuf};
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use tokio::sync::Mutex;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/subsystems/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::sync::Mutex`
[INFO] [stdout]  --> src/subsystems/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::Mutex;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `oneshot`
[INFO] [stdout]  --> src/multiplex/mod.rs:9:33
[INFO] [stdout]   |
[INFO] [stdout] 9 | use tokio::sync::{RwLock, mpsc, oneshot};
[INFO] [stdout]   |                                 ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/proxy/mod.rs:8:31
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]   --> src/proxy/mod.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::sync::Arc;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Path`
[INFO] [stdout]  --> src/known_hosts.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::path::{Path, PathBuf};
[INFO] [stdout]   |                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ZlibEncoder`
[INFO] [stdout]  --> src/compression.rs:7:33
[INFO] [stdout]   |
[INFO] [stdout] 7 | use flate2::read::{ZlibDecoder, ZlibEncoder};
[INFO] [stdout]   |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ZlibDecoder as ZlibWriteDecoder`
[INFO] [stdout]  --> src/compression.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use flate2::write::{ZlibDecoder as ZlibWriteDecoder, ZlibEncoder as ZlibWriteEncoder};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Duration` and `UNIX_EPOCH`
[INFO] [stdout]  --> src/gssapi.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::time::{Duration, SystemTime, UNIX_EPOCH};
[INFO] [stdout]   |                 ^^^^^^^^              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Engine as _` and `engine::general_purpose::STANDARD as BASE64`
[INFO] [stdout]  --> src/gssapi.rs:9:14
[INFO] [stdout]   |
[INFO] [stdout] 9 | use base64::{Engine as _, engine::general_purpose::STANDARD as BASE64};
[INFO] [stdout]   |              ^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PublicKey`
[INFO] [stdout]    --> src/crypto/mod.rs:125:37
[INFO] [stdout]     |
[INFO] [stdout] 125 |         use pqcrypto_traits::sign::{PublicKey as PubKey, DetachedSignature};
[INFO] [stdout]     |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]   --> src/client.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]   --> src/client.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/shell_handler_async.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/shell_handler_async.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/proxy/mod.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `endpoint`
[INFO] [stdout]   --> src/crypto/qrng_integration.rs:61:37
[INFO] [stdout]    |
[INFO] [stdout] 61 |     async fn fetch_from_qrng(&self, endpoint: &str, num_bytes: usize) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_endpoint`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_bytes`
[INFO] [stdout]   --> src/crypto/qrng_integration.rs:61:53
[INFO] [stdout]    |
[INFO] [stdout] 61 |     async fn fetch_from_qrng(&self, endpoint: &str, num_bytes: usize) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |                                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkd_key`
[INFO] [stdout]    --> src/handshake.rs:250:14
[INFO] [stdout]     |
[INFO] [stdout] 250 |         let (qkd_key, qkd_proof): (Option<Vec<u8>>, Option<Vec<u8>>) = (None, None);
[INFO] [stdout]     |              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_qkd_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/handshake.rs:438:13
[INFO] [stdout]     |
[INFO] [stdout] 438 |         let mut password_manager = crate::auth::system_password_auth();
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rekey`
[INFO] [stdout]    --> src/server.rs:196:24
[INFO] [stdout]     |
[INFO] [stdout] 196 |         Message::Rekey(rekey) => {
[INFO] [stdout]     |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_rekey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/shell_handler.rs:63:13
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let mut process = cmd.spawn()
[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: `byte_order`
[INFO] [stdout]    --> src/x11/mod.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |     let byte_order = auth_buffer[0];
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_byte_order`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `protocol_major`
[INFO] [stdout]    --> src/x11/mod.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 179 |     let protocol_major = u16::from_be_bytes([auth_buffer[2], auth_buffer[3]]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_protocol_major`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `protocol_minor`
[INFO] [stdout]    --> src/x11/mod.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |     let protocol_minor = u16::from_be_bytes([auth_buffer[4], auth_buffer[5]]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_protocol_minor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pty.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 |         let mut async_fd = match tokio::io::unix::AsyncFd::new(self.fd) {
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pty.rs:218:13
[INFO] [stdout]     |
[INFO] [stdout] 218 |         let mut async_fd = match tokio::io::unix::AsyncFd::new(self.fd) {
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/auth.rs:132:13
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let mut key_data;
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `announce_task`
[INFO] [stdout]   --> src/p2p/discovery.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let announce_task = {
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_announce_task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket`
[INFO] [stdout]    --> src/p2p/nat.rs:148:37
[INFO] [stdout]     |
[INFO] [stdout] 148 |     async fn detect_nat_type(&self, socket: &UdpSocket) -> Result<NatType> {
[INFO] [stdout]     |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slave_stdio`
[INFO] [stdout]   --> src/shell_handler.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let slave_stdio = unsafe { Stdio::from_raw_fd(slave_fd) };
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slave_stdio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/port_forward.rs:230:24
[INFO] [stdout]     |
[INFO] [stdout] 230 |     let (tx_to_remote, mut rx_to_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |                        ----^^^^^^^^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_to_remote`
[INFO] [stdout]    --> src/port_forward.rs:230:10
[INFO] [stdout]     |
[INFO] [stdout] 230 |     let (tx_to_remote, mut rx_to_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_to_remote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rx_to_remote`
[INFO] [stdout]    --> src/port_forward.rs:230:24
[INFO] [stdout]     |
[INFO] [stdout] 230 |     let (tx_to_remote, mut rx_to_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rx_to_remote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_from_remote`
[INFO] [stdout]    --> src/port_forward.rs:231:10
[INFO] [stdout]     |
[INFO] [stdout] 231 |     let (tx_from_remote, mut rx_from_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_from_remote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]    --> src/subsystems/sftp/protocol.rs:252:13
[INFO] [stdout]     |
[INFO] [stdout] 252 |         let length = cursor.read_u32::<BigEndian>()? as usize;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extensions`
[INFO] [stdout]    --> src/subsystems/sftp/protocol.rs:332:45
[INFO] [stdout]     |
[INFO] [stdout] 332 |             SftpMessage::Version { version, extensions } => {
[INFO] [stdout]     |                                             ^^^^^^^^^^ help: try ignoring the field: `extensions: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport`
[INFO] [stdout]    --> src/multiplex/mod.rs:240:5
[INFO] [stdout]     |
[INFO] [stdout] 240 |     transport: &Arc<Transport>,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `command`
[INFO] [stdout]    --> src/multiplex/mod.rs:241:5
[INFO] [stdout]     |
[INFO] [stdout] 241 |     command: Option<String>,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/multiplex/mod.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 242 |     env: HashMap<String, String>,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/session.rs:443:31
[INFO] [stdout]     |
[INFO] [stdout] 443 | fn encrypt_state(data: &[u8], key: &[u8], nonce: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nonce`
[INFO] [stdout]    --> src/session.rs:443:43
[INFO] [stdout]     |
[INFO] [stdout] 443 | fn encrypt_state(data: &[u8], key: &[u8], nonce: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_nonce`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `from_bytes` found for struct `pqcrypto_sphincsplus::sphincsharaka128fsimple::PublicKey` in the current scope
[INFO] [stdout]   --> src/crypto/test_helpers.rs:24:46
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let sphincs_pk = sphincs::PublicKey::from_bytes(&sphincs_pk_bytes)
[INFO] [stdout]    |                                              ^^^^^^^^^^ function or associated item not found in `pqcrypto_sphincsplus::sphincsharaka128fsimple::PublicKey`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: there is a method `as_bytes` with a similar name, but with different arguments
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pqcrypto-traits-0.3.5/src/sign.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  6 |     fn as_bytes(&self) -> &[u8];
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: trait `PublicKey` which provides `from_bytes` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout]  5 +     use pqcrypto_traits::sign::PublicKey;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `from_bytes` found for struct `pqcrypto_sphincsplus::sphincsharaka128fsimple::SecretKey` in the current scope
[INFO] [stdout]   --> src/crypto/test_helpers.rs:26:46
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let sphincs_sk = sphincs::SecretKey::from_bytes(&sphincs_sk_bytes)
[INFO] [stdout]    |                                              ^^^^^^^^^^ function or associated item not found in `pqcrypto_sphincsplus::sphincsharaka128fsimple::SecretKey`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: there is a method `as_bytes` with a similar name, but with different arguments
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pqcrypto-traits-0.3.5/src/sign.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn as_bytes(&self) -> &[u8];
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: trait `SecretKey` which provides `from_bytes` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout]  5 +     use pqcrypto_traits::sign::SecretKey;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `from_bytes` found for struct `pqcrypto_falcon::falcon512::PublicKey` in the current scope
[INFO] [stdout]   --> src/crypto/test_helpers.rs:29:47
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let falcon_pk = falcon512::PublicKey::from_bytes(&falcon_pk_bytes)
[INFO] [stdout]    |                                               ^^^^^^^^^^ function or associated item not found in `pqcrypto_falcon::falcon512::PublicKey`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: there is a method `as_bytes` with a similar name, but with different arguments
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pqcrypto-traits-0.3.5/src/sign.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  6 |     fn as_bytes(&self) -> &[u8];
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: trait `PublicKey` which provides `from_bytes` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout]  5 +     use pqcrypto_traits::sign::PublicKey;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token`
[INFO] [stdout]    --> src/gssapi.rs:349:42
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn process_ntlm_challenge(&mut self, token: &[u8]) -> Result<GssapiToken> {
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `from_bytes` found for struct `pqcrypto_falcon::falcon512::SecretKey` in the current scope
[INFO] [stdout]   --> src/crypto/test_helpers.rs:31:47
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let falcon_sk = falcon512::SecretKey::from_bytes(&falcon_sk_bytes)
[INFO] [stdout]    |                                               ^^^^^^^^^^ function or associated item not found in `pqcrypto_falcon::falcon512::SecretKey`
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: there is a method `as_bytes` with a similar name, but with different arguments
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pqcrypto-traits-0.3.5/src/sign.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn as_bytes(&self) -> &[u8];
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: trait `SecretKey` which provides `from_bytes` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout]  5 +     use pqcrypto_traits::sign::SecretKey;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `entropy_cache` is never read
[INFO] [stdout]   --> src/crypto/qrng_integration.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct QuantumRng {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 21 |     entropy_cache: Arc<Mutex<Vec<u8>>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `channel_id` is never read
[INFO] [stdout]    --> src/transport/channel.rs:140:5
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct PortForward {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 140 |     channel_id: Option<u32>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `host_key` is never read
[INFO] [stdout]    --> src/handshake.rs:430:5
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub struct ServerHandshake {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 429 |     stream: TcpStream,
[INFO] [stdout] 430 |     host_key: PqKeyExchange,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `start_transport_handler` is never used
[INFO] [stdout]    --> src/client.rs:223:8
[INFO] [stdout]     |
[INFO] [stdout]  23 | impl QsshClient {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 223 |     fn start_transport_handler(&self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `handle_message` is never used
[INFO] [stdout]    --> src/client.rs:484:10
[INFO] [stdout]     |
[INFO] [stdout] 484 | async fn handle_message(msg: Message, channel_manager: &ChannelManager) -> Result<()> {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `username` and `transport` are never read
[INFO] [stdout]   --> src/server.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 96 | struct ClientConnection {
[INFO] [stdout]    |        ---------------- fields in this struct
[INFO] [stdout] 97 |     username: String,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 98 |     transport: Transport,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `channel_type` are never read
[INFO] [stdout]    --> src/server.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 103 | struct Channel {
[INFO] [stdout]     |        ------- fields in this struct
[INFO] [stdout] 104 |     id: u32,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 105 |     channel_type: ChannelType,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `key_type` is never read
[INFO] [stdout]   --> src/vault/mod.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct ProtectedKey {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 37 |     key_type: KeyType,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ProtectedKey` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `root_seed` is never read
[INFO] [stdout]   --> src/vault/mod.rs:60:5
[INFO] [stdout]    |
[INFO] [stdout] 54 | struct LamportKeyChain {
[INFO] [stdout]    |        --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 60 |     root_seed: [u8; 32],
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `root` is never read
[INFO] [stdout]    --> src/vault/lamport.rs:148:5
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub struct LamportMerkleTree {
[INFO] [stdout]     |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 148 |     root: [u8; 32],
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_LSTAT` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:47:7
[INFO] [stdout]    |
[INFO] [stdout] 47 | const SSH_FXP_LSTAT: u8 = 7;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_FSTAT` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:48:7
[INFO] [stdout]    |
[INFO] [stdout] 48 | const SSH_FXP_FSTAT: u8 = 8;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_SETSTAT` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:49:7
[INFO] [stdout]    |
[INFO] [stdout] 49 | const SSH_FXP_SETSTAT: u8 = 9;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_FSETSTAT` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:50:7
[INFO] [stdout]    |
[INFO] [stdout] 50 | const SSH_FXP_FSETSTAT: u8 = 10;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_REMOVE` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:53:7
[INFO] [stdout]    |
[INFO] [stdout] 53 | const SSH_FXP_REMOVE: u8 = 13;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_MKDIR` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:54:7
[INFO] [stdout]    |
[INFO] [stdout] 54 | const SSH_FXP_MKDIR: u8 = 14;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_RMDIR` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:55:7
[INFO] [stdout]    |
[INFO] [stdout] 55 | const SSH_FXP_RMDIR: u8 = 15;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_RENAME` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:58:7
[INFO] [stdout]    |
[INFO] [stdout] 58 | const SSH_FXP_RENAME: u8 = 18;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_READLINK` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:59:7
[INFO] [stdout]    |
[INFO] [stdout] 59 | const SSH_FXP_READLINK: u8 = 19;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SSH_FXP_SYMLINK` is never used
[INFO] [stdout]   --> src/subsystems/sftp/protocol.rs:60:7
[INFO] [stdout]    |
[INFO] [stdout] 60 | const SSH_FXP_SYMLINK: u8 = 20;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id` and `channel_id` are never read
[INFO] [stdout]   --> src/multiplex/mod.rs:30:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct SessionHandle {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 30 |     id: u32,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 31 |     channel_id: u32,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `stdin` and `stdout` are never read
[INFO] [stdout]    --> src/proxy/mod.rs:227:5
[INFO] [stdout]     |
[INFO] [stdout] 226 | struct ProcessStream {
[INFO] [stdout]     |        ------------- fields in this struct
[INFO] [stdout] 227 |     stdin: tokio::process::ChildStdin,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 228 |     stdout: tokio::process::ChildStdout,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `strict_checking` is never read
[INFO] [stdout]   --> src/known_hosts.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct KnownHosts {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     strict_checking: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `service_name` and `mic_token` are never read
[INFO] [stdout]   --> src/gssapi.rs:53:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct GssapiContext {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 53 |     service_name: String,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     mic_token: Option<Vec<u8>>,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Error` is never constructed
[INFO] [stdout]   --> src/gssapi.rs:78:5
[INFO] [stdout]    |
[INFO] [stdout] 68 | enum ContextState {
[INFO] [stdout]    |      ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 78 |     Error(String),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ContextState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pvno`, `msg_type`, `ap_options`, `ticket`, and `authenticator` are never read
[INFO] [stdout]    --> src/gssapi.rs:559:5
[INFO] [stdout]     |
[INFO] [stdout] 558 | struct KerberosApReq {
[INFO] [stdout]     |        ------------- fields in this struct
[INFO] [stdout] 559 |     pvno: u8,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 560 |     msg_type: u8,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 561 |     ap_options: u32,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 562 |     ticket: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 563 |     authenticator: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pvno`, `msg_type`, and `enc_part` are never read
[INFO] [stdout]    --> src/gssapi.rs:567:5
[INFO] [stdout]     |
[INFO] [stdout] 566 | struct KerberosApRep {
[INFO] [stdout]     |        ------------- fields in this struct
[INFO] [stdout] 567 |     pvno: u8,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 568 |     msg_type: u8,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 569 |     enc_part: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `signature`, `message_type`, `flags`, `domain`, and `workstation` are never read
[INFO] [stdout]    --> src/gssapi.rs:573:5
[INFO] [stdout]     |
[INFO] [stdout] 572 | struct NtlmType1Message {
[INFO] [stdout]     |        ---------------- fields in this struct
[INFO] [stdout] 573 |     signature: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 574 |     message_type: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 575 |     flags: u32,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 576 |     domain: String,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 577 |     workstation: String,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/gssapi.rs:581:5
[INFO] [stdout]     |
[INFO] [stdout] 580 | struct NtlmType3Message {
[INFO] [stdout]     |        ---------------- fields in this struct
[INFO] [stdout] 581 |     signature: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 582 |     message_type: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 583 |     lm_response: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 584 |     ntlm_response: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 585 |     domain: String,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 586 |     username: String,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 587 |     workstation: String,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 588 |     session_key: Vec<u8>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `mech_types`, `req_flags`, `mech_token`, and `mech_list_mic` are never read
[INFO] [stdout]    --> src/gssapi.rs:592:5
[INFO] [stdout]     |
[INFO] [stdout] 591 | struct SpnegoNegTokenInit {
[INFO] [stdout]     |        ------------------ fields in this struct
[INFO] [stdout] 592 |     mech_types: Vec<Vec<u8>>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 593 |     req_flags: u32,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 594 |     mech_token: Option<Vec<u8>>,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 595 |     mech_list_mic: Option<Vec<u8>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PublicKey`
[INFO] [stdout]    --> src/crypto/mod.rs:125:37
[INFO] [stdout]     |
[INFO] [stdout] 125 |         use pqcrypto_traits::sign::{PublicKey as PubKey, DetachedSignature};
[INFO] [stdout]     |                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]   --> src/client.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]   --> src/client.rs:11:31
[INFO] [stdout]    |
[INFO] [stdout] 11 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/shell_handler_async.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/shell_handler_async.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:14:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]   --> src/subsystems/sftp/mod.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/proxy/mod.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `endpoint`
[INFO] [stdout]   --> src/crypto/qrng_integration.rs:61:37
[INFO] [stdout]    |
[INFO] [stdout] 61 |     async fn fetch_from_qrng(&self, endpoint: &str, num_bytes: usize) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_endpoint`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_bytes`
[INFO] [stdout]   --> src/crypto/qrng_integration.rs:61:53
[INFO] [stdout]    |
[INFO] [stdout] 61 |     async fn fetch_from_qrng(&self, endpoint: &str, num_bytes: usize) -> Result<Vec<u8>, String> {
[INFO] [stdout]    |                                                     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `qkd_key`
[INFO] [stdout]    --> src/handshake.rs:250:14
[INFO] [stdout]     |
[INFO] [stdout] 250 |         let (qkd_key, qkd_proof): (Option<Vec<u8>>, Option<Vec<u8>>) = (None, None);
[INFO] [stdout]     |              ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_qkd_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/handshake.rs:438:13
[INFO] [stdout]     |
[INFO] [stdout] 438 |         let mut password_manager = crate::auth::system_password_auth();
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rekey`
[INFO] [stdout]    --> src/server.rs:196:24
[INFO] [stdout]     |
[INFO] [stdout] 196 |         Message::Rekey(rekey) => {
[INFO] [stdout]     |                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_rekey`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `byte_order`
[INFO] [stdout]    --> src/x11/mod.rs:178:9
[INFO] [stdout]     |
[INFO] [stdout] 178 |     let byte_order = auth_buffer[0];
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_byte_order`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `protocol_major`
[INFO] [stdout]    --> src/x11/mod.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 179 |     let protocol_major = u16::from_be_bytes([auth_buffer[2], auth_buffer[3]]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_protocol_major`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `protocol_minor`
[INFO] [stdout]    --> src/x11/mod.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |     let protocol_minor = u16::from_be_bytes([auth_buffer[4], auth_buffer[5]]);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_protocol_minor`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pty.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 |         let mut async_fd = match tokio::io::unix::AsyncFd::new(self.fd) {
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/pty.rs:218:13
[INFO] [stdout]     |
[INFO] [stdout] 218 |         let mut async_fd = match tokio::io::unix::AsyncFd::new(self.fd) {
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/auth.rs:132:13
[INFO] [stdout]     |
[INFO] [stdout] 132 |         let mut key_data;
[INFO] [stdout]     |             ----^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `announce_task`
[INFO] [stdout]   --> src/p2p/discovery.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 56 |         let announce_task = {
[INFO] [stdout]    |             ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_announce_task`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket`
[INFO] [stdout]    --> src/p2p/nat.rs:148:37
[INFO] [stdout]     |
[INFO] [stdout] 148 |     async fn detect_nat_type(&self, socket: &UdpSocket) -> Result<NatType> {
[INFO] [stdout]     |                                     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `slave_stdio`
[INFO] [stdout]   --> src/shell_handler.rs:45:13
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let slave_stdio = unsafe { Stdio::from_raw_fd(slave_fd) };
[INFO] [stdout]    |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_slave_stdio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_to_remote`
[INFO] [stdout]    --> src/port_forward.rs:230:10
[INFO] [stdout]     |
[INFO] [stdout] 230 |     let (tx_to_remote, mut rx_to_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |          ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_to_remote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rx_to_remote`
[INFO] [stdout]    --> src/port_forward.rs:230:24
[INFO] [stdout]     |
[INFO] [stdout] 230 |     let (tx_to_remote, mut rx_to_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rx_to_remote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tx_from_remote`
[INFO] [stdout]    --> src/port_forward.rs:231:10
[INFO] [stdout]     |
[INFO] [stdout] 231 |     let (tx_from_remote, mut rx_from_remote) = mpsc::channel::<Vec<u8>>(256);
[INFO] [stdout]     |          ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tx_from_remote`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]    --> src/subsystems/sftp/protocol.rs:252:13
[INFO] [stdout]     |
[INFO] [stdout] 252 |         let length = cursor.read_u32::<BigEndian>()? as usize;
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `extensions`
[INFO] [stdout]    --> src/subsystems/sftp/protocol.rs:332:45
[INFO] [stdout]     |
[INFO] [stdout] 332 |             SftpMessage::Version { version, extensions } => {
[INFO] [stdout]     |                                             ^^^^^^^^^^ help: try ignoring the field: `extensions: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `transport`
[INFO] [stdout]    --> src/multiplex/mod.rs:240:5
[INFO] [stdout]     |
[INFO] [stdout] 240 |     transport: &Arc<Transport>,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_transport`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `command`
[INFO] [stdout]    --> src/multiplex/mod.rs:241:5
[INFO] [stdout]     |
[INFO] [stdout] 241 |     command: Option<String>,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `env`
[INFO] [stdout]    --> src/multiplex/mod.rs:242:5
[INFO] [stdout]     |
[INFO] [stdout] 242 |     env: HashMap<String, String>,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_env`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `key`
[INFO] [stdout]    --> src/session.rs:443:31
[INFO] [stdout]     |
[INFO] [stdout] 443 | fn encrypt_state(data: &[u8], key: &[u8], nonce: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |                               ^^^ help: if this is intentional, prefix it with an underscore: `_key`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nonce`
[INFO] [stdout]    --> src/session.rs:443:43
[INFO] [stdout]     |
[INFO] [stdout] 443 | fn encrypt_state(data: &[u8], key: &[u8], nonce: &[u8]) -> Result<Vec<u8>> {
[INFO] [stdout]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_nonce`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token`
[INFO] [stdout]    --> src/gssapi.rs:349:42
[INFO] [stdout]     |
[INFO] [stdout] 349 |     fn process_ntlm_challenge(&mut self, token: &[u8]) -> Result<GssapiToken> {
[INFO] [stdout]     |                                          ^^^^^ help: if this is intentional, prefix it with an underscore: `_token`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/gssapi.rs:651:13
[INFO] [stdout]     |
[INFO] [stdout] 651 |         let mut client = GssapiContext::new_client("host/server.example.com".to_string(), GssapiMechanism::Kerberos5);
[INFO] [stdout]     |             ----^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `qssh` (lib test) due to 4 previous errors; 67 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "12880f533914bcb07f80fdc5688bf2dd3e0dd1df381e3259f722453ee596a779", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "12880f533914bcb07f80fdc5688bf2dd3e0dd1df381e3259f722453ee596a779", kill_on_drop: false }`
[INFO] [stdout] 12880f533914bcb07f80fdc5688bf2dd3e0dd1df381e3259f722453ee596a779
