[INFO] updating cached repository rotwatsb/cryptopals [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/rotwatsb/cryptopals [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/rotwatsb/cryptopals" "work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/rotwatsb/cryptopals"` [INFO] [stderr] Cloning into 'work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/rotwatsb/cryptopals'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/rotwatsb/cryptopals" "work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/rotwatsb/cryptopals"` [INFO] [stderr] Cloning into 'work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/rotwatsb/cryptopals'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] f0a78614ae8e6210a5dab3a23057ec77f611b29c [INFO] sha for GitHub repo rotwatsb/cryptopals: f0a78614ae8e6210a5dab3a23057ec77f611b29c [INFO] validating manifest of rotwatsb/cryptopals on toolchain master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of rotwatsb/cryptopals on toolchain try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing rotwatsb/cryptopals [INFO] finished frobbing rotwatsb/cryptopals [INFO] frobbed toml for rotwatsb/cryptopals written to work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/rotwatsb/cryptopals/Cargo.toml [INFO] started frobbing rotwatsb/cryptopals [INFO] finished frobbing rotwatsb/cryptopals [INFO] frobbed toml for rotwatsb/cryptopals written to work/ex/pr-59199/sources/try#68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b/gh/rotwatsb/cryptopals/Cargo.toml [INFO] crate rotwatsb/cryptopals already has a lockfile, it will not be regenerated [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] error: the lock file /mnt/crater-raid/crater/work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/rotwatsb/cryptopals/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] the lockfile is outdated, regenerating it [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+68fcf881bd1e4dbfc21e22f8c7a56b8a5d8e8f7b-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking rotwatsb/cryptopals against master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7 for pr-59199 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-59199/worker-4/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-59199/sources/master#bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7/gh/rotwatsb/cryptopals:/opt/crater/workdir:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+bc44841ad2a2ad5f6c5e67b9e35ed8e7e71d4dc7-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] d321e8cecc776491e04bc862ae3b0b99a1e9b9a7d22fe3d1d5c8f3600a44a9b1 [INFO] running `"docker" "start" "-a" "d321e8cecc776491e04bc862ae3b0b99a1e9b9a7d22fe3d1d5c8f3600a44a9b1"` [INFO] [stderr] Checking cryptopals v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `std::cmp` [INFO] [stderr] --> src/set1/prob5.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::cmp; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp` [INFO] [stderr] --> src/set1/prob5.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::cmp; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/utils.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | for i in 0 .. to_append { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `buf` is never read [INFO] [stderr] --> src/set1/prob1.rs:59:13 [INFO] [stderr] | [INFO] [stderr] 59 | let mut buf: u8 = 0; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `buf` is never read [INFO] [stderr] --> src/set1/prob1.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | let mut buf: u8 = 0; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `byte_mask` is never read [INFO] [stderr] --> src/set1/prob1.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | let mut byte_mask: u8 = 255 << offset + (8 - bpc); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `first` is never read [INFO] [stderr] --> src/set1/prob1.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | let mut first: bool = true; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `score` [INFO] [stderr] --> src/set1/prob3.rs:12:28 [INFO] [stderr] | [INFO] [stderr] 12 | let (decoded_bytes, _, score) = decode_repeating_char_xor(&encoded_bytes); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_score` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `score` is never read [INFO] [stderr] --> src/set1/prob3.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | let mut score: i32 = 0; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/set1/prob3.rs:63:9 [INFO] [stderr] | [INFO] [stderr] 63 | for i in 0 .. 5 { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `ham_dist` is never read [INFO] [stderr] --> src/set1/prob6.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | let mut ham_dist: f64 = 0.0; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `keysize` is never read [INFO] [stderr] --> src/set1/prob6.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | let mut keysize: usize = 0; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/set1/prob6.rs:49:13 [INFO] [stderr] | [INFO] [stderr] 49 | for i in 0 .. keysize { transposed_blocks.push(Vec::new()); } [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `best_decode` [INFO] [stderr] --> src/set1/prob6.rs:54:18 [INFO] [stderr] | [INFO] [stderr] 54 | let (best_decode, best_key, max_score) = [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_best_decode` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `max_score` [INFO] [stderr] --> src/set1/prob6.rs:54:41 [INFO] [stderr] | [INFO] [stderr] 54 | let (best_decode, best_key, max_score) = [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_max_score` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key` [INFO] [stderr] --> src/set2/prob12.rs:5:13 [INFO] [stderr] | [INFO] [stderr] 5 | let mut key: Vec = g.gen_iter().take(16).collect::>(); [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_key` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/utils.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | for i in 0 .. to_append { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `buf` is never read [INFO] [stderr] --> src/set1/prob1.rs:59:13 [INFO] [stderr] | [INFO] [stderr] 59 | let mut buf: u8 = 0; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_assignments)] on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `buf` is never read [INFO] [stderr] --> src/set1/prob1.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | let mut buf: u8 = 0; [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `byte_mask` is never read [INFO] [stderr] --> src/set1/prob1.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | let mut byte_mask: u8 = 255 << offset + (8 - bpc); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `first` is never read [INFO] [stderr] --> src/set1/prob1.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | let mut first: bool = true; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `score` [INFO] [stderr] --> src/set1/prob3.rs:12:28 [INFO] [stderr] | [INFO] [stderr] 12 | let (decoded_bytes, _, score) = decode_repeating_char_xor(&encoded_bytes); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_score` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `score` is never read [INFO] [stderr] --> src/set1/prob3.rs:25:13 [INFO] [stderr] | [INFO] [stderr] 25 | let mut score: i32 = 0; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/set1/prob3.rs:63:9 [INFO] [stderr] | [INFO] [stderr] 63 | for i in 0 .. 5 { [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `ham_dist` is never read [INFO] [stderr] --> src/set1/prob6.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | let mut ham_dist: f64 = 0.0; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `keysize` is never read [INFO] [stderr] --> src/set1/prob6.rs:39:13 [INFO] [stderr] | [INFO] [stderr] 39 | let mut keysize: usize = 0; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/set1/prob6.rs:49:13 [INFO] [stderr] | [INFO] [stderr] 49 | for i in 0 .. keysize { transposed_blocks.push(Vec::new()); } [INFO] [stderr] | ^ help: consider prefixing with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `best_decode` [INFO] [stderr] --> src/set1/prob6.rs:54:18 [INFO] [stderr] | [INFO] [stderr] 54 | let (best_decode, best_key, max_score) = [INFO] [stderr] | ^^^^^^^^^^^ help: consider prefixing with an underscore: `_best_decode` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `max_score` [INFO] [stderr] --> src/set1/prob6.rs:54:41 [INFO] [stderr] | [INFO] [stderr] 54 | let (best_decode, best_key, max_score) = [INFO] [stderr] | ^^^^^^^^^ help: consider prefixing with an underscore: `_max_score` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `key` [INFO] [stderr] --> src/set2/prob12.rs:5:13 [INFO] [stderr] | [INFO] [stderr] 5 | let mut key: Vec = g.gen_iter().take(16).collect::>(); [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_key` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/set2/prob12.rs:5:9 [INFO] [stderr] | [INFO] [stderr] 5 | let mut key: Vec = g.gen_iter().take(16).collect::>(); [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: static item is never used: `DEBUG` [INFO] [stderr] --> src/constants.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | pub static DEBUG: bool = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ecb_decrypt` [INFO] [stderr] --> src/utils.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn ecb_decrypt(slice_in: &[u8], slice_out: &mut [u8], key: &[u8]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ecb_encrypt` [INFO] [stderr] --> src/utils.rs:27:1 [INFO] [stderr] | [INFO] [stderr] 27 | pub fn ecb_encrypt(slice_in: &[u8], slice_out: &mut [u8], key: &[u8]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `pad_to` [INFO] [stderr] --> src/utils.rs:38:1 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn pad_to(to_pad: &mut Vec, block_size: usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `cbc_encrypt` [INFO] [stderr] --> src/utils.rs:46:1 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn cbc_encrypt(bin: &mut Vec, iv: &Vec, key: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `cbc_decrypt` [INFO] [stderr] --> src/utils.rs:72:1 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn cbc_decrypt(bin: &Vec, iv: &Vec, key: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bin_from_b64file` [INFO] [stderr] --> src/utils.rs:99:1 [INFO] [stderr] | [INFO] [stderr] 99 | pub fn bin_from_b64file(f: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set_xor_slice` [INFO] [stderr] --> src/utils.rs:114:1 [INFO] [stderr] | [INFO] [stderr] 114 | pub fn set_xor_slice(v1: &[u8], v2: &[u8], into: &mut[u8]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `byte_repeats_exist` [INFO] [stderr] --> src/utils.rs:122:1 [INFO] [stderr] | [INFO] [stderr] 122 | pub fn byte_repeats_exist(data: &Vec, n: usize) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `BIN_MAP` [INFO] [stderr] --> src/set1/prob1.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | pub const BIN_MAP: [char; 2] = ['0', '1']; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `HEX_MAP` [INFO] [stderr] --> src/set1/prob1.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / pub const HEX_MAP: [char; 16] = [INFO] [stderr] 4 | | ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', [INFO] [stderr] 5 | | 'e', 'f']; [INFO] [stderr] | |_______________^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `B64_MAP` [INFO] [stderr] --> src/set1/prob1.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | / pub const B64_MAP: [char; 64] = [INFO] [stderr] 8 | | ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', [INFO] [stderr] 9 | | 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', [INFO] [stderr] 10 | | 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', [INFO] [stderr] 11 | | 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', [INFO] [stderr] 12 | | '4', '5', '6', '7', '8', '9', '+', '/']; [INFO] [stderr] | |_____________________________________________^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob1` [INFO] [stderr] --> src/set1/prob1.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn prob1() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `from_hex_string` [INFO] [stderr] --> src/set1/prob1.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn from_hex_string(hex: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `from_b64_string` [INFO] [stderr] --> src/set1/prob1.rs:54:1 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn from_b64_string(b64_str: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `to_base` [INFO] [stderr] --> src/set1/prob1.rs:94:1 [INFO] [stderr] | [INFO] [stderr] 94 | pub fn to_base(bin: &Vec, char_map: &[char]) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mylog2` [INFO] [stderr] --> src/set1/prob1.rs:130:1 [INFO] [stderr] | [INFO] [stderr] 130 | pub fn mylog2(n: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test` [INFO] [stderr] --> src/set1/prob1.rs:142:1 [INFO] [stderr] | [INFO] [stderr] 142 | fn test() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob2` [INFO] [stderr] --> src/set1/prob2.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn prob2() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `xor_vecs` [INFO] [stderr] --> src/set1/prob2.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn xor_vecs(v1: &[u8], v2: &[u8]) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob3` [INFO] [stderr] --> src/set1/prob3.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn prob3() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `decode_repeating_char_xor` [INFO] [stderr] --> src/set1/prob3.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn decode_repeating_char_xor(encoded_bytes: &Vec) -> (Vec, u8, i32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set_vec` [INFO] [stderr] --> src/set1/prob3.rs:48:1 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn set_vec(src: &Vec, dest: &mut Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `score_freqs` [INFO] [stderr] --> src/set1/prob3.rs:54:1 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn score_freqs(freqs: &Vec) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `calc_freqs` [INFO] [stderr] --> src/set1/prob3.rs:92:1 [INFO] [stderr] | [INFO] [stderr] 92 | pub fn calc_freqs(chars: &Vec, letter_freqs: &mut Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `repeating_char_xor` [INFO] [stderr] --> src/set1/prob3.rs:108:1 [INFO] [stderr] | [INFO] [stderr] 108 | pub fn repeating_char_xor(v: &Vec, result: &mut Vec, c: &u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob4` [INFO] [stderr] --> src/set1/prob4.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn prob4() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob5` [INFO] [stderr] --> src/set1/prob5.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn prob5() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `repeating_seq_xor` [INFO] [stderr] --> src/set1/prob5.rs:20:1 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn repeating_seq_xor(to_encode: &[u8], result: &mut Vec, seq: &[u8]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob6` [INFO] [stderr] --> src/set1/prob6.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn prob6() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hamming_distance` [INFO] [stderr] --> src/set1/prob6.rs:67:1 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn hamming_distance(v1: &[u8], v2: &[u8]) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ham_d` [INFO] [stderr] --> src/set1/prob6.rs:75:1 [INFO] [stderr] | [INFO] [stderr] 75 | fn ham_d(a: u8, b: u8) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob7` [INFO] [stderr] --> src/set1/prob7.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn prob7() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob8` [INFO] [stderr] --> src/set1/prob8.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn prob8() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob9` [INFO] [stderr] --> src/set2/prob9.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn prob9() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob10` [INFO] [stderr] --> src/set2/prob10.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn prob10() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob11` [INFO] [stderr] --> src/set2/prob11.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn prob11() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ecb_or_cbc_oracle` [INFO] [stderr] --> src/set2/prob11.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | fn ecb_or_cbc_oracle(encryptor: &Fn(&mut Vec) -> Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `rand_encrypt_ecb_or_cbc` [INFO] [stderr] --> src/set2/prob11.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | fn rand_encrypt_ecb_or_cbc(bin: &mut Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob12` [INFO] [stderr] --> src/set2/prob12.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn prob12() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set1` [INFO] [stderr] --> src/main.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | fn set1() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set2` [INFO] [stderr] --> src/main.rs:27:1 [INFO] [stderr] | [INFO] [stderr] 27 | fn set2() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/utils.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | (*boxed_dec).decrypt(&mut buff_in, &mut buff_out, true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/utils.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | (*boxed_enc).encrypt(&mut buff_in, &mut buff_out, true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/set2/prob12.rs:5:9 [INFO] [stderr] | [INFO] [stderr] 5 | let mut key: Vec = g.gen_iter().take(16).collect::>(); [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: static item is never used: `DEBUG` [INFO] [stderr] --> src/constants.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | pub static DEBUG: bool = false; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ecb_decrypt` [INFO] [stderr] --> src/utils.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn ecb_decrypt(slice_in: &[u8], slice_out: &mut [u8], key: &[u8]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ecb_encrypt` [INFO] [stderr] --> src/utils.rs:27:1 [INFO] [stderr] | [INFO] [stderr] 27 | pub fn ecb_encrypt(slice_in: &[u8], slice_out: &mut [u8], key: &[u8]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `pad_to` [INFO] [stderr] --> src/utils.rs:38:1 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn pad_to(to_pad: &mut Vec, block_size: usize) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `cbc_encrypt` [INFO] [stderr] --> src/utils.rs:46:1 [INFO] [stderr] | [INFO] [stderr] 46 | pub fn cbc_encrypt(bin: &mut Vec, iv: &Vec, key: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `cbc_decrypt` [INFO] [stderr] --> src/utils.rs:72:1 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn cbc_decrypt(bin: &Vec, iv: &Vec, key: &Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bin_from_b64file` [INFO] [stderr] --> src/utils.rs:99:1 [INFO] [stderr] | [INFO] [stderr] 99 | pub fn bin_from_b64file(f: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set_xor_slice` [INFO] [stderr] --> src/utils.rs:114:1 [INFO] [stderr] | [INFO] [stderr] 114 | pub fn set_xor_slice(v1: &[u8], v2: &[u8], into: &mut[u8]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `byte_repeats_exist` [INFO] [stderr] --> src/utils.rs:122:1 [INFO] [stderr] | [INFO] [stderr] 122 | pub fn byte_repeats_exist(data: &Vec, n: usize) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `BIN_MAP` [INFO] [stderr] --> src/set1/prob1.rs:1:1 [INFO] [stderr] | [INFO] [stderr] 1 | pub const BIN_MAP: [char; 2] = ['0', '1']; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `HEX_MAP` [INFO] [stderr] --> src/set1/prob1.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | / pub const HEX_MAP: [char; 16] = [INFO] [stderr] 4 | | ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', [INFO] [stderr] 5 | | 'e', 'f']; [INFO] [stderr] | |_______________^ [INFO] [stderr] [INFO] [stderr] warning: constant item is never used: `B64_MAP` [INFO] [stderr] --> src/set1/prob1.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | / pub const B64_MAP: [char; 64] = [INFO] [stderr] 8 | | ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', [INFO] [stderr] 9 | | 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', [INFO] [stderr] 10 | | 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', [INFO] [stderr] 11 | | 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', [INFO] [stderr] 12 | | '4', '5', '6', '7', '8', '9', '+', '/']; [INFO] [stderr] | |_____________________________________________^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob1` [INFO] [stderr] --> src/set1/prob1.rs:14:1 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn prob1() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `from_hex_string` [INFO] [stderr] --> src/set1/prob1.rs:26:1 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn from_hex_string(hex: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `from_b64_string` [INFO] [stderr] --> src/set1/prob1.rs:54:1 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn from_b64_string(b64_str: &String) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `to_base` [INFO] [stderr] --> src/set1/prob1.rs:94:1 [INFO] [stderr] | [INFO] [stderr] 94 | pub fn to_base(bin: &Vec, char_map: &[char]) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `mylog2` [INFO] [stderr] --> src/set1/prob1.rs:130:1 [INFO] [stderr] | [INFO] [stderr] 130 | pub fn mylog2(n: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `test` [INFO] [stderr] --> src/set1/prob1.rs:142:1 [INFO] [stderr] | [INFO] [stderr] 142 | fn test() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob2` [INFO] [stderr] --> src/set1/prob2.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn prob2() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `xor_vecs` [INFO] [stderr] --> src/set1/prob2.rs:15:1 [INFO] [stderr] | [INFO] [stderr] 15 | pub fn xor_vecs(v1: &[u8], v2: &[u8]) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob3` [INFO] [stderr] --> src/set1/prob3.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn prob3() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `decode_repeating_char_xor` [INFO] [stderr] --> src/set1/prob3.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn decode_repeating_char_xor(encoded_bytes: &Vec) -> (Vec, u8, i32) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set_vec` [INFO] [stderr] --> src/set1/prob3.rs:48:1 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn set_vec(src: &Vec, dest: &mut Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `score_freqs` [INFO] [stderr] --> src/set1/prob3.rs:54:1 [INFO] [stderr] | [INFO] [stderr] 54 | pub fn score_freqs(freqs: &Vec) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `calc_freqs` [INFO] [stderr] --> src/set1/prob3.rs:92:1 [INFO] [stderr] | [INFO] [stderr] 92 | pub fn calc_freqs(chars: &Vec, letter_freqs: &mut Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `repeating_char_xor` [INFO] [stderr] --> src/set1/prob3.rs:108:1 [INFO] [stderr] | [INFO] [stderr] 108 | pub fn repeating_char_xor(v: &Vec, result: &mut Vec, c: &u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob4` [INFO] [stderr] --> src/set1/prob4.rs:10:1 [INFO] [stderr] | [INFO] [stderr] 10 | pub fn prob4() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob5` [INFO] [stderr] --> src/set1/prob5.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn prob5() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `repeating_seq_xor` [INFO] [stderr] --> src/set1/prob5.rs:20:1 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn repeating_seq_xor(to_encode: &[u8], result: &mut Vec, seq: &[u8]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob6` [INFO] [stderr] --> src/set1/prob6.rs:12:1 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn prob6() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `hamming_distance` [INFO] [stderr] --> src/set1/prob6.rs:67:1 [INFO] [stderr] | [INFO] [stderr] 67 | pub fn hamming_distance(v1: &[u8], v2: &[u8]) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ham_d` [INFO] [stderr] --> src/set1/prob6.rs:75:1 [INFO] [stderr] | [INFO] [stderr] 75 | fn ham_d(a: u8, b: u8) -> f64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob7` [INFO] [stderr] --> src/set1/prob7.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn prob7() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob8` [INFO] [stderr] --> src/set1/prob8.rs:7:1 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn prob8() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob9` [INFO] [stderr] --> src/set2/prob9.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn prob9() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob10` [INFO] [stderr] --> src/set2/prob10.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn prob10() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob11` [INFO] [stderr] --> src/set2/prob11.rs:5:1 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn prob11() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ecb_or_cbc_oracle` [INFO] [stderr] --> src/set2/prob11.rs:9:1 [INFO] [stderr] | [INFO] [stderr] 9 | fn ecb_or_cbc_oracle(encryptor: &Fn(&mut Vec) -> Vec) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `rand_encrypt_ecb_or_cbc` [INFO] [stderr] --> src/set2/prob11.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | fn rand_encrypt_ecb_or_cbc(bin: &mut Vec) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `prob12` [INFO] [stderr] --> src/set2/prob12.rs:3:1 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn prob12() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set1` [INFO] [stderr] --> src/main.rs:16:1 [INFO] [stderr] | [INFO] [stderr] 16 | fn set1() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `set2` [INFO] [stderr] --> src/main.rs:27:1 [INFO] [stderr] | [INFO] [stderr] 27 | fn set2() { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/utils.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | (*boxed_dec).decrypt(&mut buff_in, &mut buff_out, true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_must_use)] on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/utils.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | (*boxed_enc).encrypt(&mut buff_in, &mut buff_out, true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.65s [INFO] running `"docker" "inspect" "d321e8cecc776491e04bc862ae3b0b99a1e9b9a7d22fe3d1d5c8f3600a44a9b1"` [INFO] running `"docker" "rm" "-f" "d321e8cecc776491e04bc862ae3b0b99a1e9b9a7d22fe3d1d5c8f3600a44a9b1"` [INFO] [stdout] d321e8cecc776491e04bc862ae3b0b99a1e9b9a7d22fe3d1d5c8f3600a44a9b1