[INFO] cloning repository https://github.com/maceip/unified-quote
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/maceip/unified-quote" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaceip%2Funified-quote", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaceip%2Funified-quote'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c145a6051b08c45f258de384df4e47168bb895c6
[INFO] checking maceip/unified-quote against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmaceip%2Funified-quote" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/maceip/unified-quote
[INFO] finished tweaking git repo https://github.com/maceip/unified-quote
[INFO] tweaked toml for git repo https://github.com/maceip/unified-quote written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/maceip/unified-quote on toolchain eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/maceip/unified-quote 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" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded fastrand v2.4.0
[INFO] [stderr]   Downloaded tls_codec v0.4.2
[INFO] [stderr]   Downloaded tls_codec_derive v0.4.2
[INFO] [stderr]   Downloaded coset v0.3.8
[INFO] [stderr]   Downloaded aws-nitro-enclaves-nsm-api v0.5.0
[INFO] [stderr]   Downloaded instant-acme v0.8.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] dd552ce47c28195c40b9a30ed39ed9a60f4471ee23629facadd0e95e241c5b17
[INFO] running `Command { std: "docker" "start" "dd552ce47c28195c40b9a30ed39ed9a60f4471ee23629facadd0e95e241c5b17", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dd552ce47c28195c40b9a30ed39ed9a60f4471ee23629facadd0e95e241c5b17", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "dd552ce47c28195c40b9a30ed39ed9a60f4471ee23629facadd0e95e241c5b17" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "dd552ce47c28195c40b9a30ed39ed9a60f4471ee23629facadd0e95e241c5b17", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "dd552ce47c28195c40b9a30ed39ed9a60f4471ee23629facadd0e95e241c5b17" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]     Checking const-oid v0.9.6
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]    Compiling der_derive v0.7.3
[INFO] [stderr]     Checking flagset v0.4.7
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling aws-lc-rs v1.17.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking indexmap v2.13.1
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]     Checking rustls-native-certs v0.8.4
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking der v0.7.10
[INFO] [stderr]    Compiling memoffset v0.7.1
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking rfc6979 v0.4.0
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling cc v1.2.59
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]    Compiling nix v0.29.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking half v1.8.3
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking spki v0.7.3
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking pkcs8 v0.10.2
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]     Checking ff v0.13.1
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking sec1 v0.7.3
[INFO] [stderr]     Checking tokio v1.51.0
[INFO] [stderr]     Checking group v0.13.0
[INFO] [stderr]     Checking crypto-bigint v0.5.5
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking serde_cbor v0.11.2
[INFO] [stderr]     Checking nix v0.26.4
[INFO] [stderr]     Checking serde_bytes v0.11.19
[INFO] [stderr]     Checking x509-cert v0.2.5
[INFO] [stderr]    Compiling aws-lc-sys v0.41.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]     Checking elliptic-curve v0.13.8
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking ecdsa v0.16.9
[INFO] [stderr]     Checking primeorder v0.13.6
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking p384 v0.13.1
[INFO] [stderr]     Checking p256 v0.13.2
[INFO] [stderr]     Checking getrandom v0.4.2
[INFO] [stderr]     Checking fastrand v2.4.0
[INFO] [stderr]     Checking aws-nitro-enclaves-nsm-api v0.5.0
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking yasna v0.6.0
[INFO] [stderr]     Checking yasna v0.5.2
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking pkcs1 v0.7.5
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]    Compiling serde_with_macros v3.18.0
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking cbc v0.1.2
[INFO] [stderr]     Checking rustls-pemfile v2.2.0
[INFO] [stderr]     Checking serde_with v3.18.0
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking h2 v0.4.15
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking coset v0.3.8
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking num-bigint-dig v0.8.6
[INFO] [stderr]     Checking rcgen v0.13.2
[INFO] [stderr]     Checking rsa v0.9.10
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking axum v0.8.8
[INFO] [stderr]     Checking rustls-webpki v0.103.10
[INFO] [stderr]     Checking rcgen v0.14.8
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking hyper-rustls v0.27.7
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking instant-acme v0.8.5
[INFO] [stderr]     Checking unified-quote v0.1.0 (/opt/rustwide/workdir/v2)
[INFO] [stderr]     Checking uq-runner v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Sha256`
[INFO] [stdout]   --> v2/src/net/acme.rs:39:24
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use sha2::{Digest, Sha256};
[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 imports: `PrivateKeyDer` and `PrivatePkcs8KeyDer`
[INFO] [stdout]  --> v2/src/net/tls.rs:8:41
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rustls::pki_types::{CertificateDer, PrivateKeyDer, PrivatePkcs8KeyDer};
[INFO] [stdout]   |                                         ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha256`
[INFO] [stdout]   --> v2/src/registry.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 39 | use sha2::{Digest, Sha256};
[INFO] [stdout]    |                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> v2/src/tee/tpm.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     use std::io::Write;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha256`
[INFO] [stdout]   --> v2/src/net/acme.rs:39:24
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use sha2::{Digest, Sha256};
[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 imports: `PrivateKeyDer` and `PrivatePkcs8KeyDer`
[INFO] [stdout]  --> v2/src/net/tls.rs:8:41
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rustls::pki_types::{CertificateDer, PrivateKeyDer, PrivatePkcs8KeyDer};
[INFO] [stdout]   |                                         ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha256`
[INFO] [stdout]   --> v2/src/registry.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 39 | use sha2::{Digest, Sha256};
[INFO] [stdout]    |                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> v2/src/tee/tpm.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     use std::io::Write;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `public_key` is assigned to, but never used
[INFO] [stdout]    --> src/quote/verify.rs:247:9
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let mut public_key: Option<Vec<u8>> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_public_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `public_key` is never read
[INFO] [stdout]    --> src/quote/verify.rs:270:25
[INFO] [stdout]     |
[INFO] [stdout] 270 |                         public_key = Some(b.clone());
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `public_key` is assigned to, but never used
[INFO] [stdout]    --> src/quote/verify.rs:247:9
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let mut public_key: Option<Vec<u8>> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_public_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `public_key` is never read
[INFO] [stdout]    --> src/quote/verify.rs:270:25
[INFO] [stdout]     |
[INFO] [stdout] 270 |                         public_key = Some(b.clone());
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]   --> v2/src/net/acme.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use sha2::{Digest, Sha256};
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]   --> v2/src/registry.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | use sha2::{Digest, Sha256};
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]   --> v2/src/net/acme.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use sha2::{Digest, Sha256};
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]   --> v2/src/registry.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | use sha2::{Digest, Sha256};
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `public_key` is assigned to, but never used
[INFO] [stdout]    --> v2/src/quote/verify.rs:279:9
[INFO] [stdout]     |
[INFO] [stdout] 279 |     let mut public_key: Option<Vec<u8>> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_public_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `public_key` is never read
[INFO] [stdout]    --> v2/src/quote/verify.rs:302:25
[INFO] [stdout]     |
[INFO] [stdout] 302 |                         public_key = Some(b.clone());
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `public_key` is assigned to, but never used
[INFO] [stdout]    --> v2/src/quote/verify.rs:279:9
[INFO] [stdout]     |
[INFO] [stdout] 279 |     let mut public_key: Option<Vec<u8>> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_public_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `public_key` is never read
[INFO] [stdout]    --> v2/src/quote/verify.rs:302:25
[INFO] [stdout]     |
[INFO] [stdout] 302 |                         public_key = Some(b.clone());
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_cert_chain_p384` is never used
[INFO] [stdout]    --> v2/src/quote/verify.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn verify_cert_chain_p384(issuer_der: &[u8], subject_der: &[u8]) -> Result<bool, VerifyError> {
[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 `alg` is never read
[INFO] [stdout]    --> v2/src/registry.rs:530:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |     pub struct Sidecar {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 529 |         pub sig: Vec<u8>,
[INFO] [stdout] 530 |         pub alg: Option<String>,
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> v2/tests/attested_tls_live.rs:133:14
[INFO] [stdout]     |
[INFO] [stdout] 133 |         let (mut sock, _peer) = listener.accept().unwrap();
[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: function `verify_cert_chain_p384` is never used
[INFO] [stdout]    --> v2/src/quote/verify.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn verify_cert_chain_p384(issuer_der: &[u8], subject_der: &[u8]) -> Result<bool, VerifyError> {
[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 `alg` is never read
[INFO] [stdout]    --> v2/src/registry.rs:530:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |     pub struct Sidecar {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 529 |         pub sig: Vec<u8>,
[INFO] [stdout] 530 |         pub alg: Option<String>,
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `public_key` is assigned to, but never used
[INFO] [stdout]    --> src/quote/verify.rs:247:9
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let mut public_key: Option<Vec<u8>> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_public_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `public_key` is never read
[INFO] [stdout]    --> src/quote/verify.rs:270:25
[INFO] [stdout]     |
[INFO] [stdout] 270 |                         public_key = Some(b.clone());
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `public_key` is assigned to, but never used
[INFO] [stdout]    --> src/quote/verify.rs:247:9
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let mut public_key: Option<Vec<u8>> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_public_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `public_key` is never read
[INFO] [stdout]    --> src/quote/verify.rs:270:25
[INFO] [stdout]     |
[INFO] [stdout] 270 |                         public_key = Some(b.clone());
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha256`
[INFO] [stdout]   --> v2/src/net/acme.rs:39:24
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use sha2::{Digest, Sha256};
[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 imports: `PrivateKeyDer` and `PrivatePkcs8KeyDer`
[INFO] [stdout]  --> v2/src/net/tls.rs:8:41
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rustls::pki_types::{CertificateDer, PrivateKeyDer, PrivatePkcs8KeyDer};
[INFO] [stdout]   |                                         ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha256`
[INFO] [stdout]   --> v2/src/registry.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 39 | use sha2::{Digest, Sha256};
[INFO] [stdout]    |                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> v2/src/tee/tpm.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     use std::io::Write;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha256`
[INFO] [stdout]   --> v2/src/net/acme.rs:39:24
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use sha2::{Digest, Sha256};
[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 imports: `PrivateKeyDer` and `PrivatePkcs8KeyDer`
[INFO] [stdout]  --> v2/src/net/tls.rs:8:41
[INFO] [stdout]   |
[INFO] [stdout] 8 | use rustls::pki_types::{CertificateDer, PrivateKeyDer, PrivatePkcs8KeyDer};
[INFO] [stdout]   |                                         ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sha256`
[INFO] [stdout]   --> v2/src/registry.rs:39:20
[INFO] [stdout]    |
[INFO] [stdout] 39 | use sha2::{Digest, Sha256};
[INFO] [stdout]    |                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]   --> v2/src/tee/tpm.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     use std::io::Write;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_integrity` and `set_eat_token` are never used
[INFO] [stdout]   --> src/attest/mod.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl AttestState {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn with_integrity(mut self, integrity: SharedIntegrity) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub async fn set_eat_token(&self, b64: String) {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CocoEvidence` is never constructed
[INFO] [stdout]   --> src/compat.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub struct CocoEvidence {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CocoRuntimeData` is never constructed
[INFO] [stdout]   --> src/compat.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct CocoRuntimeData {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UqExtension` is never constructed
[INFO] [stdout]   --> src/compat.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct UqExtension {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_coco_evidence` is never used
[INFO] [stdout]   --> src/compat.rs:88:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | impl UnifiedQuote {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub fn to_coco_evidence(&self) -> CocoEvidence {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConstellationVariant` is never constructed
[INFO] [stdout]    --> src/compat.rs:121:12
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub struct ConstellationVariant {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_constellation_variant` is never used
[INFO] [stdout]    --> src/compat.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub fn to_constellation_variant(platform: Platform, cloud: Option<&str>) -> ConstellationVariant {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `start_integrity_monitor` is never used
[INFO] [stdout]   --> src/integrity.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn start_integrity_monitor(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extend_rtmr2` is never used
[INFO] [stdout]    --> src/integrity.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn extend_rtmr2(new_value_x: &[u8; 48]) -> Result<(), String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `start_heartbeat` is never used
[INFO] [stdout]    --> src/integrity.rs:146:8
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub fn start_heartbeat(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_secs` is never used
[INFO] [stdout]    --> src/integrity.rs:170:4
[INFO] [stdout]     |
[INFO] [stdout] 170 | fn now_secs() -> u64 {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `verify_signature` is never used
[INFO] [stdout]    --> src/quote/mod.rs:172:12
[INFO] [stdout]     |
[INFO] [stdout]  96 | impl UnifiedQuote {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub fn verify_signature(&self) -> Result<(), ed25519_dalek::SignatureError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `to_eat` and `from_eat` are never used
[INFO] [stdout]    --> src/quote/mod.rs:208:12
[INFO] [stdout]     |
[INFO] [stdout] 205 | impl UnifiedQuote {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn to_eat(&self, signing_key: &SigningKey) -> eat::EatToken {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn from_eat(claims: &eat::EatClaims) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OnChainAttestation` is never constructed
[INFO] [stdout]    --> src/quote/mod.rs:259:12
[INFO] [stdout]     |
[INFO] [stdout] 259 | pub struct OnChainAttestation {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_VERSION` is never used
[INFO] [stdout]   --> src/quote/eat.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const KEY_VERSION: i64 = 0;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_EAT_PROFILE` is never used
[INFO] [stdout]   --> src/quote/eat.rs:29:7
[INFO] [stdout]    |
[INFO] [stdout] 29 | const KEY_EAT_PROFILE: i64 = -1;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_VALUE_X` is never used
[INFO] [stdout]   --> src/quote/eat.rs:30:7
[INFO] [stdout]    |
[INFO] [stdout] 30 | const KEY_VALUE_X: i64 = 1;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_PLATFORM` is never used
[INFO] [stdout]   --> src/quote/eat.rs:31:7
[INFO] [stdout]    |
[INFO] [stdout] 31 | const KEY_PLATFORM: i64 = 2;
[INFO] [stdout]    |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_PUBKEY` is never used
[INFO] [stdout]   --> src/quote/eat.rs:32:7
[INFO] [stdout]    |
[INFO] [stdout] 32 | const KEY_PUBKEY: i64 = 3;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_QUOTE_HASH` is never used
[INFO] [stdout]   --> src/quote/eat.rs:33:7
[INFO] [stdout]    |
[INFO] [stdout] 33 | const KEY_QUOTE_HASH: i64 = 10;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_PLATFORM_QUOTE` is never used
[INFO] [stdout]   --> src/quote/eat.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const KEY_PLATFORM_QUOTE: i64 = 11;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_TCB_VERSION` is never used
[INFO] [stdout]   --> src/quote/eat.rs:35:7
[INFO] [stdout]    |
[INFO] [stdout] 35 | const KEY_TCB_VERSION: i64 = 12;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_COLLATERAL_HASH` is never used
[INFO] [stdout]   --> src/quote/eat.rs:36:7
[INFO] [stdout]    |
[INFO] [stdout] 36 | const KEY_COLLATERAL_HASH: i64 = 13;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_BUILD_HASH` is never used
[INFO] [stdout]   --> src/quote/eat.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | const KEY_BUILD_HASH: i64 = 20;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_SOURCE_COMMIT` is never used
[INFO] [stdout]   --> src/quote/eat.rs:38:7
[INFO] [stdout]    |
[INFO] [stdout] 38 | const KEY_SOURCE_COMMIT: i64 = 21;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_REGISTRY_ENTRY` is never used
[INFO] [stdout]   --> src/quote/eat.rs:39:7
[INFO] [stdout]    |
[INFO] [stdout] 39 | const KEY_REGISTRY_ENTRY: i64 = 22;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_IAT` is never used
[INFO] [stdout]   --> src/quote/eat.rs:40:7
[INFO] [stdout]    |
[INFO] [stdout] 40 | const KEY_IAT: i64 = 30;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_NONCE` is never used
[INFO] [stdout]   --> src/quote/eat.rs:41:7
[INFO] [stdout]    |
[INFO] [stdout] 41 | const KEY_NONCE: i64 = 31;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_HEARTBEAT_SEQ` is never used
[INFO] [stdout]   --> src/quote/eat.rs:42:7
[INFO] [stdout]    |
[INFO] [stdout] 42 | const KEY_HEARTBEAT_SEQ: i64 = 32;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KEY_INTEGRITY_OK` is never used
[INFO] [stdout]   --> src/quote/eat.rs:43:7
[INFO] [stdout]    |
[INFO] [stdout] 43 | const KEY_INTEGRITY_OK: i64 = 33;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `EAT_PROFILE` is never used
[INFO] [stdout]   --> src/quote/eat.rs:45:7
[INFO] [stdout]    |
[INFO] [stdout] 45 | const EAT_PROFILE: &str = "bountynet-v2";
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SCHEMA_VERSION` is never used
[INFO] [stdout]   --> src/quote/eat.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 | const SCHEMA_VERSION: u64 = 2;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EatClaims` is never constructed
[INFO] [stdout]   --> src/quote/eat.rs:50:12
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct EatClaims {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EatToken` is never constructed
[INFO] [stdout]   --> src/quote/eat.rs:76:12
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub struct EatToken {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `to_cbor` and `from_cbor` are never used
[INFO] [stdout]    --> src/quote/eat.rs:84:12
[INFO] [stdout]     |
[INFO] [stdout]  82 | impl EatClaims {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout]  83 |     /// Encode claims as a CBOR map.
[INFO] [stdout]  84 |     pub fn to_cbor(&self) -> Vec<u8> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 180 |     pub fn from_cbor(data: &[u8]) -> Result<Self, EatError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `sign`, `verify`, `compact`, `wire_size`, and `to_base64` are never used
[INFO] [stdout]    --> src/quote/eat.rs:320:12
[INFO] [stdout]     |
[INFO] [stdout] 318 | impl EatToken {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 319 |     /// Create and sign a new EAT token.
[INFO] [stdout] 320 |     pub fn sign(claims: EatClaims, signing_key: &SigningKey) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 354 |     pub fn verify(cose_bytes: &[u8]) -> Result<Self, EatError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 390 |     pub fn compact(&self, signing_key: &SigningKey) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 |     pub fn wire_size(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 402 |     pub fn to_base64(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `EatError` is never used
[INFO] [stdout]    --> src/quote/eat.rs:409:10
[INFO] [stdout]     |
[INFO] [stdout] 409 | pub enum EatError {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AWS_NITRO_ROOT_SHA256` is never used
[INFO] [stdout]   --> src/quote/roots.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const AWS_NITRO_ROOT_SHA256: &str =
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AMD_ARK_MILAN_SHA256` is never used
[INFO] [stdout]   --> src/quote/roots.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const AMD_ARK_MILAN_SHA256: &str =
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AMD_ARK_GENOA_SHA256` is never used
[INFO] [stdout]   --> src/quote/roots.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const AMD_ARK_GENOA_SHA256: &str =
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INTEL_SGX_ROOT_SHA256` is never used
[INFO] [stdout]   --> src/quote/roots.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub const INTEL_SGX_ROOT_SHA256: &str =
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_root_fingerprint` is never used
[INFO] [stdout]   --> src/quote/roots.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn verify_root_fingerprint(cert_der: &[u8], expected_fingerprint: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VerificationResult` is never constructed
[INFO] [stdout]   --> src/quote/verify.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct VerificationResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_unified_quote` is never used
[INFO] [stdout]   --> src/quote/verify.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn verify_unified_quote(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_cert_chain_p384` is never used
[INFO] [stdout]   --> src/quote/verify.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn verify_cert_chain_p384(issuer_der: &[u8], subject_der: &[u8]) -> Result<bool, VerifyError> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_cert_chain_p256` is never used
[INFO] [stdout]    --> src/quote/verify.rs:131:4
[INFO] [stdout]     |
[INFO] [stdout] 131 | fn verify_cert_chain_p256(issuer_der: &[u8], subject_der: &[u8]) -> Result<bool, VerifyError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_nitro_quote` is never used
[INFO] [stdout]    --> src/quote/verify.rs:182:4
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn verify_nitro_quote(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_cert_chain_p384_nitro` is never used
[INFO] [stdout]    --> src/quote/verify.rs:405:4
[INFO] [stdout]     |
[INFO] [stdout] 405 | fn verify_cert_chain_p384_nitro(issuer_der: &[u8], subject_der: &[u8]) -> Result<(), VerifyError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_snp_quote` is never used
[INFO] [stdout]    --> src/quote/verify.rs:452:4
[INFO] [stdout]     |
[INFO] [stdout] 452 | fn verify_snp_quote(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_snp_cert_table` is never used
[INFO] [stdout]    --> src/quote/verify.rs:621:4
[INFO] [stdout]     |
[INFO] [stdout] 621 | fn parse_snp_cert_table(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_tdx_quote` is never used
[INFO] [stdout]    --> src/quote/verify.rs:705:4
[INFO] [stdout]     |
[INFO] [stdout] 705 | fn verify_tdx_quote(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_pem_chain` is never used
[INFO] [stdout]    --> src/quote/verify.rs:950:4
[INFO] [stdout]     |
[INFO] [stdout] 950 | fn parse_pem_chain(pem_str: &str) -> Vec<Vec<u8>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `VerifyError` is never used
[INFO] [stdout]    --> src/quote/verify.rs:968:10
[INFO] [stdout]     |
[INFO] [stdout] 968 | pub enum VerifyError {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RegistryEntry` is never constructed
[INFO] [stdout]   --> src/registry.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct RegistryEntry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PlatformMeasurements` is never constructed
[INFO] [stdout]   --> src/registry.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct PlatformMeasurements {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ValueXRegistry` is never constructed
[INFO] [stdout]   --> src/registry.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct ValueXRegistry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `is_known`, `is_recommended`, `get`, and `latest_recommended` are never used
[INFO] [stdout]   --> src/registry.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl ValueXRegistry {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 64 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn is_known(&self, value_x: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn is_recommended(&self, value_x: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub fn get(&self, value_x: &str) -> Option<&RegistryEntry> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89 |     pub fn latest_recommended(&self) -> Option<&RegistryEntry> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TcbPolicy` is never constructed
[INFO] [stdout]    --> src/registry.rs:102:12
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub struct TcbPolicy {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cert_chain` is never read
[INFO] [stdout]   --> src/tee/mod.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct TeeEvidence {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub cert_chain: Vec<Vec<u8>>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KDS_BASE` is never used
[INFO] [stdout]   --> src/tee/kds.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const KDS_BASE: &str = "https://kdsintf.amd.com";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_vcek` is never used
[INFO] [stdout]   --> src/tee/kds.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn fetch_vcek(
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_cert_chain` is never used
[INFO] [stdout]   --> src/tee/kds.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn fetch_cert_chain(product: &str) -> Result<(Vec<u8>, Vec<u8>), String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_kds_params` is never used
[INFO] [stdout]    --> src/tee/kds.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn extract_kds_params(report: &[u8]) -> Result<(String, Vec<u8>, u8, u8, u8, u8), String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pem_to_der` is never used
[INFO] [stdout]    --> src/tee/kds.rs:137:4
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn pem_to_der(pem_bytes: &[u8]) -> Option<Vec<u8>> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_pem_certs` is never used
[INFO] [stdout]    --> src/tee/kds.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn parse_pem_certs(pem_str: &str) -> Vec<Vec<u8>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_integrity` and `set_eat_token` are never used
[INFO] [stdout]   --> src/attest/mod.rs:53:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl AttestState {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 53 |     pub fn with_integrity(mut self, integrity: SharedIntegrity) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub async fn set_eat_token(&self, b64: String) {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CocoEvidence` is never constructed
[INFO] [stdout]   --> src/compat.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub struct CocoEvidence {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CocoRuntimeData` is never constructed
[INFO] [stdout]   --> src/compat.rs:71:12
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct CocoRuntimeData {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `UqExtension` is never constructed
[INFO] [stdout]   --> src/compat.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct UqExtension {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `to_coco_evidence` is never used
[INFO] [stdout]   --> src/compat.rs:88:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | impl UnifiedQuote {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub fn to_coco_evidence(&self) -> CocoEvidence {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConstellationVariant` is never constructed
[INFO] [stdout]    --> src/compat.rs:121:12
[INFO] [stdout]     |
[INFO] [stdout] 121 | pub struct ConstellationVariant {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_constellation_variant` is never used
[INFO] [stdout]    --> src/compat.rs:128:8
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub fn to_constellation_variant(platform: Platform, cloud: Option<&str>) -> ConstellationVariant {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `start_integrity_monitor` is never used
[INFO] [stdout]   --> src/integrity.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn start_integrity_monitor(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extend_rtmr2` is never used
[INFO] [stdout]    --> src/integrity.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn extend_rtmr2(new_value_x: &[u8; 48]) -> Result<(), String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `start_heartbeat` is never used
[INFO] [stdout]    --> src/integrity.rs:146:8
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub fn start_heartbeat(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `now_secs` is never used
[INFO] [stdout]    --> src/integrity.rs:170:4
[INFO] [stdout]     |
[INFO] [stdout] 170 | fn now_secs() -> u64 {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `verify_signature` is never used
[INFO] [stdout]    --> src/quote/mod.rs:172:12
[INFO] [stdout]     |
[INFO] [stdout]  96 | impl UnifiedQuote {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 172 |     pub fn verify_signature(&self) -> Result<(), ed25519_dalek::SignatureError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `to_eat` and `from_eat` are never used
[INFO] [stdout]    --> src/quote/mod.rs:208:12
[INFO] [stdout]     |
[INFO] [stdout] 205 | impl UnifiedQuote {
[INFO] [stdout]     | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn to_eat(&self, signing_key: &SigningKey) -> eat::EatToken {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     pub fn from_eat(claims: &eat::EatClaims) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `OnChainAttestation` is never constructed
[INFO] [stdout]    --> src/quote/mod.rs:259:12
[INFO] [stdout]     |
[INFO] [stdout] 259 | pub struct OnChainAttestation {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AWS_NITRO_ROOT_SHA256` is never used
[INFO] [stdout]   --> src/quote/roots.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const AWS_NITRO_ROOT_SHA256: &str =
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AMD_ARK_MILAN_SHA256` is never used
[INFO] [stdout]   --> src/quote/roots.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const AMD_ARK_MILAN_SHA256: &str =
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AMD_ARK_GENOA_SHA256` is never used
[INFO] [stdout]   --> src/quote/roots.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const AMD_ARK_GENOA_SHA256: &str =
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INTEL_SGX_ROOT_SHA256` is never used
[INFO] [stdout]   --> src/quote/roots.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub const INTEL_SGX_ROOT_SHA256: &str =
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_root_fingerprint` is never used
[INFO] [stdout]   --> src/quote/roots.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn verify_root_fingerprint(cert_der: &[u8], expected_fingerprint: &str) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VerificationResult` is never constructed
[INFO] [stdout]   --> src/quote/verify.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct VerificationResult {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_unified_quote` is never used
[INFO] [stdout]   --> src/quote/verify.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn verify_unified_quote(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_cert_chain_p384` is never used
[INFO] [stdout]   --> src/quote/verify.rs:94:4
[INFO] [stdout]    |
[INFO] [stdout] 94 | fn verify_cert_chain_p384(issuer_der: &[u8], subject_der: &[u8]) -> Result<bool, VerifyError> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_cert_chain_p256` is never used
[INFO] [stdout]    --> src/quote/verify.rs:131:4
[INFO] [stdout]     |
[INFO] [stdout] 131 | fn verify_cert_chain_p256(issuer_der: &[u8], subject_der: &[u8]) -> Result<bool, VerifyError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_nitro_quote` is never used
[INFO] [stdout]    --> src/quote/verify.rs:182:4
[INFO] [stdout]     |
[INFO] [stdout] 182 | fn verify_nitro_quote(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_cert_chain_p384_nitro` is never used
[INFO] [stdout]    --> src/quote/verify.rs:405:4
[INFO] [stdout]     |
[INFO] [stdout] 405 | fn verify_cert_chain_p384_nitro(issuer_der: &[u8], subject_der: &[u8]) -> Result<(), VerifyError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_snp_quote` is never used
[INFO] [stdout]    --> src/quote/verify.rs:452:4
[INFO] [stdout]     |
[INFO] [stdout] 452 | fn verify_snp_quote(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_snp_cert_table` is never used
[INFO] [stdout]    --> src/quote/verify.rs:621:4
[INFO] [stdout]     |
[INFO] [stdout] 621 | fn parse_snp_cert_table(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_tdx_quote` is never used
[INFO] [stdout]    --> src/quote/verify.rs:705:4
[INFO] [stdout]     |
[INFO] [stdout] 705 | fn verify_tdx_quote(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_pem_chain` is never used
[INFO] [stdout]    --> src/quote/verify.rs:950:4
[INFO] [stdout]     |
[INFO] [stdout] 950 | fn parse_pem_chain(pem_str: &str) -> Vec<Vec<u8>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `VerifyError` is never used
[INFO] [stdout]    --> src/quote/verify.rs:968:10
[INFO] [stdout]     |
[INFO] [stdout] 968 | pub enum VerifyError {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RegistryEntry` is never constructed
[INFO] [stdout]   --> src/registry.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct RegistryEntry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PlatformMeasurements` is never constructed
[INFO] [stdout]   --> src/registry.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub struct PlatformMeasurements {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ValueXRegistry` is never constructed
[INFO] [stdout]   --> src/registry.rs:56:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub struct ValueXRegistry {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `is_known`, `is_recommended`, `get`, and `latest_recommended` are never used
[INFO] [stdout]   --> src/registry.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl ValueXRegistry {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 64 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn is_known(&self, value_x: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn is_recommended(&self, value_x: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub fn get(&self, value_x: &str) -> Option<&RegistryEntry> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89 |     pub fn latest_recommended(&self) -> Option<&RegistryEntry> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TcbPolicy` is never constructed
[INFO] [stdout]    --> src/registry.rs:102:12
[INFO] [stdout]     |
[INFO] [stdout] 102 | pub struct TcbPolicy {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cert_chain` is never read
[INFO] [stdout]   --> src/tee/mod.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct TeeEvidence {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub cert_chain: Vec<Vec<u8>>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KDS_BASE` is never used
[INFO] [stdout]   --> src/tee/kds.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const KDS_BASE: &str = "https://kdsintf.amd.com";
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_vcek` is never used
[INFO] [stdout]   --> src/tee/kds.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub fn fetch_vcek(
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_cert_chain` is never used
[INFO] [stdout]   --> src/tee/kds.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn fetch_cert_chain(product: &str) -> Result<(Vec<u8>, Vec<u8>), String> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extract_kds_params` is never used
[INFO] [stdout]    --> src/tee/kds.rs:103:8
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub fn extract_kds_params(report: &[u8]) -> Result<(String, Vec<u8>, u8, u8, u8, u8), String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pem_to_der` is never used
[INFO] [stdout]    --> src/tee/kds.rs:137:4
[INFO] [stdout]     |
[INFO] [stdout] 137 | fn pem_to_der(pem_bytes: &[u8]) -> Option<Vec<u8>> {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_pem_certs` is never used
[INFO] [stdout]    --> src/tee/kds.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn parse_pem_certs(pem_str: &str) -> Vec<Vec<u8>> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]   --> v2/src/net/acme.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use sha2::{Digest, Sha256};
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]   --> v2/src/registry.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | use sha2::{Digest, Sha256};
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]   --> v2/src/net/acme.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use sha2::{Digest, Sha256};
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Digest`
[INFO] [stdout]   --> v2/src/registry.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | use sha2::{Digest, Sha256};
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `public_key` is assigned to, but never used
[INFO] [stdout]    --> v2/src/quote/verify.rs:279:9
[INFO] [stdout]     |
[INFO] [stdout] 279 |     let mut public_key: Option<Vec<u8>> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_public_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `public_key` is never read
[INFO] [stdout]    --> v2/src/quote/verify.rs:302:25
[INFO] [stdout]     |
[INFO] [stdout] 302 |                         public_key = Some(b.clone());
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `public_key` is assigned to, but never used
[INFO] [stdout]    --> v2/src/quote/verify.rs:279:9
[INFO] [stdout]     |
[INFO] [stdout] 279 |     let mut public_key: Option<Vec<u8>> = None;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_public_key` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `public_key` is never read
[INFO] [stdout]    --> v2/src/quote/verify.rs:302:25
[INFO] [stdout]     |
[INFO] [stdout] 302 |                         public_key = Some(b.clone());
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `artifact_bytes`
[INFO] [stdout]    --> v2/src/main.rs:368:13
[INFO] [stdout]     |
[INFO] [stdout] 368 |     let (a, artifact_bytes): ([u8; 48], Vec<u8>) = if artifact_path.is_file() {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_artifact_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LengthMismatch` is never constructed
[INFO] [stdout]    --> v2/src/eat.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub enum EatError {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |     LengthMismatch {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `EatError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `version` is never read
[INFO] [stdout]    --> v2/src/net/ct.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 165 | pub struct Sct {
[INFO] [stdout]     |            --- field in this struct
[INFO] [stdout] 166 |     /// SCT version byte. Must be 0 (v1) today.
[INFO] [stdout] 167 |     pub version: u8,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Sct` 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: method `is_empty` is never used
[INFO] [stdout]    --> v2/src/net/ct.rs:448:12
[INFO] [stdout]     |
[INFO] [stdout] 447 | impl CtReport {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] 448 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `artifact_bytes`
[INFO] [stdout]    --> v2/src/main.rs:368:13
[INFO] [stdout]     |
[INFO] [stdout] 368 |     let (a, artifact_bytes): ([u8; 48], Vec<u8>) = if artifact_path.is_file() {
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_artifact_bytes`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_self_signed`, `set_cert`, `get_config_sync`, `get_attestation_sync`, and `set_attestation_sync` are never used
[INFO] [stdout]   --> v2/src/net/tls.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl TlsState {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 23 |     /// Create with a self-signed cert (for ACME challenge phase).
[INFO] [stdout] 24 |     pub fn new_self_signed(domain: &str) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub async fn set_cert(&self, cert_pem: &[u8], key_pem: &[u8]) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn get_config_sync(&self) -> Arc<ServerConfig> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn get_attestation_sync(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn set_attestation_sync(&self, json: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rsa_priv_der` is never read
[INFO] [stdout]   --> v2/src/net/vsock.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct KmsState {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub rsa_priv_der: Vec<u8>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_loopback` is never used
[INFO] [stdout]   --> v2/src/net/vsock.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn setup_loopback() -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bridge_vsock_to_loopback` is never used
[INFO] [stdout]   --> v2/src/net/vsock.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub fn bridge_vsock_to_loopback(loopback_port: u16) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pipe_vsock_to_tcp` is never used
[INFO] [stdout]    --> v2/src/net/vsock.rs:550:4
[INFO] [stdout]     |
[INFO] [stdout] 550 | fn pipe_vsock_to_tcp(vsock_fd: i32, loopback_port: u16) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_cert_chain_p384` is never used
[INFO] [stdout]    --> v2/src/quote/verify.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn verify_cert_chain_p384(issuer_der: &[u8], subject_der: &[u8]) -> Result<bool, VerifyError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RawPublicKey` is never constructed
[INFO] [stdout]    --> v2/src/registry.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub enum TrustedIdentity {
[INFO] [stdout]     |          --------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 172 |     RawPublicKey {
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TrustedIdentity` 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: field `trust_root` is never read
[INFO] [stdout]    --> v2/src/registry.rs:215:5
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub struct Registry {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 214 |     entries: HashMap<String, (Entry, SignatureState)>,
[INFO] [stdout] 215 |     trust_root: TrustRoot,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `trust_root` and `snapshot` are never used
[INFO] [stdout]    --> v2/src/registry.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 220 | impl Registry {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 373 |     pub fn trust_root(&self) -> &TrustRoot {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 |     pub fn snapshot(&self) -> Option<&Snapshot> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `alg` is never read
[INFO] [stdout]    --> v2/src/registry.rs:530:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |     pub struct Sidecar {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 529 |         pub sig: Vec<u8>,
[INFO] [stdout] 530 |         pub alg: Option<String>,
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cert_chain` is never read
[INFO] [stdout]   --> v2/src/tee/mod.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct TeeEvidence {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub cert_chain: Vec<Vec<u8>>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AZURE_HCL_NV_INDEX` is never used
[INFO] [stdout]   --> v2/src/tee/azure.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const AZURE_HCL_NV_INDEX: &str = "0x01400001";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HCL_SIG` is never used
[INFO] [stdout]   --> v2/src/tee/azure.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const HCL_SIG: u32 = 0x414c_4348;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SNP_OFFSET` is never used
[INFO] [stdout]   --> v2/src/tee/azure.rs:30:7
[INFO] [stdout]    |
[INFO] [stdout] 30 | const SNP_OFFSET: usize = 0x20;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SNP_LEN` is never used
[INFO] [stdout]   --> v2/src/tee/azure.rs:32:7
[INFO] [stdout]    |
[INFO] [stdout] 32 | const SNP_LEN: usize = 1184;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AzureEvidence` is never constructed
[INFO] [stdout]   --> v2/src/tee/azure.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct AzureEvidence {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AZURE_VTPM_AK_HANDLE` is never used
[INFO] [stdout]   --> v2/src/tee/azure.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub const AZURE_VTPM_AK_HANDLE: &str = "0x81000003";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AzureBundle` is never constructed
[INFO] [stdout]   --> v2/src/tee/azure.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct AzureBundle {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AzureVerdict` is never constructed
[INFO] [stdout]   --> v2/src/tee/azure.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct AzureVerdict {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_hcl` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub fn parse_hcl(hcl: &[u8]) -> Result<AzureEvidence, String> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_hcl` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn verify_hcl(hcl: &[u8]) -> Result<AzureVerdict, String> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ak_pub_from_runtime` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:202:4
[INFO] [stdout]     |
[INFO] [stdout] 202 | fn ak_pub_from_runtime(runtime: &[u8]) -> Result<(Vec<u8>, Vec<u8>), String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_ak_quote` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:229:4
[INFO] [stdout]     |
[INFO] [stdout] 229 | fn verify_ak_quote(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_bundle` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:311:8
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub fn verify_bundle(bundle: &AzureBundle) -> Result<AzureVerdict, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_bundle` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:347:8
[INFO] [stdout]     |
[INFO] [stdout] 347 | pub fn collect_bundle(binding: Option<&[u8; 32]>) -> Result<AzureBundle, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tls_binding` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:370:4
[INFO] [stdout]     |
[INFO] [stdout] 370 | fn tls_binding(tls_spki: &[u8; 32], value_x: &[u8; 32]) -> [u8; 32] {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_attested_cert` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:384:8
[INFO] [stdout]     |
[INFO] [stdout] 384 | pub fn collect_attested_cert(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_attested_cert` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:412:8
[INFO] [stdout]     |
[INFO] [stdout] 412 | pub fn verify_attested_cert(cert_der: &[u8]) -> Result<AzureVerdict, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tpm_quote_over` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:467:4
[INFO] [stdout]     |
[INFO] [stdout] 467 | fn tpm_quote_over(binding: &[u8; 32]) -> Result<(Vec<u8>, Vec<u8>), String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_runtime_meta` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:506:4
[INFO] [stdout]     |
[INFO] [stdout] 506 | fn parse_runtime_meta(runtime: &[u8]) -> (Option<String>, Option<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_hcl_report` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:532:8
[INFO] [stdout]     |
[INFO] [stdout] 532 | pub fn read_hcl_report() -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `LengthMismatch` is never constructed
[INFO] [stdout]    --> v2/src/eat.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub enum EatError {
[INFO] [stdout]     |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 113 |     LengthMismatch {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `EatError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_empty` is never used
[INFO] [stdout]    --> v2/src/net/ct.rs:448:12
[INFO] [stdout]     |
[INFO] [stdout] 447 | impl CtReport {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] 448 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new_self_signed`, `set_cert`, `get_config_sync`, `get_attestation_sync`, and `set_attestation_sync` are never used
[INFO] [stdout]   --> v2/src/net/tls.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl TlsState {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 23 |     /// Create with a self-signed cert (for ACME challenge phase).
[INFO] [stdout] 24 |     pub fn new_self_signed(domain: &str) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub async fn set_cert(&self, cert_pem: &[u8], key_pem: &[u8]) -> Result<()> {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn get_config_sync(&self) -> Arc<ServerConfig> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn get_attestation_sync(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn set_attestation_sync(&self, json: String) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `rsa_priv_der` is never read
[INFO] [stdout]   --> v2/src/net/vsock.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct KmsState {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub rsa_priv_der: Vec<u8>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `setup_loopback` is never used
[INFO] [stdout]   --> v2/src/net/vsock.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn setup_loopback() -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bridge_vsock_to_loopback` is never used
[INFO] [stdout]   --> v2/src/net/vsock.rs:67:8
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub fn bridge_vsock_to_loopback(loopback_port: u16) -> Result<()> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pipe_vsock_to_tcp` is never used
[INFO] [stdout]    --> v2/src/net/vsock.rs:550:4
[INFO] [stdout]     |
[INFO] [stdout] 550 | fn pipe_vsock_to_tcp(vsock_fd: i32, loopback_port: u16) -> Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_cert_chain_p384` is never used
[INFO] [stdout]    --> v2/src/quote/verify.rs:127:4
[INFO] [stdout]     |
[INFO] [stdout] 127 | fn verify_cert_chain_p384(issuer_der: &[u8], subject_der: &[u8]) -> Result<bool, VerifyError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `algorithm` and `label` are never read
[INFO] [stdout]    --> v2/src/registry.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |     RawPublicKey {
[INFO] [stdout]     |     ------------ fields in this variant
[INFO] [stdout] 173 |         algorithm: String, // "ed25519" | "ecdsa-p256"
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] 174 |         spki_der: Vec<u8>,
[INFO] [stdout] 175 |         label: String, // human-readable, shown on verify
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TrustedIdentity` 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: field `trust_root` is never read
[INFO] [stdout]    --> v2/src/registry.rs:215:5
[INFO] [stdout]     |
[INFO] [stdout] 213 | pub struct Registry {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] 214 |     entries: HashMap<String, (Entry, SignatureState)>,
[INFO] [stdout] 215 |     trust_root: TrustRoot,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `trust_root` and `snapshot` are never used
[INFO] [stdout]    --> v2/src/registry.rs:373:12
[INFO] [stdout]     |
[INFO] [stdout] 220 | impl Registry {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 373 |     pub fn trust_root(&self) -> &TrustRoot {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 382 |     pub fn snapshot(&self) -> Option<&Snapshot> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `alg` is never read
[INFO] [stdout]    --> v2/src/registry.rs:530:13
[INFO] [stdout]     |
[INFO] [stdout] 528 |     pub struct Sidecar {
[INFO] [stdout]     |                ------- field in this struct
[INFO] [stdout] 529 |         pub sig: Vec<u8>,
[INFO] [stdout] 530 |         pub alg: Option<String>,
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `cert_chain` is never read
[INFO] [stdout]   --> v2/src/tee/mod.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct TeeEvidence {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub cert_chain: Vec<Vec<u8>>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AZURE_HCL_NV_INDEX` is never used
[INFO] [stdout]   --> v2/src/tee/azure.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const AZURE_HCL_NV_INDEX: &str = "0x01400001";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HCL_SIG` is never used
[INFO] [stdout]   --> v2/src/tee/azure.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const HCL_SIG: u32 = 0x414c_4348;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SNP_OFFSET` is never used
[INFO] [stdout]   --> v2/src/tee/azure.rs:30:7
[INFO] [stdout]    |
[INFO] [stdout] 30 | const SNP_OFFSET: usize = 0x20;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SNP_LEN` is never used
[INFO] [stdout]   --> v2/src/tee/azure.rs:32:7
[INFO] [stdout]    |
[INFO] [stdout] 32 | const SNP_LEN: usize = 1184;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AzureEvidence` is never constructed
[INFO] [stdout]   --> v2/src/tee/azure.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct AzureEvidence {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `AZURE_VTPM_AK_HANDLE` is never used
[INFO] [stdout]   --> v2/src/tee/azure.rs:44:11
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub const AZURE_VTPM_AK_HANDLE: &str = "0x81000003";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AzureBundle` is never constructed
[INFO] [stdout]   --> v2/src/tee/azure.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub struct AzureBundle {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AzureVerdict` is never constructed
[INFO] [stdout]   --> v2/src/tee/azure.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct AzureVerdict {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_hcl` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub fn parse_hcl(hcl: &[u8]) -> Result<AzureEvidence, String> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_hcl` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn verify_hcl(hcl: &[u8]) -> Result<AzureVerdict, String> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ak_pub_from_runtime` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:202:4
[INFO] [stdout]     |
[INFO] [stdout] 202 | fn ak_pub_from_runtime(runtime: &[u8]) -> Result<(Vec<u8>, Vec<u8>), String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_ak_quote` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:229:4
[INFO] [stdout]     |
[INFO] [stdout] 229 | fn verify_ak_quote(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_bundle` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:311:8
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub fn verify_bundle(bundle: &AzureBundle) -> Result<AzureVerdict, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_bundle` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:347:8
[INFO] [stdout]     |
[INFO] [stdout] 347 | pub fn collect_bundle(binding: Option<&[u8; 32]>) -> Result<AzureBundle, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tls_binding` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:370:4
[INFO] [stdout]     |
[INFO] [stdout] 370 | fn tls_binding(tls_spki: &[u8; 32], value_x: &[u8; 32]) -> [u8; 32] {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `collect_attested_cert` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:384:8
[INFO] [stdout]     |
[INFO] [stdout] 384 | pub fn collect_attested_cert(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_attested_cert` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:412:8
[INFO] [stdout]     |
[INFO] [stdout] 412 | pub fn verify_attested_cert(cert_der: &[u8]) -> Result<AzureVerdict, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tpm_quote_over` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:467:4
[INFO] [stdout]     |
[INFO] [stdout] 467 | fn tpm_quote_over(binding: &[u8; 32]) -> Result<(Vec<u8>, Vec<u8>), String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_runtime_meta` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:506:4
[INFO] [stdout]     |
[INFO] [stdout] 506 | fn parse_runtime_meta(runtime: &[u8]) -> (Option<String>, Option<String>) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_hcl_report` is never used
[INFO] [stdout]    --> v2/src/tee/azure.rs:532:8
[INFO] [stdout]     |
[INFO] [stdout] 532 | pub fn read_hcl_report() -> Result<Vec<u8>, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 37s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nix v0.29.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 7`
[INFO] running `Command { std: "docker" "inspect" "dd552ce47c28195c40b9a30ed39ed9a60f4471ee23629facadd0e95e241c5b17", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dd552ce47c28195c40b9a30ed39ed9a60f4471ee23629facadd0e95e241c5b17", kill_on_drop: false }`
[INFO] [stdout] dd552ce47c28195c40b9a30ed39ed9a60f4471ee23629facadd0e95e241c5b17
