[INFO] cloning repository https://github.com/ThomasFrans/bootleg-shark [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ThomasFrans/bootleg-shark" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FThomasFrans%2Fbootleg-shark", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FThomasFrans%2Fbootleg-shark'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ace8e4636f448e236fd10442f051ad5a49031e23 [INFO] testing ThomasFrans/bootleg-shark against beta-2025-01-12 for beta-1.85-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FThomasFrans%2Fbootleg-shark" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ThomasFrans/bootleg-shark on toolchain beta-2025-01-12 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-01-12" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ThomasFrans/bootleg-shark [INFO] finished tweaking git repo https://github.com/ThomasFrans/bootleg-shark [INFO] tweaked toml for git repo https://github.com/ThomasFrans/bootleg-shark written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/ThomasFrans/bootleg-shark already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-01-12" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded pnet_sys v0.29.0 [INFO] [stderr] Downloaded pnet_packet v0.29.0 [INFO] [stderr] Downloaded prettytable-rs v0.8.0 [INFO] [stderr] Downloaded pnet_datalink v0.29.0 [INFO] [stderr] Downloaded pnet_macros_support v0.29.0 [INFO] [stderr] Downloaded pnet_transport v0.29.0 [INFO] [stderr] Downloaded pnet v0.29.0 [INFO] [stderr] Downloaded pnet_macros v0.29.0 [INFO] [stderr] Downloaded pnet_base v0.29.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:86ea7c7af713d31e8cfdb68a6d0db50b5cf7cbeecde3d112f9f257f747318d36" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-01-12" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1d10b46231617f9ec98b303aa1da6dbcbcad565ec7787b67e4350d2336d6baf4 [INFO] running `Command { std: "docker" "start" "-a" "1d10b46231617f9ec98b303aa1da6dbcbcad565ec7787b67e4350d2336d6baf4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1d10b46231617f9ec98b303aa1da6dbcbcad565ec7787b67e4350d2336d6baf4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1d10b46231617f9ec98b303aa1da6dbcbcad565ec7787b67e4350d2336d6baf4", kill_on_drop: false }` [INFO] [stdout] 1d10b46231617f9ec98b303aa1da6dbcbcad565ec7787b67e4350d2336d6baf4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:86ea7c7af713d31e8cfdb68a6d0db50b5cf7cbeecde3d112f9f257f747318d36" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-01-12" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 209c2e6d823a8a48ea6d47ebeb2eb6c22df5698fa669fde350f7a6498daad174 [INFO] running `Command { std: "docker" "start" "-a" "209c2e6d823a8a48ea6d47ebeb2eb6c22df5698fa669fde350f7a6498daad174", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.120 [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Compiling serde v1.0.136 [INFO] [stderr] Compiling proc-macro2 v1.0.36 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling syn v1.0.89 [INFO] [stderr] Compiling regex-syntax v0.6.25 [INFO] [stderr] Compiling pnet_base v0.29.0 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling ryu v1.0.9 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling itoa v0.4.8 [INFO] [stderr] Compiling pnet v0.29.0 [INFO] [stderr] Compiling encode_unicode v0.3.6 [INFO] [stderr] Compiling unicode-width v0.1.9 [INFO] [stderr] Compiling pnet_macros_support v0.29.0 [INFO] [stderr] Compiling quote v1.0.15 [INFO] [stderr] Compiling aho-corasick v0.7.18 [INFO] [stderr] Compiling csv-core v0.1.10 [INFO] [stderr] Compiling pnet_sys v0.29.0 [INFO] [stderr] Compiling dirs v1.0.5 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling term v0.5.2 [INFO] [stderr] Compiling regex v1.5.5 [INFO] [stderr] Compiling ipnetwork v0.18.0 [INFO] [stderr] Compiling bstr v0.2.17 [INFO] [stderr] Compiling pnet_macros v0.29.0 [INFO] [stderr] Compiling pnet_datalink v0.29.0 [INFO] [stderr] Compiling csv v1.1.6 [INFO] [stderr] Compiling prettytable-rs v0.8.0 [INFO] [stderr] Compiling pnet_packet v0.29.0 [INFO] [stderr] Compiling pnet_transport v0.29.0 [INFO] [stderr] Compiling pnettest v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/network/ipv4.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/datalink/ethernet.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Display` and `Formatter` [INFO] [stdout] --> src/main.rs:9:16 [INFO] [stdout] | [INFO] [stdout] 9 | use std::fmt::{Display, Formatter}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ipv4Addr` and `Ipv6Addr` [INFO] [stdout] --> src/main.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | use std::net::{Ipv4Addr, Ipv6Addr}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `cell`, `format`, `row`, and `table` [INFO] [stdout] --> src/main.rs:13:19 [INFO] [stdout] | [INFO] [stdout] 13 | use prettytable::{table, row, cell, format}; [INFO] [stdout] | ^^^^^ ^^^ ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/network/icmp.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 26 | ICMP_ECHO => "echo", [INFO] [stdout] | --------- matches any value [INFO] [stdout] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stdout] | ^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/network/icmp.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 26 | ICMP_ECHO => "echo", [INFO] [stdout] | --------- matches any value [INFO] [stdout] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stdout] 28 | _ => "unidentified" [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ICMP_ECHO` [INFO] [stdout] --> src/network/icmp.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | ICMP_ECHO => "echo", [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ICMP_ECHO` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ICMP_ECHO_REPLY` [INFO] [stdout] --> src/network/icmp.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ICMP_ECHO_REPLY` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/datalink/ethernet.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 52 | IPV4 => "ipv4", [INFO] [stdout] | ---- matches any value [INFO] [stdout] 53 | ARP => "ARP", [INFO] [stdout] | ^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match against the value of constant `IPV4` instead of introducing a new catch-all binding [INFO] [stdout] | [INFO] [stdout] 52 | network::IPV4 => "ipv4", [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/datalink/ethernet.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 52 | IPV4 => "ipv4", [INFO] [stdout] | ---- matches any value [INFO] [stdout] 53 | ARP => "ARP", [INFO] [stdout] 54 | IPV6 => "ipv6", [INFO] [stdout] | ^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match against the value of constant `IPV4` instead of introducing a new catch-all binding [INFO] [stdout] | [INFO] [stdout] 52 | network::IPV4 => "ipv4", [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/datalink/ethernet.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 52 | IPV4 => "ipv4", [INFO] [stdout] | ---- matches any value [INFO] [stdout] ... [INFO] [stdout] 55 | _ => "undefined" [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match against the value of constant `IPV4` instead of introducing a new catch-all binding [INFO] [stdout] | [INFO] [stdout] 52 | network::IPV4 => "ipv4", [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `IPV4` [INFO] [stdout] --> src/datalink/ethernet.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | IPV4 => "ipv4", [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_IPV4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ARP` [INFO] [stdout] --> src/datalink/ethernet.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | ARP => "ARP", [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ARP` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `IPV6` [INFO] [stdout] --> src/datalink/ethernet.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | IPV6 => "ipv6", [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_IPV6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/application/dns.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | for i in 0..(tou16(&data[4..6])) as usize { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IGMP` is never used [INFO] [stdout] --> src/transport/mod.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const IGMP: Protocol = 2; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CHAOS` is never used [INFO] [stdout] --> src/transport/mod.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const CHAOS: Protocol = 16; // the protocol I use in my life... [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RDP` is never used [INFO] [stdout] --> src/transport/mod.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const RDP: Protocol = 27; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPV6_ICMP` is never used [INFO] [stdout] --> src/transport/mod.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const IPV6_ICMP: Protocol = 58; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `destination`, `length`, and `checksum` are never used [INFO] [stdout] --> src/transport/udp.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl UDPSegment { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn destination(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn length(&self) -> u16 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn checksum(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `sequence_number`, `acknowledgment_number`, and `checksum` are never used [INFO] [stdout] --> src/transport/tcp.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl TcpSegment { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn sequence_number(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn acknowledgment_number(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn checksum(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WOL` is never used [INFO] [stdout] --> src/network/mod.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const WOL: EthernetType = 0x0842; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RARP` is never used [INFO] [stdout] --> src/network/mod.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const RARP: EthernetType = 0x8035; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GOOSE` is never used [INFO] [stdout] --> src/network/mod.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const GOOSE: EthernetType = 0x88B8; // you mess with the the honk, you get the bonk [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/network/ipv4.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl Ipv4Packet { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 50 | #[inline] [INFO] [stdout] 51 | pub fn version(&self) -> u8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn tos(&self) -> u8 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn total_length(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn id(&self) -> u16 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn flags(&self) -> u8 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn offset(&self) -> u16 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn ttl(&self) -> u8 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn checksum(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn source(&self) -> Ipv4Addr { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn destination(&self) -> Ipv4Addr { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/datalink/ethernet.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Frame { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn source(&self) -> &MacAddr { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `query_answers` is never read [INFO] [stdout] --> src/application/dns.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct DNSQuery { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 15 | query_answers: Vec [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DNSQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `answer_type`, `class`, `ttl`, and `rdlength` are never read [INFO] [stdout] --> src/application/dns.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 26 | struct DNSQueryAnswer { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 27 | name: u16, [INFO] [stdout] | ^^^^ [INFO] [stdout] 28 | answer_type: u16, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 29 | class: u16, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 30 | ttl: u16, [INFO] [stdout] | ^^^ [INFO] [stdout] 31 | rdlength: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DNSQueryAnswer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/transport/udp.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | writeln!(f, "{}", table); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `ICMP_ECHO` should have a snake case name [INFO] [stdout] --> src/network/icmp.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | ICMP_ECHO => "echo", [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `icmp_echo` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `ICMP_ECHO_REPLY` should have a snake case name [INFO] [stdout] --> src/network/icmp.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `icmp_echo_reply` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `IPV4` should have a snake case name [INFO] [stdout] --> src/datalink/ethernet.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | IPV4 => "ipv4", [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `ipv4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `ARP` should have a snake case name [INFO] [stdout] --> src/datalink/ethernet.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | ARP => "ARP", [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `arp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `IPV6` should have a snake case name [INFO] [stdout] --> src/datalink/ethernet.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | IPV6 => "ipv6", [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `ipv6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/application/dns.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | writeln!(f, "{}", table); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/application/dns.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | writeln!(f, "QUERY REQUEST {}", request.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.17s [INFO] running `Command { std: "docker" "inspect" "209c2e6d823a8a48ea6d47ebeb2eb6c22df5698fa669fde350f7a6498daad174", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "209c2e6d823a8a48ea6d47ebeb2eb6c22df5698fa669fde350f7a6498daad174", kill_on_drop: false }` [INFO] [stdout] 209c2e6d823a8a48ea6d47ebeb2eb6c22df5698fa669fde350f7a6498daad174 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:86ea7c7af713d31e8cfdb68a6d0db50b5cf7cbeecde3d112f9f257f747318d36" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-01-12" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c415629350dc15d24c777415df07809d8b3a8938a84f5333a78e86ab4e1cc46d [INFO] running `Command { std: "docker" "start" "-a" "c415629350dc15d24c777415df07809d8b3a8938a84f5333a78e86ab4e1cc46d", kill_on_drop: false }` [INFO] [stderr] Compiling pnettest v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/network/ipv4.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/datalink/ethernet.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Display` and `Formatter` [INFO] [stdout] --> src/main.rs:9:16 [INFO] [stdout] | [INFO] [stdout] 9 | use std::fmt::{Display, Formatter}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Ipv4Addr` and `Ipv6Addr` [INFO] [stdout] --> src/main.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | use std::net::{Ipv4Addr, Ipv6Addr}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `cell`, `format`, `row`, and `table` [INFO] [stdout] --> src/main.rs:13:19 [INFO] [stdout] | [INFO] [stdout] 13 | use prettytable::{table, row, cell, format}; [INFO] [stdout] | ^^^^^ ^^^ ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/network/icmp.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 26 | ICMP_ECHO => "echo", [INFO] [stdout] | --------- matches any value [INFO] [stdout] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stdout] | ^^^^^^^^^^^^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/network/icmp.rs:28:13 [INFO] [stdout] | [INFO] [stdout] 26 | ICMP_ECHO => "echo", [INFO] [stdout] | --------- matches any value [INFO] [stdout] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stdout] 28 | _ => "unidentified" [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ICMP_ECHO` [INFO] [stdout] --> src/network/icmp.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | ICMP_ECHO => "echo", [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ICMP_ECHO` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ICMP_ECHO_REPLY` [INFO] [stdout] --> src/network/icmp.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ICMP_ECHO_REPLY` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/datalink/ethernet.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 52 | IPV4 => "ipv4", [INFO] [stdout] | ---- matches any value [INFO] [stdout] 53 | ARP => "ARP", [INFO] [stdout] | ^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match against the value of constant `IPV4` instead of introducing a new catch-all binding [INFO] [stdout] | [INFO] [stdout] 52 | network::IPV4 => "ipv4", [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/datalink/ethernet.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 52 | IPV4 => "ipv4", [INFO] [stdout] | ---- matches any value [INFO] [stdout] 53 | ARP => "ARP", [INFO] [stdout] 54 | IPV6 => "ipv6", [INFO] [stdout] | ^^^^ no value can reach this [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match against the value of constant `IPV4` instead of introducing a new catch-all binding [INFO] [stdout] | [INFO] [stdout] 52 | network::IPV4 => "ipv4", [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/datalink/ethernet.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 52 | IPV4 => "ipv4", [INFO] [stdout] | ---- matches any value [INFO] [stdout] ... [INFO] [stdout] 55 | _ => "undefined" [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match against the value of constant `IPV4` instead of introducing a new catch-all binding [INFO] [stdout] | [INFO] [stdout] 52 | network::IPV4 => "ipv4", [INFO] [stdout] | ~~~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `IPV4` [INFO] [stdout] --> src/datalink/ethernet.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | IPV4 => "ipv4", [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_IPV4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ARP` [INFO] [stdout] --> src/datalink/ethernet.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | ARP => "ARP", [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ARP` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `IPV6` [INFO] [stdout] --> src/datalink/ethernet.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | IPV6 => "ipv6", [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_IPV6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/application/dns.rs:71:13 [INFO] [stdout] | [INFO] [stdout] 71 | for i in 0..(tou16(&data[4..6])) as usize { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IGMP` is never used [INFO] [stdout] --> src/transport/mod.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const IGMP: Protocol = 2; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CHAOS` is never used [INFO] [stdout] --> src/transport/mod.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const CHAOS: Protocol = 16; // the protocol I use in my life... [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RDP` is never used [INFO] [stdout] --> src/transport/mod.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const RDP: Protocol = 27; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IPV6_ICMP` is never used [INFO] [stdout] --> src/transport/mod.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const IPV6_ICMP: Protocol = 58; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `destination`, `length`, and `checksum` are never used [INFO] [stdout] --> src/transport/udp.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl UDPSegment { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn destination(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn length(&self) -> u16 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn checksum(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `sequence_number`, `acknowledgment_number`, and `checksum` are never used [INFO] [stdout] --> src/transport/tcp.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl TcpSegment { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn sequence_number(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn acknowledgment_number(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn checksum(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WOL` is never used [INFO] [stdout] --> src/network/mod.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const WOL: EthernetType = 0x0842; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RARP` is never used [INFO] [stdout] --> src/network/mod.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const RARP: EthernetType = 0x8035; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GOOSE` is never used [INFO] [stdout] --> src/network/mod.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const GOOSE: EthernetType = 0x88B8; // you mess with the the honk, you get the bonk [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/network/ipv4.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 49 | impl Ipv4Packet { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 50 | #[inline] [INFO] [stdout] 51 | pub fn version(&self) -> u8 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn tos(&self) -> u8 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn total_length(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn id(&self) -> u16 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn flags(&self) -> u8 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn offset(&self) -> u16 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn ttl(&self) -> u8 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn checksum(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn source(&self) -> Ipv4Addr { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn destination(&self) -> Ipv4Addr { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `source` is never used [INFO] [stdout] --> src/datalink/ethernet.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Frame { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn source(&self) -> &MacAddr { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `query_answers` is never read [INFO] [stdout] --> src/application/dns.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct DNSQuery { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 15 | query_answers: Vec [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DNSQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `answer_type`, `class`, `ttl`, and `rdlength` are never read [INFO] [stdout] --> src/application/dns.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 26 | struct DNSQueryAnswer { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 27 | name: u16, [INFO] [stdout] | ^^^^ [INFO] [stdout] 28 | answer_type: u16, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 29 | class: u16, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 30 | ttl: u16, [INFO] [stdout] | ^^^ [INFO] [stdout] 31 | rdlength: u16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DNSQueryAnswer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/transport/udp.rs:66:9 [INFO] [stdout] | [INFO] [stdout] 66 | writeln!(f, "{}", table); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `ICMP_ECHO` should have a snake case name [INFO] [stdout] --> src/network/icmp.rs:26:13 [INFO] [stdout] | [INFO] [stdout] 26 | ICMP_ECHO => "echo", [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `icmp_echo` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `ICMP_ECHO_REPLY` should have a snake case name [INFO] [stdout] --> src/network/icmp.rs:27:13 [INFO] [stdout] | [INFO] [stdout] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `icmp_echo_reply` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `IPV4` should have a snake case name [INFO] [stdout] --> src/datalink/ethernet.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | IPV4 => "ipv4", [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `ipv4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `ARP` should have a snake case name [INFO] [stdout] --> src/datalink/ethernet.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | ARP => "ARP", [INFO] [stdout] | ^^^ help: convert the identifier to snake case: `arp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `IPV6` should have a snake case name [INFO] [stdout] --> src/datalink/ethernet.rs:54:13 [INFO] [stdout] | [INFO] [stdout] 54 | IPV6 => "ipv6", [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `ipv6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/application/dns.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | writeln!(f, "{}", table); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/application/dns.rs:105:13 [INFO] [stdout] | [INFO] [stdout] 105 | writeln!(f, "QUERY REQUEST {}", request.0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.52s [INFO] running `Command { std: "docker" "inspect" "c415629350dc15d24c777415df07809d8b3a8938a84f5333a78e86ab4e1cc46d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c415629350dc15d24c777415df07809d8b3a8938a84f5333a78e86ab4e1cc46d", kill_on_drop: false }` [INFO] [stdout] c415629350dc15d24c777415df07809d8b3a8938a84f5333a78e86ab4e1cc46d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:86ea7c7af713d31e8cfdb68a6d0db50b5cf7cbeecde3d112f9f257f747318d36" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-01-12" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] de53a46b49af4aa3c86a47dd5ce7c56b56d5745934750a2f65d0ecdc04a620f0 [INFO] running `Command { std: "docker" "start" "-a" "de53a46b49af4aa3c86a47dd5ce7c56b56d5745934750a2f65d0ecdc04a620f0", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/network/ipv4.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/datalink/ethernet.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Display` and `Formatter` [INFO] [stderr] --> src/main.rs:9:16 [INFO] [stderr] | [INFO] [stderr] 9 | use std::fmt::{Display, Formatter}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Ipv4Addr` and `Ipv6Addr` [INFO] [stderr] --> src/main.rs:11:16 [INFO] [stderr] | [INFO] [stderr] 11 | use std::net::{Ipv4Addr, Ipv6Addr}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Deref` [INFO] [stderr] --> src/main.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::ops::Deref; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `cell`, `format`, `row`, and `table` [INFO] [stderr] --> src/main.rs:13:19 [INFO] [stderr] | [INFO] [stderr] 13 | use prettytable::{table, row, cell, format}; [INFO] [stderr] | ^^^^^ ^^^ ^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/network/icmp.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 26 | ICMP_ECHO => "echo", [INFO] [stderr] | --------- matches any value [INFO] [stderr] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stderr] | ^^^^^^^^^^^^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/network/icmp.rs:28:13 [INFO] [stderr] | [INFO] [stderr] 26 | ICMP_ECHO => "echo", [INFO] [stderr] | --------- matches any value [INFO] [stderr] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stderr] 28 | _ => "unidentified" [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ICMP_ECHO` [INFO] [stderr] --> src/network/icmp.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | ICMP_ECHO => "echo", [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ICMP_ECHO` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ICMP_ECHO_REPLY` [INFO] [stderr] --> src/network/icmp.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ICMP_ECHO_REPLY` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/datalink/ethernet.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 52 | IPV4 => "ipv4", [INFO] [stderr] | ---- matches any value [INFO] [stderr] 53 | ARP => "ARP", [INFO] [stderr] | ^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] help: you might have meant to pattern match against the value of constant `IPV4` instead of introducing a new catch-all binding [INFO] [stderr] | [INFO] [stderr] 52 | network::IPV4 => "ipv4", [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/datalink/ethernet.rs:54:13 [INFO] [stderr] | [INFO] [stderr] 52 | IPV4 => "ipv4", [INFO] [stderr] | ---- matches any value [INFO] [stderr] 53 | ARP => "ARP", [INFO] [stderr] 54 | IPV6 => "ipv6", [INFO] [stderr] | ^^^^ no value can reach this [INFO] [stderr] | [INFO] [stderr] help: you might have meant to pattern match against the value of constant `IPV4` instead of introducing a new catch-all binding [INFO] [stderr] | [INFO] [stderr] 52 | network::IPV4 => "ipv4", [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/datalink/ethernet.rs:55:13 [INFO] [stderr] | [INFO] [stderr] 52 | IPV4 => "ipv4", [INFO] [stderr] | ---- matches any value [INFO] [stderr] ... [INFO] [stderr] 55 | _ => "undefined" [INFO] [stderr] | ^ no value can reach this [INFO] [stderr] | [INFO] [stderr] help: you might have meant to pattern match against the value of constant `IPV4` instead of introducing a new catch-all binding [INFO] [stderr] | [INFO] [stderr] 52 | network::IPV4 => "ipv4", [INFO] [stderr] | ~~~~~~~~~~~~~ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `IPV4` [INFO] [stderr] --> src/datalink/ethernet.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | IPV4 => "ipv4", [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_IPV4` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ARP` [INFO] [stderr] --> src/datalink/ethernet.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | ARP => "ARP", [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_ARP` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `IPV6` [INFO] [stderr] --> src/datalink/ethernet.rs:54:13 [INFO] [stderr] | [INFO] [stderr] 54 | IPV6 => "ipv6", [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_IPV6` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/application/dns.rs:71:13 [INFO] [stderr] | [INFO] [stderr] 71 | for i in 0..(tou16(&data[4..6])) as usize { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: constant `IGMP` is never used [INFO] [stderr] --> src/transport/mod.rs:8:11 [INFO] [stderr] | [INFO] [stderr] 8 | pub const IGMP: Protocol = 2; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant `CHAOS` is never used [INFO] [stderr] --> src/transport/mod.rs:10:11 [INFO] [stderr] | [INFO] [stderr] 10 | pub const CHAOS: Protocol = 16; // the protocol I use in my life... [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RDP` is never used [INFO] [stderr] --> src/transport/mod.rs:12:11 [INFO] [stderr] | [INFO] [stderr] 12 | pub const RDP: Protocol = 27; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `IPV6_ICMP` is never used [INFO] [stderr] --> src/transport/mod.rs:13:11 [INFO] [stderr] | [INFO] [stderr] 13 | pub const IPV6_ICMP: Protocol = 58; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `destination`, `length`, and `checksum` are never used [INFO] [stderr] --> src/transport/udp.rs:21:12 [INFO] [stderr] | [INFO] [stderr] 14 | impl UDPSegment { [INFO] [stderr] | --------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 21 | pub fn destination(&self) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 26 | pub fn length(&self) -> u16 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 31 | pub fn checksum(&self) -> u16 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `sequence_number`, `acknowledgment_number`, and `checksum` are never used [INFO] [stderr] --> src/transport/tcp.rs:26:12 [INFO] [stderr] | [INFO] [stderr] 14 | impl TcpSegment { [INFO] [stderr] | --------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 26 | pub fn sequence_number(&self) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 31 | pub fn acknowledgment_number(&self) -> u32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 41 | pub fn checksum(&self) -> u16 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `WOL` is never used [INFO] [stderr] --> src/network/mod.rs:10:11 [INFO] [stderr] | [INFO] [stderr] 10 | pub const WOL: EthernetType = 0x0842; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RARP` is never used [INFO] [stderr] --> src/network/mod.rs:11:11 [INFO] [stderr] | [INFO] [stderr] 11 | pub const RARP: EthernetType = 0x8035; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `GOOSE` is never used [INFO] [stderr] --> src/network/mod.rs:14:11 [INFO] [stderr] | [INFO] [stderr] 14 | pub const GOOSE: EthernetType = 0x88B8; // you mess with the the honk, you get the bonk [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/network/ipv4.rs:51:12 [INFO] [stderr] | [INFO] [stderr] 49 | impl Ipv4Packet { [INFO] [stderr] | --------------- methods in this implementation [INFO] [stderr] 50 | #[inline] [INFO] [stderr] 51 | pub fn version(&self) -> u8 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 61 | pub fn tos(&self) -> u8 { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 66 | pub fn total_length(&self) -> u16 { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 71 | pub fn id(&self) -> u16 { [INFO] [stderr] | ^^ [INFO] [stderr] ... [INFO] [stderr] 76 | pub fn flags(&self) -> u8 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 81 | pub fn offset(&self) -> u16 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 86 | pub fn ttl(&self) -> u8 { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 96 | pub fn checksum(&self) -> u16 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 101 | pub fn source(&self) -> Ipv4Addr { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 106 | pub fn destination(&self) -> Ipv4Addr { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `source` is never used [INFO] [stderr] --> src/datalink/ethernet.rs:22:12 [INFO] [stderr] | [INFO] [stderr] 15 | impl Frame { [INFO] [stderr] | ---------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 22 | pub fn source(&self) -> &MacAddr { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `query_answers` is never read [INFO] [stderr] --> src/application/dns.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 7 | pub struct DNSQuery { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 15 | query_answers: Vec [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DNSQuery` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name`, `answer_type`, `class`, `ttl`, and `rdlength` are never read [INFO] [stderr] --> src/application/dns.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 26 | struct DNSQueryAnswer { [INFO] [stderr] | -------------- fields in this struct [INFO] [stderr] 27 | name: u16, [INFO] [stderr] | ^^^^ [INFO] [stderr] 28 | answer_type: u16, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 29 | class: u16, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 30 | ttl: u16, [INFO] [stderr] | ^^^ [INFO] [stderr] 31 | rdlength: u16, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DNSQueryAnswer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/transport/udp.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | writeln!(f, "{}", table); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variable `ICMP_ECHO` should have a snake case name [INFO] [stderr] --> src/network/icmp.rs:26:13 [INFO] [stderr] | [INFO] [stderr] 26 | ICMP_ECHO => "echo", [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case: `icmp_echo` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable `ICMP_ECHO_REPLY` should have a snake case name [INFO] [stderr] --> src/network/icmp.rs:27:13 [INFO] [stderr] | [INFO] [stderr] 27 | ICMP_ECHO_REPLY => "echo reply", [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `icmp_echo_reply` [INFO] [stderr] [INFO] [stderr] warning: variable `IPV4` should have a snake case name [INFO] [stderr] --> src/datalink/ethernet.rs:52:13 [INFO] [stderr] | [INFO] [stderr] 52 | IPV4 => "ipv4", [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `ipv4` [INFO] [stderr] [INFO] [stderr] warning: variable `ARP` should have a snake case name [INFO] [stderr] --> src/datalink/ethernet.rs:53:13 [INFO] [stderr] | [INFO] [stderr] 53 | ARP => "ARP", [INFO] [stderr] | ^^^ help: convert the identifier to snake case: `arp` [INFO] [stderr] [INFO] [stderr] warning: variable `IPV6` should have a snake case name [INFO] [stderr] --> src/datalink/ethernet.rs:54:13 [INFO] [stderr] | [INFO] [stderr] 54 | IPV6 => "ipv6", [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `ipv6` [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/application/dns.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | writeln!(f, "{}", table); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/application/dns.rs:105:13 [INFO] [stderr] | [INFO] [stderr] 105 | writeln!(f, "QUERY REQUEST {}", request.0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `pnettest` (bin "pnettest" test) generated 38 warnings (run `cargo fix --bin "pnettest" --tests` to apply 9 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/pnettest-8ce17a41f692679f) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "de53a46b49af4aa3c86a47dd5ce7c56b56d5745934750a2f65d0ecdc04a620f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "de53a46b49af4aa3c86a47dd5ce7c56b56d5745934750a2f65d0ecdc04a620f0", kill_on_drop: false }` [INFO] [stdout] de53a46b49af4aa3c86a47dd5ce7c56b56d5745934750a2f65d0ecdc04a620f0