[INFO] cloning repository https://github.com/johndaniels/rusttls [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/johndaniels/rusttls" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjohndaniels%2Frusttls", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjohndaniels%2Frusttls'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 5dd0f3b1397b662a12970660c0401177d4f78132 [INFO] testing johndaniels/rusttls against beta-2021-09-08 for beta-1.56-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjohndaniels%2Frusttls" "/workspace/builds/worker-115/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-115/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/johndaniels/rusttls on toolchain beta-2021-09-08 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-09-08" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/johndaniels/rusttls [INFO] finished tweaking git repo https://github.com/johndaniels/rusttls [INFO] tweaked toml for git repo https://github.com/johndaniels/rusttls written to /workspace/builds/worker-115/source/Cargo.toml [INFO] crate git repo https://github.com/johndaniels/rusttls already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-09-08" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded trust-dns-proto v0.8.0 [INFO] [stderr] Downloaded tokio-codec v0.2.0-alpha.6 [INFO] [stderr] Downloaded tokio-macros v0.2.0-alpha.6 [INFO] [stderr] Downloaded futures-executor-preview v0.3.0-alpha.19 [INFO] [stderr] Downloaded tracing-core v0.1.6 [INFO] [stderr] Downloaded tokio v0.2.0-alpha.6 [INFO] [stderr] Downloaded tokio-net v0.2.0-alpha.6 [INFO] [stderr] Downloaded proc-macro2 v1.0.5 [INFO] [stderr] Downloaded futures-sink-preview v0.3.0-alpha.19 [INFO] [stderr] Downloaded hex v0.4.0 [INFO] [stderr] Downloaded futures-preview v0.3.0-alpha.19 [INFO] [stderr] Downloaded tokio-fs v0.2.0-alpha.6 [INFO] [stderr] Downloaded tracing-attributes v0.1.4 [INFO] [stderr] Downloaded tracing v0.1.9 [INFO] [stderr] Downloaded tokio-sync v0.1.6 [INFO] [stderr] Downloaded pin-project v0.4.3 [INFO] [stderr] Downloaded pin-project-internal v0.4.3 [INFO] [stderr] Downloaded tokio-io v0.2.0-alpha.6 [INFO] [stderr] Downloaded tokio-timer v0.3.0-alpha.6 [INFO] [stderr] Downloaded trust-dns-resolver v0.12.0 [INFO] [stderr] Downloaded futures-io-preview v0.3.0-alpha.19 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-115/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-115/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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0539b3b9e48a69b7ddf0d2c511274fdac1c5c6e29b6d9a6de5f9152561a873fa [INFO] running `Command { std: "docker" "start" "-a" "0539b3b9e48a69b7ddf0d2c511274fdac1c5c6e29b6d9a6de5f9152561a873fa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0539b3b9e48a69b7ddf0d2c511274fdac1c5c6e29b6d9a6de5f9152561a873fa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0539b3b9e48a69b7ddf0d2c511274fdac1c5c6e29b6d9a6de5f9152561a873fa", kill_on_drop: false }` [INFO] [stdout] 0539b3b9e48a69b7ddf0d2c511274fdac1c5c6e29b6d9a6de5f9152561a873fa [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-115/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-115/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=warn" "-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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 11a4d378b099732e2809d1daa04b4807d93b722116c6fad42c63e52d7c1f526a [INFO] running `Command { std: "docker" "start" "-a" "11a4d378b099732e2809d1daa04b4807d93b722116c6fad42c63e52d7c1f526a", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling libc v0.2.62 [INFO] [stderr] Compiling spin v0.5.2 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling slab v0.4.2 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling scopeguard v1.0.0 [INFO] [stderr] Compiling futures v0.1.29 [INFO] [stderr] Compiling syn v1.0.5 [INFO] [stderr] Compiling smallvec v0.6.10 [INFO] [stderr] Compiling fnv v1.0.6 [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Compiling arrayvec v0.4.11 [INFO] [stderr] Compiling futures-core-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling nodrop v0.1.13 [INFO] [stderr] Compiling futures-sink-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling pin-utils v0.1.0-alpha.4 [INFO] [stderr] Compiling futures-io-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling autocfg v0.1.6 [INFO] [stderr] Compiling syn v0.15.44 [INFO] [stderr] Compiling cc v1.0.45 [INFO] [stderr] Compiling getrandom v0.1.12 [INFO] [stderr] Compiling failure_derive v0.1.5 [INFO] [stderr] Compiling ppv-lite86 v0.2.5 [INFO] [stderr] Compiling rustc-demangle v0.1.16 [INFO] [stderr] Compiling quick-error v1.2.2 [INFO] [stderr] Compiling linked-hash-map v0.5.2 [INFO] [stderr] Compiling hex v0.4.0 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling memoffset v0.5.1 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling lock_api v0.3.1 [INFO] [stderr] Compiling futures-channel-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling crossbeam-utils v0.6.6 [INFO] [stderr] Compiling tracing-core v0.1.6 [INFO] [stderr] Compiling c2-chacha v0.2.2 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling num-bigint v0.2.3 [INFO] [stderr] Compiling lru-cache v0.1.2 [INFO] [stderr] Compiling backtrace-sys v0.1.31 [INFO] [stderr] Compiling unicode-normalization v0.1.8 [INFO] [stderr] Compiling crossbeam-queue v0.1.2 [INFO] [stderr] Compiling crossbeam-channel v0.3.9 [INFO] [stderr] Compiling iovec v0.1.2 [INFO] [stderr] Compiling num_cpus v1.10.1 [INFO] [stderr] Compiling net2 v0.2.33 [INFO] [stderr] Compiling hostname v0.1.5 [INFO] [stderr] Compiling socket2 v0.3.11 [INFO] [stderr] Compiling tokio-executor v0.1.8 [INFO] [stderr] Compiling tokio-sync v0.1.6 [INFO] [stderr] Compiling futures-util-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling crossbeam-epoch v0.7.2 [INFO] [stderr] Compiling synstructure v0.10.2 [INFO] [stderr] Compiling idna v0.2.0 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling resolv-conf v0.6.2 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling backtrace v0.3.38 [INFO] [stderr] Compiling mio v0.6.19 [INFO] [stderr] Compiling tokio-timer v0.2.11 [INFO] [stderr] Compiling tokio-current-thread v0.1.6 [INFO] [stderr] Compiling enum-as-inner v0.2.1 [INFO] [stderr] Compiling crossbeam-deque v0.7.1 [INFO] [stderr] Compiling tokio-sync v0.2.0-alpha.6 [INFO] [stderr] Compiling url v2.1.0 [INFO] [stderr] Compiling futures-executor-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling rand_chacha v0.2.1 [INFO] [stderr] Compiling tokio-threadpool v0.1.16 [INFO] [stderr] Compiling tokio-io v0.1.12 [INFO] [stderr] Compiling rand v0.7.2 [INFO] [stderr] Compiling futures-preview v0.3.0-alpha.19 [INFO] [stderr] Compiling mio-uds v0.6.7 [INFO] [stderr] Compiling tokio-reactor v0.1.10 [INFO] [stderr] Compiling tokio-codec v0.1.1 [INFO] [stderr] Compiling tokio-fs v0.1.6 [INFO] [stderr] Compiling tokio-tcp v0.1.3 [INFO] [stderr] Compiling tokio-udp v0.1.5 [INFO] [stderr] Compiling tokio-uds v0.2.5 [INFO] [stderr] Compiling tokio v0.1.22 [INFO] [stderr] Compiling pin-project-internal v0.4.3 [INFO] [stderr] Compiling tracing-attributes v0.1.4 [INFO] [stderr] Compiling tokio-macros v0.2.0-alpha.6 [INFO] [stderr] Compiling failure v0.1.5 [INFO] [stderr] Compiling trust-dns-proto v0.8.0 [INFO] [stderr] Compiling tracing v0.1.9 [INFO] [stderr] Compiling tokio-executor v0.2.0-alpha.6 [INFO] [stderr] Compiling trust-dns-resolver v0.12.0 [INFO] [stderr] Compiling pin-project v0.4.3 [INFO] [stderr] Compiling tokio-io v0.2.0-alpha.6 [INFO] [stderr] Compiling tokio-codec v0.2.0-alpha.6 [INFO] [stderr] Compiling tokio-timer v0.3.0-alpha.6 [INFO] [stderr] Compiling tokio-fs v0.2.0-alpha.6 [INFO] [stderr] Compiling tokio-net v0.2.0-alpha.6 [INFO] [stderr] Compiling tokio v0.2.0-alpha.6 [INFO] [stderr] Compiling tlslib v0.1.0 (/opt/rustwide/workdir/lib) [INFO] [stdout] warning: unused imports: `BigInt`, `Sign` [INFO] [stdout] --> lib/src/client.rs:10:18 [INFO] [stdout] | [INFO] [stdout] 10 | use num_bigint::{Sign, BigInt}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:52:18 [INFO] [stdout] | [INFO] [stdout] 52 | let xplusz = (&point.x + &point.z); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:53:19 [INFO] [stdout] | [INFO] [stdout] 53 | let xminusz = (&point.x - &point.z); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> lib/src/hmac.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | if (key.len() > digest_algorithm.block_size()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ReadFromBuffer` [INFO] [stdout] --> lib/src/codec.rs:5:43 [INFO] [stdout] | [INFO] [stdout] 5 | use super::messages::{ParseError, Record, ReadFromBuffer, WriteToBuffer}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WriteToBuffer` [INFO] [stdout] --> lib/src/codec.rs:5:59 [INFO] [stdout] | [INFO] [stdout] 5 | use super::messages::{ParseError, Record, ReadFromBuffer, WriteToBuffer}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ecdhe_public_key` [INFO] [stdout] --> lib/src/client.rs:260:13 [INFO] [stdout] | [INFO] [stdout] 260 | let ecdhe_public_key = dh.generate_public(&self.dh_private.as_ref().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ecdhe_public_key` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sign` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:66:10 [INFO] [stdout] | [INFO] [stdout] 66 | let (sign, bytes) = value.to_bytes_be(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x_sign` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:130:14 [INFO] [stdout] | [INFO] [stdout] 130 | let (x_sign, mut x_bytes) = x.to_bytes_le(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | for i in 0..(32-x_bytes.len()) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sign` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:80:14 [INFO] [stdout] | [INFO] [stdout] 80 | let (sign, bytes) = value.to_bytes_be(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x_sign` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:111:14 [INFO] [stdout] | [INFO] [stdout] 111 | let (x_sign, x_bytes) = p.x.to_bytes_be(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | for i in 0..(self.bytes - x_bytes.len()) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_sign` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:116:14 [INFO] [stdout] | [INFO] [stdout] 116 | let (y_sign, y_bytes) = p.y.to_bytes_be(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:117:13 [INFO] [stdout] | [INFO] [stdout] 117 | for i in 0..(self.bytes - y_bytes.len()) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> lib/src/aes.rs:279:9 [INFO] [stdout] | [INFO] [stdout] 279 | let state: [u8;16] = data.try_into().unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_schedule` [INFO] [stdout] --> lib/src/aes.rs:276:44 [INFO] [stdout] | [INFO] [stdout] 276 | fn encrypt(data: &[u8], output: &mut [u8], key_schedule: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_schedule` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> lib/src/gcm.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | let result = vec![0u8;128]; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:662:25 [INFO] [stdout] | [INFO] [stdout] 662 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buffer` [INFO] [stdout] --> lib/src/messages.rs:662:47 [INFO] [stdout] | [INFO] [stdout] 662 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:682:25 [INFO] [stdout] | [INFO] [stdout] 682 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:922:25 [INFO] [stdout] | [INFO] [stdout] 922 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:936:25 [INFO] [stdout] | [INFO] [stdout] 936 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `message_type` [INFO] [stdout] --> lib/src/codec.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | let message_type = cursor.get_u8(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> lib/src/hmac.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | let mut final_key: Vec; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot borrow `*src` as mutable because it is also borrowed as immutable [INFO] [stdout] --> lib/src/codec.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut record_parse_cursor = BytesCursor::from_bytes_mut(src).slice(0, end_position.try_into().unwrap()); [INFO] [stdout] | --- immutable borrow occurs here [INFO] [stdout] 35 | let parsed = Record::read_from_buffer(&mut record_parse_cursor)?; [INFO] [stdout] 36 | src.advance(record_parse_cursor.pos); [INFO] [stdout] | ^^^ ----------------------- immutable borrow later used here [INFO] [stdout] | | [INFO] [stdout] | mutable borrow occurs here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default [INFO] [stdout] = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future [INFO] [stdout] = note: for more information, see issue #59159 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `cookie` [INFO] [stdout] --> lib/src/client.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | cookie: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `TlsState` [INFO] [stdout] --> lib/src/client.rs:128:6 [INFO] [stdout] | [INFO] [stdout] 128 | enum TlsState { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> lib/src/client.rs:153:8 [INFO] [stdout] | [INFO] [stdout] 153 | fn new() -> TlsSecrets { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `zero` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 122 | fn zero() -> Point { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `SBOX` [INFO] [stdout] --> lib/src/aes.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | / static SBOX: [u8;256] = [ [INFO] [stdout] 4 | | 0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5, 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76, [INFO] [stdout] 5 | | 0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0, 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0, [INFO] [stdout] 6 | | 0xb7, 0xfd, 0x93, 0x26, 0x36, 0x3f, 0xf7, 0xcc, 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15, [INFO] [stdout] ... | [INFO] [stdout] 19 | | 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68, 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16, [INFO] [stdout] 20 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `INV_SBOX` [INFO] [stdout] --> lib/src/aes.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | / static INV_SBOX: [u8;256] = [ [INFO] [stdout] 23 | | 0x52, 0x09, 0x6a, 0xd5, 0x30, 0x36, 0xa5, 0x38, 0xbf, 0x40, 0xa3, 0x9e, 0x81, 0xf3, 0xd7, 0xfb, [INFO] [stdout] 24 | | 0x7c, 0xe3, 0x39, 0x82, 0x9b, 0x2f, 0xff, 0x87, 0x34, 0x8e, 0x43, 0x44, 0xc4, 0xde, 0xe9, 0xcb, [INFO] [stdout] 25 | | 0x54, 0x7b, 0x94, 0x32, 0xa6, 0xc2, 0x23, 0x3d, 0xee, 0x4c, 0x95, 0x0b, 0x42, 0xfa, 0xc3, 0x4e, [INFO] [stdout] ... | [INFO] [stdout] 38 | | 0x17, 0x2b, 0x04, 0x7e, 0xba, 0x77, 0xd6, 0x26, 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d, [INFO] [stdout] 39 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `RCON` [INFO] [stdout] --> lib/src/aes.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | / static RCON: [u8;11] = [ [INFO] [stdout] 42 | | 0x00, //unused [INFO] [stdout] 43 | | 0x01, [INFO] [stdout] 44 | | 0x02, [INFO] [stdout] ... | [INFO] [stdout] 52 | | 0x36, [INFO] [stdout] 53 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `aes128` [INFO] [stdout] --> lib/src/aes.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn aes128(key: &[u8]) -> Aes { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `aes196` [INFO] [stdout] --> lib/src/aes.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn aes196(key: &[u8]) -> Aes { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `aes256` [INFO] [stdout] --> lib/src/aes.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn aes256(key: &[u8]) -> Aes { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add_round_key` [INFO] [stdout] --> lib/src/aes.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 90 | fn add_round_key(&self, state: &mut [u8;16], offset: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `cipher` [INFO] [stdout] --> lib/src/aes.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn cipher(&self, input: &[u8], output: &mut [u8]) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `inv_cipher` [INFO] [stdout] --> lib/src/aes.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 115 | pub fn inv_cipher(&self, input: &[u8], output: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `inv_sub_bytes` [INFO] [stdout] --> lib/src/aes.rs:136:4 [INFO] [stdout] | [INFO] [stdout] 136 | fn inv_sub_bytes(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sub_bytes` [INFO] [stdout] --> lib/src/aes.rs:142:4 [INFO] [stdout] | [INFO] [stdout] 142 | fn sub_bytes(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `inv_shift_rows` [INFO] [stdout] --> lib/src/aes.rs:148:4 [INFO] [stdout] | [INFO] [stdout] 148 | fn inv_shift_rows(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `shift_rows` [INFO] [stdout] --> lib/src/aes.rs:167:4 [INFO] [stdout] | [INFO] [stdout] 167 | fn shift_rows(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `inv_mix_column` [INFO] [stdout] --> lib/src/aes.rs:186:4 [INFO] [stdout] | [INFO] [stdout] 186 | fn inv_mix_column(state: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `inv_mix_columns` [INFO] [stdout] --> lib/src/aes.rs:195:4 [INFO] [stdout] | [INFO] [stdout] 195 | fn inv_mix_columns(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mix_column` [INFO] [stdout] --> lib/src/aes.rs:202:4 [INFO] [stdout] | [INFO] [stdout] 202 | fn mix_column(state: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mix_columns` [INFO] [stdout] --> lib/src/aes.rs:211:4 [INFO] [stdout] | [INFO] [stdout] 211 | fn mix_columns(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mul` [INFO] [stdout] --> lib/src/aes.rs:218:4 [INFO] [stdout] | [INFO] [stdout] 218 | fn mul(num: u8, mut multiplier: u8) -> u8{ [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `xtime` [INFO] [stdout] --> lib/src/aes.rs:231:4 [INFO] [stdout] | [INFO] [stdout] 231 | fn xtime(num: u8) -> u8 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sub_word` [INFO] [stdout] --> lib/src/aes.rs:240:4 [INFO] [stdout] | [INFO] [stdout] 240 | fn sub_word(word: &mut [u8;4]) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rot_word` [INFO] [stdout] --> lib/src/aes.rs:248:4 [INFO] [stdout] | [INFO] [stdout] 248 | fn rot_word(word: &mut [u8;4]) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `expand_key` [INFO] [stdout] --> lib/src/aes.rs:256:4 [INFO] [stdout] | [INFO] [stdout] 256 | fn expand_key(key: &[u8], expanded_size: usize, key_words: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `encrypt` [INFO] [stdout] --> lib/src/aes.rs:276:4 [INFO] [stdout] | [INFO] [stdout] 276 | fn encrypt(data: &[u8], output: &mut [u8], key_schedule: &[u8]) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `R` [INFO] [stdout] --> lib/src/gcm.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const R: [u8; 16] = [0xe1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `shift_right` [INFO] [stdout] --> lib/src/gcm.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn shift_right(num: [u8;16]) -> [u8;16] { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bit_set` [INFO] [stdout] --> lib/src/gcm.rs:18:4 [INFO] [stdout] | [INFO] [stdout] 18 | fn bit_set(num: [u8;16], bit: usize) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `xor` [INFO] [stdout] --> lib/src/gcm.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn xor(a: [u8;16], b: [u8;16]) -> [u8;16] { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `multiply` [INFO] [stdout] --> lib/src/gcm.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | fn multiply(x: [u8;16], y: [u8;16]) -> [u8;16] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `incr` [INFO] [stdout] --> lib/src/gcm.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | fn incr(number: [u8;16]) -> [u8;16] { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `GHash` [INFO] [stdout] --> lib/src/gcm.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 69 | struct GHash { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> lib/src/gcm.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | fn new(key: [u8;16]) -> GHash { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `perform_round` [INFO] [stdout] --> lib/src/gcm.rs:87:8 [INFO] [stdout] | [INFO] [stdout] 87 | fn perform_round(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `update` [INFO] [stdout] --> lib/src/gcm.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 94 | fn update(&mut self, update_buf: &[u8]) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `finalize` [INFO] [stdout] --> lib/src/gcm.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | fn finalize(&self) -> [u8;16] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Gctr` [INFO] [stdout] --> lib/src/gcm.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 117 | struct Gctr { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> lib/src/gcm.rs:128:8 [INFO] [stdout] | [INFO] [stdout] 128 | fn new(initial_counter: [u8;16], aes: Aes) -> Gctr { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `perform_round` [INFO] [stdout] --> lib/src/gcm.rs:139:8 [INFO] [stdout] | [INFO] [stdout] 139 | fn perform_round(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `update` [INFO] [stdout] --> lib/src/gcm.rs:150:8 [INFO] [stdout] | [INFO] [stdout] 150 | fn update(&mut self, update_buf: &[u8]) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `finalize` [INFO] [stdout] --> lib/src/gcm.rs:165:8 [INFO] [stdout] | [INFO] [stdout] 165 | fn finalize(mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gctr` [INFO] [stdout] --> lib/src/gcm.rs:176:4 [INFO] [stdout] | [INFO] [stdout] 176 | fn gctr(initial_counter: [u8;16], aes: Aes, data: &[u8]) -> Vec { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `ghash` [INFO] [stdout] --> lib/src/gcm.rs:182:4 [INFO] [stdout] | [INFO] [stdout] 182 | fn ghash(key: [u8;16], data: &[u8]) -> [u8;16] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gcm_decrypt` [INFO] [stdout] --> lib/src/gcm.rs:188:4 [INFO] [stdout] | [INFO] [stdout] 188 | fn gcm_decrypt(iv: &[u8], aes: Aes, authenticated_data: &[u8], ciphertext: &[u8], tag: &[u8]) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gcm` [INFO] [stdout] --> lib/src/gcm.rs:220:4 [INFO] [stdout] | [INFO] [stdout] 220 | fn gcm(iv: &[u8], aes: Aes, authenticated_data: &[u8], plaintext: &[u8]) -> AeadResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Aes128` [INFO] [stdout] --> lib/src/gcm.rs:253:5 [INFO] [stdout] | [INFO] [stdout] 253 | Aes128, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Aes256` [INFO] [stdout] --> lib/src/gcm.rs:254:5 [INFO] [stdout] | [INFO] [stdout] 254 | Aes256, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `key_length` [INFO] [stdout] --> lib/src/gcm.rs:258:8 [INFO] [stdout] | [INFO] [stdout] 258 | fn key_length(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `iv_length` [INFO] [stdout] --> lib/src/gcm.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 265 | fn iv_length(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `aead` [INFO] [stdout] --> lib/src/gcm.rs:269:12 [INFO] [stdout] | [INFO] [stdout] 269 | pub fn aead(&self, iv: &[u8], key: &[u8], authenticated_data: &[u8], plaintext: &[u8]) -> AeadResult { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `aead` [INFO] [stdout] --> lib/src/cipher_suite.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn aead(&self, iv: &[u8], key: &[u8], authenticated_data: &[u8], plaintext: &[u8]) -> AeadResult { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Invalid` [INFO] [stdout] --> lib/src/messages.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | Invalid, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `ChangeCipherSpec` [INFO] [stdout] --> lib/src/messages.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | ChangeCipherSpec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Alert` [INFO] [stdout] --> lib/src/messages.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | Alert, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `ApplicationData` [INFO] [stdout] --> lib/src/messages.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | ApplicationData, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `to_bytes` [INFO] [stdout] --> lib/src/messages.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub fn to_bytes(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NewSessionTicket` [INFO] [stdout] --> lib/src/messages.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 107 | NewSessionTicket(NewSessionTicket), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EndOfEarlyData` [INFO] [stdout] --> lib/src/messages.rs:108:5 [INFO] [stdout] | [INFO] [stdout] 108 | EndOfEarlyData(EndOfEarlyData), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `CertificateRequest` [INFO] [stdout] --> lib/src/messages.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | CertificateRequest(CertificateRequest), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `KeyUpdate` [INFO] [stdout] --> lib/src/messages.rs:114:5 [INFO] [stdout] | [INFO] [stdout] 114 | KeyUpdate(KeyUpdate), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MessageHash` [INFO] [stdout] --> lib/src/messages.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | MessageHash(MessageHash), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `ClientHello` [INFO] [stdout] --> lib/src/messages.rs:517:5 [INFO] [stdout] | [INFO] [stdout] 517 | ClientHello, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Cookie` [INFO] [stdout] --> lib/src/messages.rs:529:5 [INFO] [stdout] | [INFO] [stdout] 529 | Cookie(Cookie), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `PskKe` [INFO] [stdout] --> lib/src/messages.rs:875:5 [INFO] [stdout] | [INFO] [stdout] 875 | PskKe, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `PskDheKe` [INFO] [stdout] --> lib/src/messages.rs:876:5 [INFO] [stdout] | [INFO] [stdout] 876 | PskDheKe, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `try_from_u8` [INFO] [stdout] --> lib/src/messages.rs:887:8 [INFO] [stdout] | [INFO] [stdout] 887 | fn try_from_u8(num: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `RsaPkcs1Sha1` [INFO] [stdout] --> lib/src/signature.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | RsaPkcs1Sha1, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EcdsaSha1` [INFO] [stdout] --> lib/src/signature.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | EcdsaSha1, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 96 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling testexe v0.1.0 (/opt/rustwide/workdir/testexe) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 37s [INFO] running `Command { std: "docker" "inspect" "11a4d378b099732e2809d1daa04b4807d93b722116c6fad42c63e52d7c1f526a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "11a4d378b099732e2809d1daa04b4807d93b722116c6fad42c63e52d7c1f526a", kill_on_drop: false }` [INFO] [stdout] 11a4d378b099732e2809d1daa04b4807d93b722116c6fad42c63e52d7c1f526a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-115/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-115/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=warn" "-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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7c69fb47e221a6e24add9961ef24d7eba30a2b3727c07857783d702e97a7a9b7 [INFO] running `Command { std: "docker" "start" "-a" "7c69fb47e221a6e24add9961ef24d7eba30a2b3727c07857783d702e97a7a9b7", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stdout] warning: unused imports: `BigInt`, `Sign` [INFO] [stdout] --> lib/src/client.rs:10:18 [INFO] [stdout] | [INFO] [stdout] 10 | use num_bigint::{Sign, BigInt}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:52:18 [INFO] [stdout] | [INFO] [stdout] 52 | let xplusz = (&point.x + &point.z); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:53:19 [INFO] [stdout] | [INFO] [stdout] 53 | let xminusz = (&point.x - &point.z); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> lib/src/hmac.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | if (key.len() > digest_algorithm.block_size()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ReadFromBuffer` [INFO] [stdout] --> lib/src/codec.rs:5:43 [INFO] [stdout] | [INFO] [stdout] 5 | use super::messages::{ParseError, Record, ReadFromBuffer, WriteToBuffer}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WriteToBuffer` [INFO] [stdout] --> lib/src/codec.rs:5:59 [INFO] [stdout] | [INFO] [stdout] 5 | use super::messages::{ParseError, Record, ReadFromBuffer, WriteToBuffer}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ecdhe_public_key` [INFO] [stdout] --> lib/src/client.rs:260:13 [INFO] [stdout] | [INFO] [stdout] 260 | let ecdhe_public_key = dh.generate_public(&self.dh_private.as_ref().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ecdhe_public_key` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sign` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:66:10 [INFO] [stdout] | [INFO] [stdout] 66 | let (sign, bytes) = value.to_bytes_be(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x_sign` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:130:14 [INFO] [stdout] | [INFO] [stdout] 130 | let (x_sign, mut x_bytes) = x.to_bytes_le(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | for i in 0..(32-x_bytes.len()) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sign` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:80:14 [INFO] [stdout] | [INFO] [stdout] 80 | let (sign, bytes) = value.to_bytes_be(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x_sign` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:111:14 [INFO] [stdout] | [INFO] [stdout] 111 | let (x_sign, x_bytes) = p.x.to_bytes_be(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | for i in 0..(self.bytes - x_bytes.len()) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_sign` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:116:14 [INFO] [stdout] | [INFO] [stdout] 116 | let (y_sign, y_bytes) = p.y.to_bytes_be(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:117:13 [INFO] [stdout] | [INFO] [stdout] 117 | for i in 0..(self.bytes - y_bytes.len()) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> lib/src/aes.rs:279:9 [INFO] [stdout] | [INFO] [stdout] 279 | let state: [u8;16] = data.try_into().unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_schedule` [INFO] [stdout] --> lib/src/aes.rs:276:44 [INFO] [stdout] | [INFO] [stdout] 276 | fn encrypt(data: &[u8], output: &mut [u8], key_schedule: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_schedule` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> lib/src/gcm.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | let result = vec![0u8;128]; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:662:25 [INFO] [stdout] | [INFO] [stdout] 662 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buffer` [INFO] [stdout] --> lib/src/messages.rs:662:47 [INFO] [stdout] | [INFO] [stdout] 662 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:682:25 [INFO] [stdout] | [INFO] [stdout] 682 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:922:25 [INFO] [stdout] | [INFO] [stdout] 922 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:936:25 [INFO] [stdout] | [INFO] [stdout] 936 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `message_type` [INFO] [stdout] --> lib/src/codec.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | let message_type = cursor.get_u8(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> lib/src/hmac.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | let mut final_key: Vec; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot borrow `*src` as mutable because it is also borrowed as immutable [INFO] [stdout] --> lib/src/codec.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut record_parse_cursor = BytesCursor::from_bytes_mut(src).slice(0, end_position.try_into().unwrap()); [INFO] [stdout] | --- immutable borrow occurs here [INFO] [stdout] 35 | let parsed = Record::read_from_buffer(&mut record_parse_cursor)?; [INFO] [stdout] 36 | src.advance(record_parse_cursor.pos); [INFO] [stdout] | ^^^ ----------------------- immutable borrow later used here [INFO] [stdout] | | [INFO] [stdout] | mutable borrow occurs here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default [INFO] [stdout] = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future [INFO] [stdout] = note: for more information, see issue #59159 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `cookie` [INFO] [stdout] --> lib/src/client.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | cookie: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `TlsState` [INFO] [stdout] --> lib/src/client.rs:128:6 [INFO] [stdout] | [INFO] [stdout] 128 | enum TlsState { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> lib/src/client.rs:153:8 [INFO] [stdout] | [INFO] [stdout] 153 | fn new() -> TlsSecrets { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `zero` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 122 | fn zero() -> Point { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `SBOX` [INFO] [stdout] --> lib/src/aes.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | / static SBOX: [u8;256] = [ [INFO] [stdout] 4 | | 0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5, 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76, [INFO] [stdout] 5 | | 0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0, 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0, [INFO] [stdout] 6 | | 0xb7, 0xfd, 0x93, 0x26, 0x36, 0x3f, 0xf7, 0xcc, 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15, [INFO] [stdout] ... | [INFO] [stdout] 19 | | 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68, 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16, [INFO] [stdout] 20 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `INV_SBOX` [INFO] [stdout] --> lib/src/aes.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | / static INV_SBOX: [u8;256] = [ [INFO] [stdout] 23 | | 0x52, 0x09, 0x6a, 0xd5, 0x30, 0x36, 0xa5, 0x38, 0xbf, 0x40, 0xa3, 0x9e, 0x81, 0xf3, 0xd7, 0xfb, [INFO] [stdout] 24 | | 0x7c, 0xe3, 0x39, 0x82, 0x9b, 0x2f, 0xff, 0x87, 0x34, 0x8e, 0x43, 0x44, 0xc4, 0xde, 0xe9, 0xcb, [INFO] [stdout] 25 | | 0x54, 0x7b, 0x94, 0x32, 0xa6, 0xc2, 0x23, 0x3d, 0xee, 0x4c, 0x95, 0x0b, 0x42, 0xfa, 0xc3, 0x4e, [INFO] [stdout] ... | [INFO] [stdout] 38 | | 0x17, 0x2b, 0x04, 0x7e, 0xba, 0x77, 0xd6, 0x26, 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d, [INFO] [stdout] 39 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `RCON` [INFO] [stdout] --> lib/src/aes.rs:41:1 [INFO] [stdout] | [INFO] [stdout] 41 | / static RCON: [u8;11] = [ [INFO] [stdout] 42 | | 0x00, //unused [INFO] [stdout] 43 | | 0x01, [INFO] [stdout] 44 | | 0x02, [INFO] [stdout] ... | [INFO] [stdout] 52 | | 0x36, [INFO] [stdout] 53 | | ]; [INFO] [stdout] | |__^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `aes128` [INFO] [stdout] --> lib/src/aes.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn aes128(key: &[u8]) -> Aes { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `aes196` [INFO] [stdout] --> lib/src/aes.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn aes196(key: &[u8]) -> Aes { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `aes256` [INFO] [stdout] --> lib/src/aes.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn aes256(key: &[u8]) -> Aes { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `add_round_key` [INFO] [stdout] --> lib/src/aes.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 90 | fn add_round_key(&self, state: &mut [u8;16], offset: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `cipher` [INFO] [stdout] --> lib/src/aes.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 96 | pub fn cipher(&self, input: &[u8], output: &mut [u8]) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `inv_cipher` [INFO] [stdout] --> lib/src/aes.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 115 | pub fn inv_cipher(&self, input: &[u8], output: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `inv_sub_bytes` [INFO] [stdout] --> lib/src/aes.rs:136:4 [INFO] [stdout] | [INFO] [stdout] 136 | fn inv_sub_bytes(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sub_bytes` [INFO] [stdout] --> lib/src/aes.rs:142:4 [INFO] [stdout] | [INFO] [stdout] 142 | fn sub_bytes(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `inv_shift_rows` [INFO] [stdout] --> lib/src/aes.rs:148:4 [INFO] [stdout] | [INFO] [stdout] 148 | fn inv_shift_rows(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `shift_rows` [INFO] [stdout] --> lib/src/aes.rs:167:4 [INFO] [stdout] | [INFO] [stdout] 167 | fn shift_rows(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `inv_mix_column` [INFO] [stdout] --> lib/src/aes.rs:186:4 [INFO] [stdout] | [INFO] [stdout] 186 | fn inv_mix_column(state: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `inv_mix_columns` [INFO] [stdout] --> lib/src/aes.rs:195:4 [INFO] [stdout] | [INFO] [stdout] 195 | fn inv_mix_columns(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mix_column` [INFO] [stdout] --> lib/src/aes.rs:202:4 [INFO] [stdout] | [INFO] [stdout] 202 | fn mix_column(state: &mut [u8]) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mix_columns` [INFO] [stdout] --> lib/src/aes.rs:211:4 [INFO] [stdout] | [INFO] [stdout] 211 | fn mix_columns(state: &mut [u8;16]) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `mul` [INFO] [stdout] --> lib/src/aes.rs:218:4 [INFO] [stdout] | [INFO] [stdout] 218 | fn mul(num: u8, mut multiplier: u8) -> u8{ [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `xtime` [INFO] [stdout] --> lib/src/aes.rs:231:4 [INFO] [stdout] | [INFO] [stdout] 231 | fn xtime(num: u8) -> u8 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sub_word` [INFO] [stdout] --> lib/src/aes.rs:240:4 [INFO] [stdout] | [INFO] [stdout] 240 | fn sub_word(word: &mut [u8;4]) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rot_word` [INFO] [stdout] --> lib/src/aes.rs:248:4 [INFO] [stdout] | [INFO] [stdout] 248 | fn rot_word(word: &mut [u8;4]) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `expand_key` [INFO] [stdout] --> lib/src/aes.rs:256:4 [INFO] [stdout] | [INFO] [stdout] 256 | fn expand_key(key: &[u8], expanded_size: usize, key_words: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `encrypt` [INFO] [stdout] --> lib/src/aes.rs:276:4 [INFO] [stdout] | [INFO] [stdout] 276 | fn encrypt(data: &[u8], output: &mut [u8], key_schedule: &[u8]) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `R` [INFO] [stdout] --> lib/src/gcm.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const R: [u8; 16] = [0xe1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `shift_right` [INFO] [stdout] --> lib/src/gcm.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn shift_right(num: [u8;16]) -> [u8;16] { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bit_set` [INFO] [stdout] --> lib/src/gcm.rs:18:4 [INFO] [stdout] | [INFO] [stdout] 18 | fn bit_set(num: [u8;16], bit: usize) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `xor` [INFO] [stdout] --> lib/src/gcm.rs:25:4 [INFO] [stdout] | [INFO] [stdout] 25 | fn xor(a: [u8;16], b: [u8;16]) -> [u8;16] { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `multiply` [INFO] [stdout] --> lib/src/gcm.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | fn multiply(x: [u8;16], y: [u8;16]) -> [u8;16] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `incr` [INFO] [stdout] --> lib/src/gcm.rs:56:4 [INFO] [stdout] | [INFO] [stdout] 56 | fn incr(number: [u8;16]) -> [u8;16] { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `GHash` [INFO] [stdout] --> lib/src/gcm.rs:69:8 [INFO] [stdout] | [INFO] [stdout] 69 | struct GHash { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> lib/src/gcm.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | fn new(key: [u8;16]) -> GHash { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `perform_round` [INFO] [stdout] --> lib/src/gcm.rs:87:8 [INFO] [stdout] | [INFO] [stdout] 87 | fn perform_round(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `update` [INFO] [stdout] --> lib/src/gcm.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 94 | fn update(&mut self, update_buf: &[u8]) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `finalize` [INFO] [stdout] --> lib/src/gcm.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | fn finalize(&self) -> [u8;16] { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Gctr` [INFO] [stdout] --> lib/src/gcm.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 117 | struct Gctr { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> lib/src/gcm.rs:128:8 [INFO] [stdout] | [INFO] [stdout] 128 | fn new(initial_counter: [u8;16], aes: Aes) -> Gctr { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `perform_round` [INFO] [stdout] --> lib/src/gcm.rs:139:8 [INFO] [stdout] | [INFO] [stdout] 139 | fn perform_round(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `update` [INFO] [stdout] --> lib/src/gcm.rs:150:8 [INFO] [stdout] | [INFO] [stdout] 150 | fn update(&mut self, update_buf: &[u8]) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `finalize` [INFO] [stdout] --> lib/src/gcm.rs:165:8 [INFO] [stdout] | [INFO] [stdout] 165 | fn finalize(mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gctr` [INFO] [stdout] --> lib/src/gcm.rs:176:4 [INFO] [stdout] | [INFO] [stdout] 176 | fn gctr(initial_counter: [u8;16], aes: Aes, data: &[u8]) -> Vec { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `ghash` [INFO] [stdout] --> lib/src/gcm.rs:182:4 [INFO] [stdout] | [INFO] [stdout] 182 | fn ghash(key: [u8;16], data: &[u8]) -> [u8;16] { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gcm_decrypt` [INFO] [stdout] --> lib/src/gcm.rs:188:4 [INFO] [stdout] | [INFO] [stdout] 188 | fn gcm_decrypt(iv: &[u8], aes: Aes, authenticated_data: &[u8], ciphertext: &[u8], tag: &[u8]) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gcm` [INFO] [stdout] --> lib/src/gcm.rs:220:4 [INFO] [stdout] | [INFO] [stdout] 220 | fn gcm(iv: &[u8], aes: Aes, authenticated_data: &[u8], plaintext: &[u8]) -> AeadResult { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Aes128` [INFO] [stdout] --> lib/src/gcm.rs:253:5 [INFO] [stdout] | [INFO] [stdout] 253 | Aes128, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Aes256` [INFO] [stdout] --> lib/src/gcm.rs:254:5 [INFO] [stdout] | [INFO] [stdout] 254 | Aes256, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `key_length` [INFO] [stdout] --> lib/src/gcm.rs:258:8 [INFO] [stdout] | [INFO] [stdout] 258 | fn key_length(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `iv_length` [INFO] [stdout] --> lib/src/gcm.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 265 | fn iv_length(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `aead` [INFO] [stdout] --> lib/src/gcm.rs:269:12 [INFO] [stdout] | [INFO] [stdout] 269 | pub fn aead(&self, iv: &[u8], key: &[u8], authenticated_data: &[u8], plaintext: &[u8]) -> AeadResult { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `aead` [INFO] [stdout] --> lib/src/cipher_suite.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn aead(&self, iv: &[u8], key: &[u8], authenticated_data: &[u8], plaintext: &[u8]) -> AeadResult { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Invalid` [INFO] [stdout] --> lib/src/messages.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | Invalid, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `ChangeCipherSpec` [INFO] [stdout] --> lib/src/messages.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | ChangeCipherSpec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Alert` [INFO] [stdout] --> lib/src/messages.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | Alert, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `ApplicationData` [INFO] [stdout] --> lib/src/messages.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | ApplicationData, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `to_bytes` [INFO] [stdout] --> lib/src/messages.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 39 | pub fn to_bytes(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NewSessionTicket` [INFO] [stdout] --> lib/src/messages.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 107 | NewSessionTicket(NewSessionTicket), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EndOfEarlyData` [INFO] [stdout] --> lib/src/messages.rs:108:5 [INFO] [stdout] | [INFO] [stdout] 108 | EndOfEarlyData(EndOfEarlyData), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `CertificateRequest` [INFO] [stdout] --> lib/src/messages.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | CertificateRequest(CertificateRequest), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `KeyUpdate` [INFO] [stdout] --> lib/src/messages.rs:114:5 [INFO] [stdout] | [INFO] [stdout] 114 | KeyUpdate(KeyUpdate), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MessageHash` [INFO] [stdout] --> lib/src/messages.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | MessageHash(MessageHash), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `ClientHello` [INFO] [stdout] --> lib/src/messages.rs:517:5 [INFO] [stdout] | [INFO] [stdout] 517 | ClientHello, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Cookie` [INFO] [stdout] --> lib/src/messages.rs:529:5 [INFO] [stdout] | [INFO] [stdout] 529 | Cookie(Cookie), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `PskKe` [INFO] [stdout] --> lib/src/messages.rs:875:5 [INFO] [stdout] | [INFO] [stdout] 875 | PskKe, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `PskDheKe` [INFO] [stdout] --> lib/src/messages.rs:876:5 [INFO] [stdout] | [INFO] [stdout] 876 | PskDheKe, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `try_from_u8` [INFO] [stdout] --> lib/src/messages.rs:887:8 [INFO] [stdout] | [INFO] [stdout] 887 | fn try_from_u8(num: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling tlslib v0.1.0 (/opt/rustwide/workdir/lib) [INFO] [stdout] warning: variant is never constructed: `RsaPkcs1Sha1` [INFO] [stdout] --> lib/src/signature.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | RsaPkcs1Sha1, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EcdsaSha1` [INFO] [stdout] --> lib/src/signature.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | EcdsaSha1, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 96 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling testexe v0.1.0 (/opt/rustwide/workdir/testexe) [INFO] [stdout] warning: unused imports: `BigInt`, `Sign` [INFO] [stdout] --> lib/src/client.rs:10:18 [INFO] [stdout] | [INFO] [stdout] 10 | use num_bigint::{Sign, BigInt}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Buf` [INFO] [stdout] --> lib/src/client.rs:444:17 [INFO] [stdout] | [INFO] [stdout] 444 | use bytes::{Buf, BufMut}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:52:18 [INFO] [stdout] | [INFO] [stdout] 52 | let xplusz = (&point.x + &point.z); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:53:19 [INFO] [stdout] | [INFO] [stdout] 53 | let xminusz = (&point.x - &point.z); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `BigInt` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:193:22 [INFO] [stdout] | [INFO] [stdout] 193 | use num_bigint::{BigInt}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Point`, `multiplicative_inverse` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:194:17 [INFO] [stdout] | [INFO] [stdout] 194 | use super::{multiplicative_inverse, Point, curve25519}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> lib/src/hmac.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 31 | if (key.len() > digest_algorithm.block_size()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ReadFromBuffer` [INFO] [stdout] --> lib/src/codec.rs:5:43 [INFO] [stdout] | [INFO] [stdout] 5 | use super::messages::{ParseError, Record, ReadFromBuffer, WriteToBuffer}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WriteToBuffer` [INFO] [stdout] --> lib/src/codec.rs:5:59 [INFO] [stdout] | [INFO] [stdout] 5 | use super::messages::{ParseError, Record, ReadFromBuffer, WriteToBuffer}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ecdhe_public_key` [INFO] [stdout] --> lib/src/client.rs:260:13 [INFO] [stdout] | [INFO] [stdout] 260 | let ecdhe_public_key = dh.generate_public(&self.dh_private.as_ref().unwrap()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ecdhe_public_key` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `random_gen` [INFO] [stdout] --> lib/src/client.rs:537:13 [INFO] [stdout] | [INFO] [stdout] 537 | let random_gen = Box::new(MockTlsGenerator {}); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_random_gen` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `test` [INFO] [stdout] --> lib/src/client.rs:669:13 [INFO] [stdout] | [INFO] [stdout] 669 | let test = client.as_ptr(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_test` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cx` [INFO] [stdout] --> lib/src/client.rs:469:45 [INFO] [stdout] | [INFO] [stdout] 469 | fn poll_ready(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cx` [INFO] [stdout] --> lib/src/client.rs:477:45 [INFO] [stdout] | [INFO] [stdout] 477 | fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cx` [INFO] [stdout] --> lib/src/client.rs:481:45 [INFO] [stdout] | [INFO] [stdout] 481 | fn poll_close(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sign` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:66:10 [INFO] [stdout] | [INFO] [stdout] 66 | let (sign, bytes) = value.to_bytes_be(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x_sign` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:130:14 [INFO] [stdout] | [INFO] [stdout] 130 | let (x_sign, mut x_bytes) = x.to_bytes_le(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | for i in 0..(32-x_bytes.len()) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sign` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:80:14 [INFO] [stdout] | [INFO] [stdout] 80 | let (sign, bytes) = value.to_bytes_be(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x_sign` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:111:14 [INFO] [stdout] | [INFO] [stdout] 111 | let (x_sign, x_bytes) = p.x.to_bytes_be(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | for i in 0..(self.bytes - x_bytes.len()) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y_sign` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:116:14 [INFO] [stdout] | [INFO] [stdout] 116 | let (y_sign, y_bytes) = p.y.to_bytes_be(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_sign` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:117:13 [INFO] [stdout] | [INFO] [stdout] 117 | for i in 0..(self.bytes - y_bytes.len()) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inverse` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:214:13 [INFO] [stdout] | [INFO] [stdout] 214 | let inverse = super::multiplicative_inverse(&BigInt::from(3u32), &BigInt::from(19u32)); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inverse` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `new_point` [INFO] [stdout] --> lib/src/eliptic_curve/secp256r1.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | let new_point = curve.add(&a, &b); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_point` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `state` [INFO] [stdout] --> lib/src/aes.rs:279:9 [INFO] [stdout] | [INFO] [stdout] 279 | let state: [u8;16] = data.try_into().unwrap(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `key_schedule` [INFO] [stdout] --> lib/src/aes.rs:276:44 [INFO] [stdout] | [INFO] [stdout] 276 | fn encrypt(data: &[u8], output: &mut [u8], key_schedule: &[u8]) { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_schedule` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> lib/src/gcm.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | let result = vec![0u8;128]; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:662:25 [INFO] [stdout] | [INFO] [stdout] 662 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buffer` [INFO] [stdout] --> lib/src/messages.rs:662:47 [INFO] [stdout] | [INFO] [stdout] 662 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:682:25 [INFO] [stdout] | [INFO] [stdout] 682 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:922:25 [INFO] [stdout] | [INFO] [stdout] 922 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `context` [INFO] [stdout] --> lib/src/messages.rs:936:25 [INFO] [stdout] | [INFO] [stdout] 936 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `message_type` [INFO] [stdout] --> lib/src/codec.rs:24:13 [INFO] [stdout] | [INFO] [stdout] 24 | let message_type = cursor.get_u8(); [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> lib/src/hmac.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | let mut final_key: Vec; [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot borrow `*src` as mutable because it is also borrowed as immutable [INFO] [stdout] --> lib/src/codec.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 34 | let mut record_parse_cursor = BytesCursor::from_bytes_mut(src).slice(0, end_position.try_into().unwrap()); [INFO] [stdout] | --- immutable borrow occurs here [INFO] [stdout] 35 | let parsed = Record::read_from_buffer(&mut record_parse_cursor)?; [INFO] [stdout] 36 | src.advance(record_parse_cursor.pos); [INFO] [stdout] | ^^^ ----------------------- immutable borrow later used here [INFO] [stdout] | | [INFO] [stdout] | mutable borrow occurs here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default [INFO] [stdout] = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future [INFO] [stdout] = note: for more information, see issue #59159 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> lib/src/client.rs:670:9 [INFO] [stdout] | [INFO] [stdout] 670 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `cookie` [INFO] [stdout] --> lib/src/client.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | cookie: Option>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `TlsState` [INFO] [stdout] --> lib/src/client.rs:128:6 [INFO] [stdout] | [INFO] [stdout] 128 | enum TlsState { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> lib/src/client.rs:153:8 [INFO] [stdout] | [INFO] [stdout] 153 | fn new() -> TlsSecrets { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `zero` [INFO] [stdout] --> lib/src/eliptic_curve/curve25519.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 122 | fn zero() -> Point { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `encrypt` [INFO] [stdout] --> lib/src/aes.rs:276:4 [INFO] [stdout] | [INFO] [stdout] 276 | fn encrypt(data: &[u8], output: &mut [u8], key_schedule: &[u8]) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `icb` [INFO] [stdout] --> lib/src/gcm.rs:119:5 [INFO] [stdout] | [INFO] [stdout] 119 | icb: [u8;16], [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `key_length` [INFO] [stdout] --> lib/src/gcm.rs:258:8 [INFO] [stdout] | [INFO] [stdout] 258 | fn key_length(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `iv_length` [INFO] [stdout] --> lib/src/gcm.rs:265:8 [INFO] [stdout] | [INFO] [stdout] 265 | fn iv_length(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Invalid` [INFO] [stdout] --> lib/src/messages.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | Invalid, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `ChangeCipherSpec` [INFO] [stdout] --> lib/src/messages.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | ChangeCipherSpec, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Alert` [INFO] [stdout] --> lib/src/messages.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | Alert, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `ApplicationData` [INFO] [stdout] --> lib/src/messages.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | ApplicationData, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `NewSessionTicket` [INFO] [stdout] --> lib/src/messages.rs:107:5 [INFO] [stdout] | [INFO] [stdout] 107 | NewSessionTicket(NewSessionTicket), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EndOfEarlyData` [INFO] [stdout] --> lib/src/messages.rs:108:5 [INFO] [stdout] | [INFO] [stdout] 108 | EndOfEarlyData(EndOfEarlyData), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `CertificateRequest` [INFO] [stdout] --> lib/src/messages.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | CertificateRequest(CertificateRequest), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `KeyUpdate` [INFO] [stdout] --> lib/src/messages.rs:114:5 [INFO] [stdout] | [INFO] [stdout] 114 | KeyUpdate(KeyUpdate), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MessageHash` [INFO] [stdout] --> lib/src/messages.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 115 | MessageHash(MessageHash), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `ClientHello` [INFO] [stdout] --> lib/src/messages.rs:517:5 [INFO] [stdout] | [INFO] [stdout] 517 | ClientHello, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Cookie` [INFO] [stdout] --> lib/src/messages.rs:529:5 [INFO] [stdout] | [INFO] [stdout] 529 | Cookie(Cookie), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `PskKe` [INFO] [stdout] --> lib/src/messages.rs:875:5 [INFO] [stdout] | [INFO] [stdout] 875 | PskKe, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `try_from_u8` [INFO] [stdout] --> lib/src/messages.rs:887:8 [INFO] [stdout] | [INFO] [stdout] 887 | fn try_from_u8(num: u8) -> Result { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 58 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 4.06s [INFO] running `Command { std: "docker" "inspect" "7c69fb47e221a6e24add9961ef24d7eba30a2b3727c07857783d702e97a7a9b7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7c69fb47e221a6e24add9961ef24d7eba30a2b3727c07857783d702e97a7a9b7", kill_on_drop: false }` [INFO] [stdout] 7c69fb47e221a6e24add9961ef24d7eba30a2b3727c07857783d702e97a7a9b7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-115/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-115/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=warn" "-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:a89201d6b5b9fd45c15d5952ece0a0129e7e80cb26ec023fd59cf09bc26f1604" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-09-08" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 22499ec55be5c3ea64bd2723fff43564393d943c3ed1e8446824d339c83dfb0c [INFO] running `Command { std: "docker" "start" "-a" "22499ec55be5c3ea64bd2723fff43564393d943c3ed1e8446824d339c83dfb0c", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused imports: `BigInt`, `Sign` [INFO] [stderr] --> lib/src/client.rs:10:18 [INFO] [stderr] | [INFO] [stderr] 10 | use num_bigint::{Sign, BigInt}; [INFO] [stdout] [INFO] [stderr] | ^^^^ ^^^^^^ [INFO] [stdout] running 0 tests [INFO] [stderr] | [INFO] [stdout] [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stderr] [INFO] [stdout] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> lib/src/eliptic_curve/curve25519.rs:52:18 [INFO] [stderr] | [INFO] [stderr] 52 | let xplusz = (&point.x + &point.z); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> lib/src/eliptic_curve/curve25519.rs:53:19 [INFO] [stderr] | [INFO] [stderr] 53 | let xminusz = (&point.x - &point.z); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> lib/src/hmac.rs:31:12 [INFO] [stderr] | [INFO] [stderr] 31 | if (key.len() > digest_algorithm.block_size()) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [INFO] [stderr] warning: unused import: `ReadFromBuffer` [INFO] [stderr] --> lib/src/codec.rs:5:43 [INFO] [stderr] | [INFO] [stderr] 5 | use super::messages::{ParseError, Record, ReadFromBuffer, WriteToBuffer}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `WriteToBuffer` [INFO] [stderr] --> lib/src/codec.rs:5:59 [INFO] [stderr] | [INFO] [stderr] 5 | use super::messages::{ParseError, Record, ReadFromBuffer, WriteToBuffer}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ecdhe_public_key` [INFO] [stderr] --> lib/src/client.rs:260:13 [INFO] [stderr] | [INFO] [stderr] 260 | let ecdhe_public_key = dh.generate_public(&self.dh_private.as_ref().unwrap()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ecdhe_public_key` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sign` [INFO] [stderr] --> lib/src/eliptic_curve/curve25519.rs:66:10 [INFO] [stderr] | [INFO] [stderr] 66 | let (sign, bytes) = value.to_bytes_be(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x_sign` [INFO] [stderr] --> lib/src/eliptic_curve/curve25519.rs:130:14 [INFO] [stderr] | [INFO] [stderr] 130 | let (x_sign, mut x_bytes) = x.to_bytes_le(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_sign` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> lib/src/eliptic_curve/curve25519.rs:131:13 [INFO] [stderr] | [INFO] [stderr] 131 | for i in 0..(32-x_bytes.len()) { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sign` [INFO] [stderr] --> lib/src/eliptic_curve/secp256r1.rs:80:14 [INFO] [stderr] | [INFO] [stderr] 80 | let (sign, bytes) = value.to_bytes_be(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_sign` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x_sign` [INFO] [stderr] --> lib/src/eliptic_curve/secp256r1.rs:111:14 [INFO] [stderr] | [INFO] [stderr] 111 | let (x_sign, x_bytes) = p.x.to_bytes_be(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_sign` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> lib/src/eliptic_curve/secp256r1.rs:112:13 [INFO] [stderr] | [INFO] [stderr] 112 | for i in 0..(self.bytes - x_bytes.len()) { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y_sign` [INFO] [stderr] --> lib/src/eliptic_curve/secp256r1.rs:116:14 [INFO] [stderr] | [INFO] [stderr] 116 | let (y_sign, y_bytes) = p.y.to_bytes_be(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_sign` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> lib/src/eliptic_curve/secp256r1.rs:117:13 [INFO] [stderr] | [INFO] [stderr] 117 | for i in 0..(self.bytes - y_bytes.len()) { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `state` [INFO] [stderr] --> lib/src/aes.rs:279:9 [INFO] [stderr] | [INFO] [stderr] 279 | let state: [u8;16] = data.try_into().unwrap(); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_state` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key_schedule` [INFO] [stderr] --> lib/src/aes.rs:276:44 [INFO] [stderr] | [INFO] [stderr] 276 | fn encrypt(data: &[u8], output: &mut [u8], key_schedule: &[u8]) { [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_key_schedule` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `result` [INFO] [stderr] --> lib/src/gcm.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | let result = vec![0u8;128]; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `context` [INFO] [stderr] --> lib/src/messages.rs:662:25 [INFO] [stderr] | [INFO] [stderr] 662 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `buffer` [INFO] [stderr] --> lib/src/messages.rs:662:47 [INFO] [stderr] | [INFO] [stderr] 662 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `context` [INFO] [stderr] --> lib/src/messages.rs:682:25 [INFO] [stderr] | [INFO] [stderr] 682 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `context` [INFO] [stderr] --> lib/src/messages.rs:922:25 [INFO] [stderr] | [INFO] [stderr] 922 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `context` [INFO] [stderr] --> lib/src/messages.rs:936:25 [INFO] [stderr] | [INFO] [stderr] 936 | fn read_from_buffer(context: ReadContext, buffer: &mut BytesCursor) -> Result { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_context` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `message_type` [INFO] [stderr] --> lib/src/codec.rs:24:13 [INFO] [stderr] | [INFO] [stderr] 24 | let message_type = cursor.get_u8(); [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_message_type` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> lib/src/hmac.rs:30:13 [INFO] [stderr] | [INFO] [stderr] 30 | let mut final_key: Vec; [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: cannot borrow `*src` as mutable because it is also borrowed as immutable [INFO] [stderr] --> lib/src/codec.rs:36:9 [INFO] [stderr] | [INFO] [stderr] 34 | let mut record_parse_cursor = BytesCursor::from_bytes_mut(src).slice(0, end_position.try_into().unwrap()); [INFO] [stderr] | --- immutable borrow occurs here [INFO] [stderr] 35 | let parsed = Record::read_from_buffer(&mut record_parse_cursor)?; [INFO] [stderr] 36 | src.advance(record_parse_cursor.pos); [INFO] [stderr] | ^^^ ----------------------- immutable borrow later used here [INFO] [stderr] | | [INFO] [stderr] | mutable borrow occurs here [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default [INFO] [stderr] = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future [INFO] [stderr] = note: for more information, see issue #59159 [INFO] [stderr] [INFO] [stderr] warning: field is never read: `cookie` [INFO] [stderr] --> lib/src/client.rs:119:5 [INFO] [stderr] | [INFO] [stderr] 119 | cookie: Option>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: enum is never used: `TlsState` [INFO] [stderr] --> lib/src/client.rs:128:6 [INFO] [stderr] | [INFO] [stderr] 128 | enum TlsState { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> lib/src/client.rs:153:8 [INFO] [stderr] | [INFO] [stderr] 153 | fn new() -> TlsSecrets { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `zero` [INFO] [stderr] --> lib/src/eliptic_curve/curve25519.rs:122:8 [INFO] [stderr] | [INFO] [stderr] 122 | fn zero() -> Point { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: static is never used: `SBOX` [INFO] [stderr] --> lib/src/aes.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / static SBOX: [u8;256] = [ [INFO] [stderr] 4 | | 0x63, 0x7c, 0x77, 0x7b, 0xf2, 0x6b, 0x6f, 0xc5, 0x30, 0x01, 0x67, 0x2b, 0xfe, 0xd7, 0xab, 0x76, [INFO] [stderr] 5 | | 0xca, 0x82, 0xc9, 0x7d, 0xfa, 0x59, 0x47, 0xf0, 0xad, 0xd4, 0xa2, 0xaf, 0x9c, 0xa4, 0x72, 0xc0, [INFO] [stderr] 6 | | 0xb7, 0xfd, 0x93, 0x26, 0x36, 0x3f, 0xf7, 0xcc, 0x34, 0xa5, 0xe5, 0xf1, 0x71, 0xd8, 0x31, 0x15, [INFO] [stderr] ... | [INFO] [stderr] 19 | | 0x8c, 0xa1, 0x89, 0x0d, 0xbf, 0xe6, 0x42, 0x68, 0x41, 0x99, 0x2d, 0x0f, 0xb0, 0x54, 0xbb, 0x16, [INFO] [stderr] 20 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static is never used: `INV_SBOX` [INFO] [stderr] --> lib/src/aes.rs:22:1 [INFO] [stderr] | [INFO] [stderr] 22 | / static INV_SBOX: [u8;256] = [ [INFO] [stderr] 23 | | 0x52, 0x09, 0x6a, 0xd5, 0x30, 0x36, 0xa5, 0x38, 0xbf, 0x40, 0xa3, 0x9e, 0x81, 0xf3, 0xd7, 0xfb, [INFO] [stderr] 24 | | 0x7c, 0xe3, 0x39, 0x82, 0x9b, 0x2f, 0xff, 0x87, 0x34, 0x8e, 0x43, 0x44, 0xc4, 0xde, 0xe9, 0xcb, [INFO] [stderr] 25 | | 0x54, 0x7b, 0x94, 0x32, 0xa6, 0xc2, 0x23, 0x3d, 0xee, 0x4c, 0x95, 0x0b, 0x42, 0xfa, 0xc3, 0x4e, [INFO] [stderr] ... | [INFO] [stderr] 38 | | 0x17, 0x2b, 0x04, 0x7e, 0xba, 0x77, 0xd6, 0x26, 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d, [INFO] [stderr] 39 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: static is never used: `RCON` [INFO] [stderr] --> lib/src/aes.rs:41:1 [INFO] [stderr] | [INFO] [stderr] 41 | / static RCON: [u8;11] = [ [INFO] [stderr] 42 | | 0x00, //unused [INFO] [stderr] 43 | | 0x01, [INFO] [stderr] 44 | | 0x02, [INFO] [stderr] ... | [INFO] [stderr] 52 | | 0x36, [INFO] [stderr] 53 | | ]; [INFO] [stderr] | |__^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `aes128` [INFO] [stderr] --> lib/src/aes.rs:63:12 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn aes128(key: &[u8]) -> Aes { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `aes196` [INFO] [stderr] --> lib/src/aes.rs:72:12 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn aes196(key: &[u8]) -> Aes { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `aes256` [INFO] [stderr] --> lib/src/aes.rs:81:13 [INFO] [stderr] | [INFO] [stderr] 81 | pub fn aes256(key: &[u8]) -> Aes { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `add_round_key` [INFO] [stderr] --> lib/src/aes.rs:90:8 [INFO] [stderr] | [INFO] [stderr] 90 | fn add_round_key(&self, state: &mut [u8;16], offset: usize) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `cipher` [INFO] [stderr] --> lib/src/aes.rs:96:12 [INFO] [stderr] | [INFO] [stderr] 96 | pub fn cipher(&self, input: &[u8], output: &mut [u8]) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `inv_cipher` [INFO] [stderr] --> lib/src/aes.rs:115:12 [INFO] [stderr] | [INFO] [stderr] 115 | pub fn inv_cipher(&self, input: &[u8], output: &mut [u8]) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `inv_sub_bytes` [INFO] [stderr] --> lib/src/aes.rs:136:4 [INFO] [stderr] | [INFO] [stderr] 136 | fn inv_sub_bytes(state: &mut [u8;16]) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sub_bytes` [INFO] [stderr] --> lib/src/aes.rs:142:4 [INFO] [stderr] | [INFO] [stderr] 142 | fn sub_bytes(state: &mut [u8;16]) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `inv_shift_rows` [INFO] [stderr] --> lib/src/aes.rs:148:4 [INFO] [stderr] | [INFO] [stderr] 148 | fn inv_shift_rows(state: &mut [u8;16]) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `shift_rows` [INFO] [stderr] --> lib/src/aes.rs:167:4 [INFO] [stderr] | [INFO] [stderr] 167 | fn shift_rows(state: &mut [u8;16]) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `inv_mix_column` [INFO] [stderr] --> lib/src/aes.rs:186:4 [INFO] [stderr] | [INFO] [stderr] 186 | fn inv_mix_column(state: &mut [u8]) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `inv_mix_columns` [INFO] [stderr] --> lib/src/aes.rs:195:4 [INFO] [stderr] | [INFO] [stderr] 195 | fn inv_mix_columns(state: &mut [u8;16]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mix_column` [INFO] [stderr] --> lib/src/aes.rs:202:4 [INFO] [stderr] | [INFO] [stderr] 202 | fn mix_column(state: &mut [u8]) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mix_columns` [INFO] [stderr] --> lib/src/aes.rs:211:4 [INFO] [stderr] | [INFO] [stderr] 211 | fn mix_columns(state: &mut [u8;16]) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mul` [INFO] [stderr] --> lib/src/aes.rs:218:4 [INFO] [stderr] | [INFO] [stderr] 218 | fn mul(num: u8, mut multiplier: u8) -> u8{ [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `xtime` [INFO] [stderr] --> lib/src/aes.rs:231:4 [INFO] [stderr] | [INFO] [stderr] 231 | fn xtime(num: u8) -> u8 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sub_word` [INFO] [stderr] --> lib/src/aes.rs:240:4 [INFO] [stderr] | [INFO] [stderr] 240 | fn sub_word(word: &mut [u8;4]) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `rot_word` [INFO] [stderr] --> lib/src/aes.rs:248:4 [INFO] [stderr] | [INFO] [stderr] 248 | fn rot_word(word: &mut [u8;4]) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `expand_key` [INFO] [stderr] --> lib/src/aes.rs:256:4 [INFO] [stderr] | [INFO] [stderr] 256 | fn expand_key(key: &[u8], expanded_size: usize, key_words: usize) -> Vec { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `encrypt` [INFO] [stderr] --> lib/src/aes.rs:276:4 [INFO] [stderr] | [INFO] [stderr] 276 | fn encrypt(data: &[u8], output: &mut [u8], key_schedule: &[u8]) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `R` [INFO] [stderr] --> lib/src/gcm.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | const R: [u8; 16] = [0xe1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `shift_right` [INFO] [stderr] --> lib/src/gcm.rs:8:4 [INFO] [stderr] | [INFO] [stderr] 8 | fn shift_right(num: [u8;16]) -> [u8;16] { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bit_set` [INFO] [stderr] --> lib/src/gcm.rs:18:4 [INFO] [stderr] | [INFO] [stderr] 18 | fn bit_set(num: [u8;16], bit: usize) -> bool { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `xor` [INFO] [stderr] --> lib/src/gcm.rs:25:4 [INFO] [stderr] | [INFO] [stderr] 25 | fn xor(a: [u8;16], b: [u8;16]) -> [u8;16] { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `multiply` [INFO] [stderr] --> lib/src/gcm.rs:33:4 [INFO] [stderr] | [INFO] [stderr] 33 | fn multiply(x: [u8;16], y: [u8;16]) -> [u8;16] { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `incr` [INFO] [stderr] --> lib/src/gcm.rs:56:4 [INFO] [stderr] | [INFO] [stderr] 56 | fn incr(number: [u8;16]) -> [u8;16] { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `GHash` [INFO] [stderr] --> lib/src/gcm.rs:69:8 [INFO] [stderr] | [INFO] [stderr] 69 | struct GHash { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> lib/src/gcm.rs:78:8 [INFO] [stderr] | [INFO] [stderr] 78 | fn new(key: [u8;16]) -> GHash { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `perform_round` [INFO] [stderr] --> lib/src/gcm.rs:87:8 [INFO] [stderr] | [INFO] [stderr] 87 | fn perform_round(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `update` [INFO] [stderr] --> lib/src/gcm.rs:94:9 [INFO] [stderr] | [INFO] [stderr] 94 | fn update(&mut self, update_buf: &[u8]) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `finalize` [INFO] [stderr] --> lib/src/gcm.rs:110:8 [INFO] [stderr] | [INFO] [stderr] 110 | fn finalize(&self) -> [u8;16] { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Gctr` [INFO] [stderr] --> lib/src/gcm.rs:117:8 [INFO] [stderr] | [INFO] [stderr] 117 | struct Gctr { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> lib/src/gcm.rs:128:8 [INFO] [stderr] | [INFO] [stderr] 128 | fn new(initial_counter: [u8;16], aes: Aes) -> Gctr { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `perform_round` [INFO] [stderr] --> lib/src/gcm.rs:139:8 [INFO] [stderr] | [INFO] [stderr] 139 | fn perform_round(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `update` [INFO] [stderr] --> lib/src/gcm.rs:150:8 [INFO] [stderr] | [INFO] [stderr] 150 | fn update(&mut self, update_buf: &[u8]) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `finalize` [INFO] [stderr] --> lib/src/gcm.rs:165:8 [INFO] [stderr] | [INFO] [stderr] 165 | fn finalize(mut self) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gctr` [INFO] [stderr] --> lib/src/gcm.rs:176:4 [INFO] [stderr] | [INFO] [stderr] 176 | fn gctr(initial_counter: [u8;16], aes: Aes, data: &[u8]) -> Vec { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ghash` [INFO] [stderr] --> lib/src/gcm.rs:182:4 [INFO] [stderr] | [INFO] [stderr] 182 | fn ghash(key: [u8;16], data: &[u8]) -> [u8;16] { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gcm_decrypt` [INFO] [stderr] --> lib/src/gcm.rs:188:4 [INFO] [stderr] | [INFO] [stderr] 188 | fn gcm_decrypt(iv: &[u8], aes: Aes, authenticated_data: &[u8], ciphertext: &[u8], tag: &[u8]) -> Option> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `gcm` [INFO] [stderr] --> lib/src/gcm.rs:220:4 [INFO] [stderr] | [INFO] [stderr] 220 | fn gcm(iv: &[u8], aes: Aes, authenticated_data: &[u8], plaintext: &[u8]) -> AeadResult { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Aes128` [INFO] [stderr] --> lib/src/gcm.rs:253:5 [INFO] [stderr] | [INFO] [stderr] 253 | Aes128, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Aes256` [INFO] [stderr] --> lib/src/gcm.rs:254:5 [INFO] [stderr] | [INFO] [stderr] 254 | Aes256, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `key_length` [INFO] [stderr] --> lib/src/gcm.rs:258:8 [INFO] [stderr] | [INFO] [stderr] 258 | fn key_length(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `iv_length` [INFO] [stderr] --> lib/src/gcm.rs:265:8 [INFO] [stderr] | [INFO] [stderr] 265 | fn iv_length(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `aead` [INFO] [stderr] --> lib/src/gcm.rs:269:12 [INFO] [stderr] | [INFO] [stderr] 269 | pub fn aead(&self, iv: &[u8], key: &[u8], authenticated_data: &[u8], plaintext: &[u8]) -> AeadResult { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `aead` [INFO] [stderr] --> lib/src/cipher_suite.rs:72:12 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn aead(&self, iv: &[u8], key: &[u8], authenticated_data: &[u8], plaintext: &[u8]) -> AeadResult { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Invalid` [INFO] [stderr] --> lib/src/messages.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | Invalid, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ChangeCipherSpec` [INFO] [stderr] --> lib/src/messages.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | ChangeCipherSpec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Alert` [INFO] [stderr] --> lib/src/messages.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | Alert, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ApplicationData` [INFO] [stderr] --> lib/src/messages.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | ApplicationData, [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `to_bytes` [INFO] [stderr] --> lib/src/messages.rs:39:12 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn to_bytes(&self) -> Vec { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `NewSessionTicket` [INFO] [stderr] --> lib/src/messages.rs:107:5 [INFO] [stderr] | [INFO] [stderr] 107 | NewSessionTicket(NewSessionTicket), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `EndOfEarlyData` [INFO] [stderr] --> lib/src/messages.rs:108:5 [INFO] [stderr] | [INFO] [stderr] 108 | EndOfEarlyData(EndOfEarlyData), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `CertificateRequest` [INFO] [stderr] --> lib/src/messages.rs:111:5 [INFO] [stderr] | [INFO] [stderr] 111 | CertificateRequest(CertificateRequest), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `KeyUpdate` [INFO] [stderr] --> lib/src/messages.rs:114:5 [INFO] [stderr] | [INFO] [stderr] 114 | KeyUpdate(KeyUpdate), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `MessageHash` [INFO] [stderr] --> lib/src/messages.rs:115:5 [INFO] [stderr] | [INFO] [stderr] 115 | MessageHash(MessageHash), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `ClientHello` [INFO] [stderr] --> lib/src/messages.rs:517:5 [INFO] [stderr] | [INFO] [stderr] 517 | ClientHello, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Cookie` [INFO] [stderr] --> lib/src/messages.rs:529:5 [INFO] [stderr] | [INFO] [stderr] 529 | Cookie(Cookie), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `PskKe` [INFO] [stderr] --> lib/src/messages.rs:875:5 [INFO] [stderr] | [INFO] [stderr] 875 | PskKe, [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `PskDheKe` [INFO] [stderr] --> lib/src/messages.rs:876:5 [INFO] [stderr] | [INFO] [stderr] 876 | PskDheKe, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `try_from_u8` [INFO] [stderr] --> lib/src/messages.rs:887:8 [INFO] [stderr] | [INFO] [stderr] 887 | fn try_from_u8(num: u8) -> Result { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `RsaPkcs1Sha1` [INFO] [stderr] --> lib/src/signature.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | RsaPkcs1Sha1, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `EcdsaSha1` [INFO] [stderr] --> lib/src/signature.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | EcdsaSha1, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Buf` [INFO] [stderr] --> lib/src/client.rs:444:17 [INFO] [stderr] | [INFO] [stderr] 444 | use bytes::{Buf, BufMut}; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `BigInt` [INFO] [stderr] --> lib/src/eliptic_curve/curve25519.rs:193:22 [INFO] [stderr] | [INFO] [stderr] 193 | use num_bigint::{BigInt}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Point`, `multiplicative_inverse` [INFO] [stderr] --> lib/src/eliptic_curve/curve25519.rs:194:17 [INFO] [stderr] | [INFO] [stderr] 194 | use super::{multiplicative_inverse, Point, curve25519}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `random_gen` [INFO] [stderr] --> lib/src/client.rs:537:13 [INFO] [stderr] | [INFO] [stderr] 537 | let random_gen = Box::new(MockTlsGenerator {}); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_random_gen` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `test` [INFO] [stderr] --> lib/src/client.rs:669:13 [INFO] [stderr] | [INFO] [stderr] 669 | let test = client.as_ptr(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_test` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cx` [INFO] [stderr] --> lib/src/client.rs:469:45 [INFO] [stderr] | [INFO] [stderr] 469 | fn poll_ready(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_cx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cx` [INFO] [stderr] --> lib/src/client.rs:477:45 [INFO] [stderr] | [INFO] [stderr] 477 | fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_cx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cx` [INFO] [stderr] --> lib/src/client.rs:481:45 [INFO] [stderr] | [INFO] [stderr] 481 | fn poll_close(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_cx` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `inverse` [INFO] [stderr] --> lib/src/eliptic_curve/secp256r1.rs:214:13 [INFO] [stderr] | [INFO] [stderr] 214 | let inverse = super::multiplicative_inverse(&BigInt::from(3u32), &BigInt::from(19u32)); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inverse` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_point` [INFO] [stderr] --> lib/src/eliptic_curve/secp256r1.rs:241:13 [INFO] [stderr] | [INFO] [stderr] 241 | let new_point = curve.add(&a, &b); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_point` [INFO] [stderr] [INFO] [stderr] warning: unnecessary `unsafe` block [INFO] [stderr] --> lib/src/client.rs:670:9 [INFO] [stderr] | [INFO] [stderr] 670 | unsafe { [INFO] [stderr] | ^^^^^^ unnecessary `unsafe` block [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field is never read: `icb` [INFO] [stderr] --> lib/src/gcm.rs:119:5 [INFO] [stderr] | [INFO] [stderr] 119 | icb: [u8;16], [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `tlslib` (lib) generated 96 warnings [INFO] [stderr] warning: `tlslib` (lib test) generated 58 warnings (46 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.65s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/testexe-17d10e8071a4e1d8) [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/tlslib-a0109e12aa290e57) [INFO] [stdout] [INFO] [stdout] running 41 tests [INFO] [stdout] test aes::tests::test_expand_keys ... ok [INFO] [stdout] test aes::tests::test_mul ... ok [INFO] [stdout] test aes::tests::test_xtime ... ok [INFO] [stdout] test aes::tests::cipher_test_128 ... ok [INFO] [stdout] test eliptic_curve::curve25519::tests::test_one_thousand ... ignored [INFO] [stdout] test digest::sha256::tests::test_digest ... ok [INFO] [stdout] test digest::sha256::tests::test_long_digest ... ok [INFO] [stdout] test aes::tests::cipher_test_256 ... ok [INFO] [stdout] test digest::sha384::tests::test_digest ... ok [INFO] [stdout] test digest::sha384::tests::test_long_digest ... ok [INFO] [stdout] test gcm::tests::test_gcm_multiply ... ok [INFO] [stdout] test eliptic_curve::secp256r1::tests::test_mul_small ... ok [INFO] [stdout] test gcm::tests::test_gcm_complex ... ok [INFO] [stdout] test gcm::tests::test_gcm_empty ... ok [INFO] [stdout] test eliptic_curve::secp256r1::tests::test_vector1 ... ok [INFO] [stdout] test aes::tests::cipher_test_196 ... ok [INFO] [stdout] test eliptic_curve::secp256r1::tests::test_add ... ok [INFO] [stdout] test eliptic_curve::secp256r1::tests::test_inverse ... ok [INFO] [stdout] test gcm::tests::test_gcm_multiply2 ... ok [INFO] [stdout] test messages::tests::test_finished_serdes ... ok [INFO] [stdout] test gcm::tests::test_gcm_multiply3 ... ok [INFO] [stdout] test gcm::tests::test_gcm_simple ... ok [INFO] [stdout] test hmac::tests::test_hkdf2 ... ok [INFO] [stdout] test hmac::tests::test_hkdf3 ... ok [INFO] [stdout] test hmac::tests::test_hmac ... ok [INFO] [stdout] test messages::tests::test_certificate_serdes ... ok [INFO] [stdout] test messages::tests::test_certificate_verify_serdes ... ok [INFO] [stdout] test messages::tests::test_encrypted_extensions_serdes ... ok [INFO] [stdout] test messages::tests::test_handshake_deserialization ... ok [INFO] [stdout] test tests::test_connect ... ok [INFO] [stdout] test eliptic_curve::secp256r1::tests::test_mul ... ok [INFO] [stdout] test messages::tests::test_client_hello_serdes ... FAILED [INFO] [stdout] test hmac::tests::test_hkdf ... FAILED [INFO] [stdout] test eliptic_curve::curve25519::tests::test_vec2 ... ok [INFO] [stdout] test eliptic_curve::curve25519::tests::test_vec1 ... ok [INFO] [stdout] test digest::sha384::tests::test_longest_digest ... ok [INFO] [stdout] test eliptic_curve::curve25519::tests::test_iteration ... ok [INFO] [stdout] test digest::sha256::tests::test_longest_digest ... ok [INFO] [stdout] test client::tests::test_initial_connection ... ok [INFO] [stdout] test messages::tests::test_handshake_serialization ... ok [INFO] [stdout] test eliptic_curve::secp256r1::tests::test_vectors ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- messages::tests::test_client_hello_serdes stdout ---- [INFO] [stdout] thread 'messages::tests::test_client_hello_serdes' panicked at 'called `Result::unwrap()` on an `Err` value: Error("Parse Error on line 85")', lib/src/messages.rs:1031:41 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x556d7fd2919c - std::backtrace_rs::backtrace::libunwind::trace::h51faa62df48810e4 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5 [INFO] [stdout] 1: 0x556d7fd2919c - std::backtrace_rs::backtrace::trace_unsynchronized::h91de4d8e16d607e4 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x556d7fd2919c - std::sys_common::backtrace::_print_fmt::h71b0935f97e4322c [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x556d7fd2919c - ::fmt::h9a78218788c14e18 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x556d7fd4c60c - core::fmt::write::h3381b3176fe2b3d3 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/fmt/mod.rs:1150:17 [INFO] [stdout] 5: 0x556d7fd25de5 - std::io::Write::write_fmt::hb6383f24fe197d3c [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/io/mod.rs:1667:15 [INFO] [stdout] 6: 0x556d7fd2ae50 - std::sys_common::backtrace::_print::h4b77abc4d907ed0e [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x556d7fd2ae50 - std::sys_common::backtrace::print::hb170c60b542377ad [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x556d7fd2ae50 - std::panicking::default_hook::{{closure}}::h12bbda9af8901ee3 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:210:50 [INFO] [stdout] 9: 0x556d7fd2aa42 - std::panicking::default_hook::h8c6c66d3f3ba6768 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:224:9 [INFO] [stdout] 10: 0x556d7fd2b504 - std::panicking::rust_panic_with_hook::h36f2fa0bb09f4069 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:624:17 [INFO] [stdout] 11: 0x556d7fd2afe0 - std::panicking::begin_panic_handler::{{closure}}::h9c42b65a42d06a7a [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:521:13 [INFO] [stdout] 12: 0x556d7fd29664 - std::sys_common::backtrace::__rust_end_short_backtrace::hc791bddfe31e532c [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:141:18 [INFO] [stdout] 13: 0x556d7fd2af49 - rust_begin_unwind [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:517:5 [INFO] [stdout] 14: 0x556d7fbf2a81 - core::panicking::panic_fmt::hf9de31d4acbce4db [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/panicking.rs:101:14 [INFO] [stdout] 15: 0x556d7fbf2b73 - core::result::unwrap_failed::ha0c84e81219e5878 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/result.rs:1617:5 [INFO] [stdout] 16: 0x556d7fc3f113 - core::result::Result::unwrap::h3273f5cff1d97e81 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/result.rs:1299:23 [INFO] [stdout] 17: 0x556d7fc281fc - tlslib::messages::tests::test_client_hello_serdes::h08ccca6c6642c6f2 [INFO] [stdout] at /opt/rustwide/workdir/lib/src/messages.rs:1031:27 [INFO] [stdout] 18: 0x556d7fc27f3a - tlslib::messages::tests::test_client_hello_serdes::{{closure}}::hefc9f963fef4576e [INFO] [stdout] at /opt/rustwide/workdir/lib/src/messages.rs:1024:5 [INFO] [stdout] 19: 0x556d7fc1cb2e - core::ops::function::FnOnce::call_once::h6bb896ac067e3da9 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x556d7fc88dc3 - core::ops::function::FnOnce::call_once::h61555a204318cc58 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 21: 0x556d7fc88dc3 - test::__rust_begin_short_backtrace::h8331e7b1cc7a6e62 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/test/src/lib.rs:578:5 [INFO] [stdout] 22: 0x556d7fc87848 - as core::ops::function::FnOnce>::call_once::h98582e597fa7f145 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/alloc/src/boxed.rs:1636:9 [INFO] [stdout] 23: 0x556d7fc87848 - as core::ops::function::FnOnce<()>>::call_once::h38fa7a0826ecff45 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 24: 0x556d7fc87848 - std::panicking::try::do_call::h5b27d1cfffaa9f87 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:403:40 [INFO] [stdout] 25: 0x556d7fc87848 - std::panicking::try::h86f7124b3264bcbe [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:367:19 [INFO] [stdout] 26: 0x556d7fc87848 - std::panic::catch_unwind::h42dadf3598df7528 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panic.rs:129:14 [INFO] [stdout] 27: 0x556d7fc87848 - test::run_test_in_process::h9d4b7510f0910050 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/test/src/lib.rs:601:18 [INFO] [stdout] 28: 0x556d7fc87848 - test::run_test::run_test_inner::{{closure}}::h9b17f1fd181fe294 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/test/src/lib.rs:493:39 [INFO] [stdout] 29: 0x556d7fc5539e - test::run_test::run_test_inner::{{closure}}::h476f9211dfec6075 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/test/src/lib.rs:520:37 [INFO] [stdout] 30: 0x556d7fc5539e - std::sys_common::backtrace::__rust_begin_short_backtrace::h5c2db6945645950d [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:125:18 [INFO] [stdout] 31: 0x556d7fc59c38 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h791169ea9ba5492d [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/thread/mod.rs:481:17 [INFO] [stdout] 32: 0x556d7fc59c38 - as core::ops::function::FnOnce<()>>::call_once::he930357ede3f4b4d [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 33: 0x556d7fc59c38 - std::panicking::try::do_call::h0de4b1dd08a9aa80 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:403:40 [INFO] [stdout] 34: 0x556d7fc59c38 - std::panicking::try::hf5b5c530df698d97 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:367:19 [INFO] [stdout] 35: 0x556d7fc59c38 - std::panic::catch_unwind::hed97078f17dbf191 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panic.rs:129:14 [INFO] [stdout] 36: 0x556d7fc59c38 - std::thread::Builder::spawn_unchecked::{{closure}}::h2e673950929cba93 [INFO] [stderr] error: test failed, to rerun pass '-p tlslib --lib' [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/thread/mod.rs:480:30 [INFO] [stdout] 37: 0x556d7fc59c38 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h8e18ddd18a52f010 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 38: 0x556d7fd301d3 - as core::ops::function::FnOnce>::call_once::hbbbb32ef11ea0ad2 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/alloc/src/boxed.rs:1636:9 [INFO] [stdout] 39: 0x556d7fd301d3 - as core::ops::function::FnOnce>::call_once::h3b8ef23699fc5385 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/alloc/src/boxed.rs:1636:9 [INFO] [stdout] 40: 0x556d7fd301d3 - std::sys::unix::thread::Thread::new::thread_start::ha57f5cba35f709b7 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 41: 0x7f34442e9609 - start_thread [INFO] [stdout] 42: 0x7f34440bb293 - clone [INFO] [stdout] 43: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- hmac::tests::test_hkdf stdout ---- [INFO] [stdout] thread 'hmac::tests::test_hkdf' panicked at 'assertion failed: `(left == right)` [INFO] [stdout] left: `"a45b7c1699130145de9d48784b1c2ccad600588e88d6632bdda7b43b347cf3904dae54b668dcf094faf0"`, [INFO] [stdout] right: `"8da4e775a563c18f715f802a063c5a31b8a11f5c5ee1879ec3454e5f3c738d2d9d201395faa4b61a96c8"`', lib/src/hmac.rs:118:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x556d7fd2919c - std::backtrace_rs::backtrace::libunwind::trace::h51faa62df48810e4 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5 [INFO] [stdout] 1: 0x556d7fd2919c - std::backtrace_rs::backtrace::trace_unsynchronized::h91de4d8e16d607e4 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x556d7fd2919c - std::sys_common::backtrace::_print_fmt::h71b0935f97e4322c [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x556d7fd2919c - ::fmt::h9a78218788c14e18 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x556d7fd4c60c - core::fmt::write::h3381b3176fe2b3d3 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/fmt/mod.rs:1150:17 [INFO] [stdout] 5: 0x556d7fd25de5 - std::io::Write::write_fmt::hb6383f24fe197d3c [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/io/mod.rs:1667:15 [INFO] [stdout] 6: 0x556d7fd2ae50 - std::sys_common::backtrace::_print::h4b77abc4d907ed0e [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x556d7fd2ae50 - std::sys_common::backtrace::print::hb170c60b542377ad [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x556d7fd2ae50 - std::panicking::default_hook::{{closure}}::h12bbda9af8901ee3 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:210:50 [INFO] [stdout] 9: 0x556d7fd2aa42 - std::panicking::default_hook::h8c6c66d3f3ba6768 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:224:9 [INFO] [stdout] 10: 0x556d7fd2b504 - std::panicking::rust_panic_with_hook::h36f2fa0bb09f4069 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:624:17 [INFO] [stdout] 11: 0x556d7fd2afe0 - std::panicking::begin_panic_handler::{{closure}}::h9c42b65a42d06a7a [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:521:13 [INFO] [stdout] 12: 0x556d7fd29664 - std::sys_common::backtrace::__rust_end_short_backtrace::hc791bddfe31e532c [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:141:18 [INFO] [stdout] 13: 0x556d7fd2af49 - rust_begin_unwind [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:517:5 [INFO] [stdout] 14: 0x556d7fbf2a81 - core::panicking::panic_fmt::hf9de31d4acbce4db [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/panicking.rs:101:14 [INFO] [stdout] 15: 0x556d7fd4b1b8 - core::panicking::assert_failed_inner::h62e8cb2847a6e7ec [INFO] [stdout] 16: 0x556d7fc4554e - core::panicking::assert_failed::h13236bf38d31cb4e [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/panicking.rs:140:5 [INFO] [stdout] 17: 0x556d7fc4960f - tlslib::hmac::tests::test_hkdf::he650711f439fefef [INFO] [stdout] at /opt/rustwide/workdir/lib/src/hmac.rs:118:9 [INFO] [stdout] 18: 0x556d7fc491da - tlslib::hmac::tests::test_hkdf::{{closure}}::h6e54aac62d4a5738 [INFO] [stdout] at /opt/rustwide/workdir/lib/src/hmac.rs:110:5 [INFO] [stdout] 19: 0x556d7fc1ca2e - core::ops::function::FnOnce::call_once::h310c55e50e4b348c [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x556d7fc88dc3 - core::ops::function::FnOnce::call_once::h61555a204318cc58 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 21: 0x556d7fc88dc3 - test::__rust_begin_short_backtrace::h8331e7b1cc7a6e62 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/test/src/lib.rs:578:5 [INFO] [stdout] 22: 0x556d7fc87848 - as core::ops::function::FnOnce>::call_once::h98582e597fa7f145 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/alloc/src/boxed.rs:1636:9 [INFO] [stdout] 23: 0x556d7fc87848 - as core::ops::function::FnOnce<()>>::call_once::h38fa7a0826ecff45 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 24: 0x556d7fc87848 - std::panicking::try::do_call::h5b27d1cfffaa9f87 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:403:40 [INFO] [stdout] 25: 0x556d7fc87848 - std::panicking::try::h86f7124b3264bcbe [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:367:19 [INFO] [stdout] 26: 0x556d7fc87848 - std::panic::catch_unwind::h42dadf3598df7528 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panic.rs:129:14 [INFO] [stdout] 27: 0x556d7fc87848 - test::run_test_in_process::h9d4b7510f0910050 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/test/src/lib.rs:601:18 [INFO] [stdout] 28: 0x556d7fc87848 - test::run_test::run_test_inner::{{closure}}::h9b17f1fd181fe294 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/test/src/lib.rs:493:39 [INFO] [stdout] 29: 0x556d7fc5539e - test::run_test::run_test_inner::{{closure}}::h476f9211dfec6075 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/test/src/lib.rs:520:37 [INFO] [stdout] 30: 0x556d7fc5539e - std::sys_common::backtrace::__rust_begin_short_backtrace::h5c2db6945645950d [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys_common/backtrace.rs:125:18 [INFO] [stdout] 31: 0x556d7fc59c38 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h791169ea9ba5492d [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/thread/mod.rs:481:17 [INFO] [stdout] 32: 0x556d7fc59c38 - as core::ops::function::FnOnce<()>>::call_once::he930357ede3f4b4d [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 33: 0x556d7fc59c38 - std::panicking::try::do_call::h0de4b1dd08a9aa80 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:403:40 [INFO] [stdout] 34: 0x556d7fc59c38 - std::panicking::try::hf5b5c530df698d97 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panicking.rs:367:19 [INFO] [stdout] 35: 0x556d7fc59c38 - std::panic::catch_unwind::hed97078f17dbf191 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/panic.rs:129:14 [INFO] [stdout] 36: 0x556d7fc59c38 - std::thread::Builder::spawn_unchecked::{{closure}}::h2e673950929cba93 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/thread/mod.rs:480:30 [INFO] [stdout] 37: 0x556d7fc59c38 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h8e18ddd18a52f010 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 38: 0x556d7fd301d3 - as core::ops::function::FnOnce>::call_once::hbbbb32ef11ea0ad2 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/alloc/src/boxed.rs:1636:9 [INFO] [stdout] 39: 0x556d7fd301d3 - as core::ops::function::FnOnce>::call_once::h3b8ef23699fc5385 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/alloc/src/boxed.rs:1636:9 [INFO] [stdout] 40: 0x556d7fd301d3 - std::sys::unix::thread::Thread::new::thread_start::ha57f5cba35f709b7 [INFO] [stdout] at /rustc/e784c962ea252f0874a4305168077e7048cb39e9/library/std/src/sys/unix/thread.rs:106:17 [INFO] [stdout] 41: 0x7f34442e9609 - start_thread [INFO] [stdout] 42: 0x7f34440bb293 - clone [INFO] [stdout] 43: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] hmac::tests::test_hkdf [INFO] [stdout] messages::tests::test_client_hello_serdes [INFO] [stdout] [INFO] [stdout] test result: FAILED. 38 passed; 2 failed; 1 ignored; 0 measured; 0 filtered out; finished in 6.40s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "22499ec55be5c3ea64bd2723fff43564393d943c3ed1e8446824d339c83dfb0c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "22499ec55be5c3ea64bd2723fff43564393d943c3ed1e8446824d339c83dfb0c", kill_on_drop: false }` [INFO] [stdout] 22499ec55be5c3ea64bd2723fff43564393d943c3ed1e8446824d339c83dfb0c