[INFO] cloning repository https://github.com/zandemax/desfire-tool [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zandemax/desfire-tool" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzandemax%2Fdesfire-tool", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzandemax%2Fdesfire-tool'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 5f3ad89a5079e490c84668f7b055f46c922ef929 [INFO] checking zandemax/desfire-tool against try#f47dd4da3ae8c32c9e65d307bfe640b143e674df for pr-77526 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzandemax%2Fdesfire-tool" "/workspace/builds/worker-6/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/zandemax/desfire-tool on toolchain f47dd4da3ae8c32c9e65d307bfe640b143e674df [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/zandemax/desfire-tool [INFO] finished tweaking git repo https://github.com/zandemax/desfire-tool [INFO] tweaked toml for git repo https://github.com/zandemax/desfire-tool written to /workspace/builds/worker-6/source/Cargo.toml [INFO] crate git repo https://github.com/zandemax/desfire-tool already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded rgb v0.8.13 [INFO] [stderr] Downloaded backtrace v0.3.31 [INFO] [stderr] Downloaded globset v0.4.3 [INFO] [stderr] Downloaded ignore v0.4.7 [INFO] [stderr] Downloaded serde_derive v1.0.93 [INFO] [stderr] Downloaded serde v1.0.93 [INFO] [stderr] Downloaded syn v0.15.38 [INFO] [stderr] Downloaded text_io v0.1.7 [INFO] [stderr] Downloaded regex v1.1.7 [INFO] [stderr] Downloaded nfc-sys v0.1.5 [INFO] [stderr] Downloaded bstr v0.1.4 [INFO] [stderr] Downloaded freefare v0.2.0 [INFO] [stderr] Downloaded structopt-derive v0.2.16 [INFO] [stderr] Downloaded freefare-sys v0.2.0 [INFO] [stderr] Downloaded nfc v0.1.11 [INFO] [stderr] Downloaded structopt v0.2.16 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a6a510980c430982f2f704a358f057c6a485e159e92967cd269c86e076172c79 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "a6a510980c430982f2f704a358f057c6a485e159e92967cd269c86e076172c79", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a6a510980c430982f2f704a358f057c6a485e159e92967cd269c86e076172c79", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a6a510980c430982f2f704a358f057c6a485e159e92967cd269c86e076172c79", kill_on_drop: false }` [INFO] [stdout] a6a510980c430982f2f704a358f057c6a485e159e92967cd269c86e076172c79 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 60ac8ecf49246996761ce55a1d972f6da2d8ca968edb0b5113f0ba6c847116df [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "60ac8ecf49246996761ce55a1d972f6da2d8ca968edb0b5113f0ba6c847116df", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v0.1.4 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling memchr v2.2.0 [INFO] [stderr] Compiling syn v0.15.38 [INFO] [stderr] Checking ucd-util v0.1.3 [INFO] [stderr] Compiling regex v1.1.7 [INFO] [stderr] Compiling arrayvec v0.4.10 [INFO] [stderr] Checking utf8-ranges v1.0.3 [INFO] [stderr] Checking nodrop v0.1.13 [INFO] [stderr] Compiling failure_derive v0.1.5 [INFO] [stderr] Checking scopeguard v0.3.3 [INFO] [stderr] Compiling unicode-segmentation v1.3.0 [INFO] [stderr] Checking memoffset v0.2.1 [INFO] [stderr] Checking unicode-width v0.1.5 [INFO] [stderr] Checking rustc-demangle v0.1.15 [INFO] [stderr] Compiling rayon-core v1.5.0 [INFO] [stderr] Checking quick-error v1.2.2 [INFO] [stderr] Compiling winapi v0.3.7 [INFO] [stderr] Checking vec_map v0.8.1 [INFO] [stderr] Checking fnv v1.0.6 [INFO] [stderr] Checking ansi_term v0.11.0 [INFO] [stderr] Checking same-file v1.0.4 [INFO] [stderr] Checking approx v0.1.1 [INFO] [stderr] Compiling serde v1.0.93 [INFO] [stderr] Checking remove_dir_all v0.5.2 [INFO] [stderr] Checking text_io v0.1.7 [INFO] [stderr] Checking log v0.4.6 [INFO] [stderr] Checking crossbeam-utils v0.6.5 [INFO] [stderr] Checking thread_local v0.3.6 [INFO] [stderr] Compiling backtrace-sys v0.1.28 [INFO] [stderr] Checking regex-syntax v0.6.7 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking humantime v1.2.0 [INFO] [stderr] Checking walkdir v2.2.8 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling backtrace v0.3.31 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Checking atty v0.2.11 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking num_cpus v1.10.1 [INFO] [stderr] Checking nfc-sys v0.1.5 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Compiling heck v0.3.1 [INFO] [stderr] Checking crossbeam-queue v0.1.2 [INFO] [stderr] Checking crossbeam-channel v0.3.8 [INFO] [stderr] Checking clap v2.33.0 [INFO] [stderr] Checking freefare-sys v0.2.0 [INFO] [stderr] Checking nfc v0.1.11 [INFO] [stderr] Checking freefare v0.2.0 [INFO] [stderr] Compiling quote v0.6.12 [INFO] [stderr] Checking crossbeam-epoch v0.7.1 [INFO] [stderr] Checking aho-corasick v0.7.3 [INFO] [stderr] Checking bstr v0.1.4 [INFO] [stderr] Checking crossbeam-deque v0.6.3 [INFO] [stderr] Checking num-traits v0.1.43 [INFO] [stderr] Checking cgmath v0.16.1 [INFO] [stderr] Checking rayon v1.1.0 [INFO] [stderr] Checking globset v0.4.3 [INFO] [stderr] Checking env_logger v0.5.13 [INFO] [stderr] Compiling synstructure v0.10.2 [INFO] [stderr] Checking winconsole v0.10.0 [INFO] [stderr] Checking colored v1.8.0 [INFO] [stderr] Checking ignore v0.4.7 [INFO] [stderr] Checking globwalk v0.3.1 [INFO] [stderr] Compiling structopt-derive v0.2.16 [INFO] [stderr] Compiling serde_derive v1.0.93 [INFO] [stderr] Checking failure v0.1.5 [INFO] [stderr] Checking exitfailure v0.5.1 [INFO] [stderr] Checking structopt v0.2.16 [INFO] [stderr] Checking clap-verbosity-flag v0.2.0 [INFO] [stderr] Checking quicli v0.4.0 [INFO] [stderr] Checking desfire-tool v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> src/desfire/card.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> src/desfire/application.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crypto::*` [INFO] [stdout] --> src/desfire/mod.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crypto::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `self` [INFO] [stdout] --> src/commands/personalize.rs:3:15 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::{self, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::super::desfire::*` [INFO] [stdout] --> src/commands/application.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use super::super::desfire::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> src/desfire/card.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> src/desfire/application.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crypto::*` [INFO] [stdout] --> src/desfire/mod.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crypto::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Write`, `self` [INFO] [stdout] --> src/commands/personalize.rs:3:15 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::{self, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::super::desfire::*` [INFO] [stdout] --> src/commands/application.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use super::super::desfire::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/desfire/desfire.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | for i in 0..device_count { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/desfire/desfire.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | for i in 0..device_count { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/desfire/desfire.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let res = mifare::desfire_authenticate_aes(self.tag, key_id, key); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/desfire/card.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | let res = mifare::desfire_get_version(desfire.tag, &mut info); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/desfire/card.rs:40:7 [INFO] [stdout] | [INFO] [stdout] 40 | let res = mifare::desfire_format_picc(desfire.tag); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/desfire/key.rs:6:19 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn change_key(aid: u8, kid: u8, mut key_old: [u8; 16usize], mut key_new: [u8; 16usize], version: Option) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/desfire/key.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | let mut count: usize = 0; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/desfire/key.rs:18:16 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn add_key(aid: u8, kid: u8, mut key_old: [u8; 16usize], mut key_new: [u8; 16usize], version: Option) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/desfire/key.rs:56:28 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn change_key_settings(aid: u8, kid: u8, mut key: [u8; 16usize], version: Option, settings: KeySettings) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/desfire/key.rs:70:7 [INFO] [stdout] | [INFO] [stdout] 70 | let res = mifare::desfire_get_key_settings(desfire.tag, &mut settings, &mut max_keys); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/desfire/key.rs:65:25 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn get_key_settings(aid: u8, kid: u8) -> KeySettings { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kid` [INFO] [stdout] --> src/desfire/key.rs:65:34 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn get_key_settings(aid: u8, kid: u8) -> KeySettings { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_kid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `res` is assigned to, but never used [INFO] [stdout] --> src/desfire/application.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | let res; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_res` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/desfire/application.rs:33:25 [INFO] [stdout] | [INFO] [stdout] 33 | Encryption::NONE => res = mifare::desfire_create_application(desfire.tag, application.id, settings_struct_to_u8(application.settings)... [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/desfire/application.rs:34:27 [INFO] [stdout] | [INFO] [stdout] 34 | Encryption::DES3K3 => res = mifare::desfire_create_application_3k3des(desfire.tag, application.id, settings_struct_to_u8(application.... [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/desfire/application.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | Encryption::AES => res = mifare::desfire_create_application_aes(desfire.tag, application.id, settings_struct_to_u8(application.settin... [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/commands/helper.rs:45:11 [INFO] [stdout] | [INFO] [stdout] 45 | Err(err) => print!("Could not parse your answer! \n {}", question), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `generate_master_key` [INFO] [stdout] --> src/commands/personalize.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | let generate_master_key: bool = ask_bool("Should I generate a new Master key for you? [yes/no]: "); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_generate_master_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `random_uid` [INFO] [stdout] --> src/commands/personalize.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | let random_uid: bool = ask_bool("Do you want your card to respond with a random UID? (CAUTION: Once turned on, this cannot be turned of... [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_random_uid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `format_lock` [INFO] [stdout] --> src/commands/personalize.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | let format_lock: bool = ask_bool("Do you want to lock your card from being formatted? (CAUTION: Once turned on, this cannot be turned o... [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_format_lock` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `create_needs_master` [INFO] [stdout] --> src/commands/personalize.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | let create_needs_master: bool = ask_bool("Should you need the Master Key to create Applications? (Delete always requires master) [yes|n... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_create_needs_master` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `list_needs_master` [INFO] [stdout] --> src/commands/personalize.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | let list_needs_master: bool = ask_bool("Should you need the Master Key to list Applications? [yes|no]: "); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_list_needs_master` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `generate_master_key` [INFO] [stdout] --> src/commands/application.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | let generate_master_key: bool = ask_bool("Should I generate a new Key for this Application (no leaves default) [yes|no]: "); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_generate_master_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/application.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | fn change(aid: u8) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/application.rs:27:14 [INFO] [stdout] | [INFO] [stdout] 27 | fn configure(aid: u8) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/application.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | fn info(aid: u8) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/application.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | fn remove(aid: u8) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/key.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | fn add (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kid` [INFO] [stdout] --> src/commands/key.rs:16:18 [INFO] [stdout] | [INFO] [stdout] 16 | fn add (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_kid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/key.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | fn change (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kid` [INFO] [stdout] --> src/commands/key.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | fn change (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_kid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/key.rs:20:15 [INFO] [stdout] | [INFO] [stdout] 20 | fn configure (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kid` [INFO] [stdout] --> src/commands/key.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | fn configure (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_kid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/key.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | fn remove (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kid` [INFO] [stdout] --> src/commands/key.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | fn remove (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_kid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `command` [INFO] [stdout] --> src/commands/file.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn file(command: FileCommand, aid: u8, fid: u8) {} [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/file.rs:3:35 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn file(command: FileCommand, aid: u8, fid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fid` [INFO] [stdout] --> src/commands/file.rs:3:44 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn file(command: FileCommand, aid: u8, fid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_fid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/desfire/desfire.rs:61:9 [INFO] [stdout] | [INFO] [stdout] 61 | let res = mifare::desfire_authenticate_aes(self.tag, key_id, key); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/desfire/card.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | let res = mifare::desfire_get_version(desfire.tag, &mut info); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/desfire/card.rs:40:7 [INFO] [stdout] | [INFO] [stdout] 40 | let res = mifare::desfire_format_picc(desfire.tag); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/desfire/key.rs:6:19 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn change_key(aid: u8, kid: u8, mut key_old: [u8; 16usize], mut key_new: [u8; 16usize], version: Option) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/desfire/key.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | let mut count: usize = 0; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/desfire/key.rs:18:16 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn add_key(aid: u8, kid: u8, mut key_old: [u8; 16usize], mut key_new: [u8; 16usize], version: Option) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/desfire/key.rs:56:28 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn change_key_settings(aid: u8, kid: u8, mut key: [u8; 16usize], version: Option, settings: KeySettings) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/desfire/key.rs:70:7 [INFO] [stdout] | [INFO] [stdout] 70 | let res = mifare::desfire_get_key_settings(desfire.tag, &mut settings, &mut max_keys); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/desfire/key.rs:65:25 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn get_key_settings(aid: u8, kid: u8) -> KeySettings { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kid` [INFO] [stdout] --> src/desfire/key.rs:65:34 [INFO] [stdout] | [INFO] [stdout] 65 | pub fn get_key_settings(aid: u8, kid: u8) -> KeySettings { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_kid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `res` is assigned to, but never used [INFO] [stdout] --> src/desfire/application.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | let res; [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_res` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/desfire/application.rs:33:25 [INFO] [stdout] | [INFO] [stdout] 33 | Encryption::NONE => res = mifare::desfire_create_application(desfire.tag, application.id, settings_struct_to_u8(application.settings)... [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/desfire/application.rs:34:27 [INFO] [stdout] | [INFO] [stdout] 34 | Encryption::DES3K3 => res = mifare::desfire_create_application_3k3des(desfire.tag, application.id, settings_struct_to_u8(application.... [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `res` is never read [INFO] [stdout] --> src/desfire/application.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | Encryption::AES => res = mifare::desfire_create_application_aes(desfire.tag, application.id, settings_struct_to_u8(application.settin... [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/commands/helper.rs:45:11 [INFO] [stdout] | [INFO] [stdout] 45 | Err(err) => print!("Could not parse your answer! \n {}", question), [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `generate_master_key` [INFO] [stdout] --> src/commands/personalize.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | let generate_master_key: bool = ask_bool("Should I generate a new Master key for you? [yes/no]: "); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_generate_master_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `random_uid` [INFO] [stdout] --> src/commands/personalize.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | let random_uid: bool = ask_bool("Do you want your card to respond with a random UID? (CAUTION: Once turned on, this cannot be turned of... [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_random_uid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `format_lock` [INFO] [stdout] --> src/commands/personalize.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | let format_lock: bool = ask_bool("Do you want to lock your card from being formatted? (CAUTION: Once turned on, this cannot be turned o... [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_format_lock` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `create_needs_master` [INFO] [stdout] --> src/commands/personalize.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | let create_needs_master: bool = ask_bool("Should you need the Master Key to create Applications? (Delete always requires master) [yes|n... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_create_needs_master` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `list_needs_master` [INFO] [stdout] --> src/commands/personalize.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | let list_needs_master: bool = ask_bool("Should you need the Master Key to list Applications? [yes|no]: "); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_list_needs_master` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `generate_master_key` [INFO] [stdout] --> src/commands/application.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | let generate_master_key: bool = ask_bool("Should I generate a new Key for this Application (no leaves default) [yes|no]: "); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_generate_master_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/application.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | fn change(aid: u8) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/application.rs:27:14 [INFO] [stdout] | [INFO] [stdout] 27 | fn configure(aid: u8) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/application.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | fn info(aid: u8) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/application.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | fn remove(aid: u8) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/key.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | fn add (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kid` [INFO] [stdout] --> src/commands/key.rs:16:18 [INFO] [stdout] | [INFO] [stdout] 16 | fn add (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_kid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/key.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | fn change (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kid` [INFO] [stdout] --> src/commands/key.rs:18:21 [INFO] [stdout] | [INFO] [stdout] 18 | fn change (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_kid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/key.rs:20:15 [INFO] [stdout] | [INFO] [stdout] 20 | fn configure (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kid` [INFO] [stdout] --> src/commands/key.rs:20:24 [INFO] [stdout] | [INFO] [stdout] 20 | fn configure (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_kid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/key.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | fn remove (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kid` [INFO] [stdout] --> src/commands/key.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | fn remove (aid: u8, kid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_kid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `command` [INFO] [stdout] --> src/commands/file.rs:3:13 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn file(command: FileCommand, aid: u8, fid: u8) {} [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `aid` [INFO] [stdout] --> src/commands/file.rs:3:35 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn file(command: FileCommand, aid: u8, fid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_aid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fid` [INFO] [stdout] --> src/commands/file.rs:3:44 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn file(command: FileCommand, aid: u8, fid: u8) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_fid` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/desfire/card.rs:36:20 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn format_card(mut key: [u8; 16usize], key_id: u8, version: Option) { [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: variable does not need to be mutable [INFO] [stdout] --> src/desfire/key.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | let mut count: usize = 0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/desfire/key.rs:56:46 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn change_key_settings(aid: u8, kid: u8, mut key: [u8; 16usize], version: Option, settings: KeySettings) { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/desfire/card.rs:36:20 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn format_card(mut key: [u8; 16usize], key_id: u8, version: Option) { [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: variable does not need to be mutable [INFO] [stdout] --> src/desfire/key.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | let mut count: usize = 0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `authenticate` [INFO] [stdout] --> src/desfire/desfire.rs:59:10 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn authenticate(&self, key_id: u8, mut key: [u8; 16usize], version: Option) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `generate_new_aes_key` [INFO] [stdout] --> src/desfire/crypto.rs:6:4 [INFO] [stdout] | [INFO] [stdout] 6 | fn generate_new_aes_key () -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `format_card` [INFO] [stdout] --> src/desfire/card.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn format_card(mut key: [u8; 16usize], key_id: u8, version: Option) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/desfire/key.rs:56:46 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn change_key_settings(aid: u8, kid: u8, mut key: [u8; 16usize], version: Option, settings: KeySettings) { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `change_key` [INFO] [stdout] --> src/desfire/key.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn change_key(aid: u8, kid: u8, mut key_old: [u8; 16usize], mut key_new: [u8; 16usize], version: Option) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `add_key` [INFO] [stdout] --> src/desfire/key.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn add_key(aid: u8, kid: u8, mut key_old: [u8; 16usize], mut key_new: [u8; 16usize], version: Option) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `settings_struct_to_u8` [INFO] [stdout] --> src/desfire/key.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn settings_struct_to_u8(settings: KeySettings) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `change_key_settings` [INFO] [stdout] --> src/desfire/key.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn change_key_settings(aid: u8, kid: u8, mut key: [u8; 16usize], version: Option, settings: KeySettings) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Application` [INFO] [stdout] --> src/desfire/application.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Application { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `Encryption` [INFO] [stdout] --> src/desfire/application.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | pub enum Encryption { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `add_application` [INFO] [stdout] --> src/desfire/application.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn add_application(application: Application, key: Option<[u8; 16usize]>, version: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `PersonalizationSettings` [INFO] [stdout] --> src/commands/personalize.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | struct PersonalizationSettings { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `authenticate` [INFO] [stdout] --> src/desfire/desfire.rs:59:10 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn authenticate(&self, key_id: u8, mut key: [u8; 16usize], version: Option) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `generate_new_aes_key` [INFO] [stdout] --> src/desfire/crypto.rs:6:4 [INFO] [stdout] | [INFO] [stdout] 6 | fn generate_new_aes_key () -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `format_card` [INFO] [stdout] --> src/desfire/card.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn format_card(mut key: [u8; 16usize], key_id: u8, version: Option) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `change_key` [INFO] [stdout] --> src/desfire/key.rs:6:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn change_key(aid: u8, kid: u8, mut key_old: [u8; 16usize], mut key_new: [u8; 16usize], version: Option) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `add_key` [INFO] [stdout] --> src/desfire/key.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn add_key(aid: u8, kid: u8, mut key_old: [u8; 16usize], mut key_new: [u8; 16usize], version: Option) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `settings_struct_to_u8` [INFO] [stdout] --> src/desfire/key.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn settings_struct_to_u8(settings: KeySettings) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `change_key_settings` [INFO] [stdout] --> src/desfire/key.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn change_key_settings(aid: u8, kid: u8, mut key: [u8; 16usize], version: Option, settings: KeySettings) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Application` [INFO] [stdout] --> src/desfire/application.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Application { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum is never used: `Encryption` [INFO] [stdout] --> src/desfire/application.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | pub enum Encryption { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `add_application` [INFO] [stdout] --> src/desfire/application.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn add_application(application: Application, key: Option<[u8; 16usize]>, version: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `PersonalizationSettings` [INFO] [stdout] --> src/commands/personalize.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | struct PersonalizationSettings { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/commands/helper.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | io::stdout().flush(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/commands/helper.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | io::stdout().flush(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 58 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/commands/helper.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | io::stdout().flush(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/commands/helper.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | io::stdout().flush(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 58 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 19s [INFO] running `Command { std: "docker" "inspect" "60ac8ecf49246996761ce55a1d972f6da2d8ca968edb0b5113f0ba6c847116df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "60ac8ecf49246996761ce55a1d972f6da2d8ca968edb0b5113f0ba6c847116df", kill_on_drop: false }` [INFO] [stdout] 60ac8ecf49246996761ce55a1d972f6da2d8ca968edb0b5113f0ba6c847116df