[INFO] cloning repository https://github.com/0xacn/firewall
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/0xacn/firewall" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F0xacn%2Ffirewall", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F0xacn%2Ffirewall'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1e8371e458708f3ecbdfa9f7bc9ab1a29bd5978e
[INFO] testing 0xacn/firewall against 1.76.0 for beta-1.77-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F0xacn%2Ffirewall" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/0xacn/firewall on toolchain 1.76.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/0xacn/firewall
[INFO] finished tweaking git repo https://github.com/0xacn/firewall
[INFO] tweaked toml for git repo https://github.com/0xacn/firewall written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/0xacn/firewall 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" "+1.76.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pnet_transport v0.33.0
[INFO] [stderr]   Downloaded pnet_sys v0.33.0
[INFO] [stderr]   Downloaded pnet_datalink v0.33.0
[INFO] [stderr]   Downloaded pnet v0.33.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c28b6a235b37151d307985837c06845e2bd0cc70d1d2e838225f3002a3924ad2
[INFO] running `Command { std: "docker" "start" "-a" "c28b6a235b37151d307985837c06845e2bd0cc70d1d2e838225f3002a3924ad2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c28b6a235b37151d307985837c06845e2bd0cc70d1d2e838225f3002a3924ad2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c28b6a235b37151d307985837c06845e2bd0cc70d1d2e838225f3002a3924ad2", kill_on_drop: false }`
[INFO] [stdout] c28b6a235b37151d307985837c06845e2bd0cc70d1d2e838225f3002a3924ad2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 29825472a157e8f79425effccb2f1590af72d519f8b588d7fa3f6fd6ae8bd2c0
[INFO] running `Command { std: "docker" "start" "-a" "29825472a157e8f79425effccb2f1590af72d519f8b588d7fa3f6fd6ae8bd2c0", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.58
[INFO] [stderr]    Compiling unicode-ident v1.0.8
[INFO] [stderr]    Compiling quote v1.0.27
[INFO] [stderr]    Compiling no-std-net v0.6.0
[INFO] [stderr]    Compiling libc v0.2.144
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling regex-syntax v0.7.1
[INFO] [stderr]    Compiling pnet_base v0.33.0
[INFO] [stderr]    Compiling serde v1.0.163
[INFO] [stderr]    Compiling pnet_macros_support v0.33.0
[INFO] [stderr]    Compiling tokio v1.28.2
[INFO] [stderr]    Compiling pnet v0.33.0
[INFO] [stderr]    Compiling pin-project-lite v0.2.9
[INFO] [stderr]    Compiling aho-corasick v1.0.1
[INFO] [stderr]    Compiling pnet_sys v0.33.0
[INFO] [stderr]    Compiling regex v1.8.1
[INFO] [stderr]    Compiling ipnetwork v0.20.0
[INFO] [stderr]    Compiling pnet_datalink v0.33.0
[INFO] [stderr]    Compiling pnet_macros v0.33.0
[INFO] [stderr]    Compiling pnet_packet v0.33.0
[INFO] [stderr]    Compiling pnet_transport v0.33.0
[INFO] [stderr]    Compiling firewall v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: expected one of `=` or `|`, found `}`
[INFO] [stdout]   --> src/main.rs:49:1
[INFO] [stdout]    |
[INFO] [stdout] 48 |     if let Some(ethernet)
[INFO] [stdout]    |                          - expected one of `=` or `|`
[INFO] [stdout] 49 | }
[INFO] [stdout]    | ^ unexpected token
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tokio::stream::StreamExt`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tokio::stream::StreamExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `StreamExt` in `stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `main` in `tokio`
[INFO] [stdout]   --> src/main.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[tokio::main]
[INFO] [stdout]    |          ^^^^ could not find `main` in `tokio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `mpsc` in `sync`
[INFO] [stdout]   --> src/main.rs:27:41
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let (mut tx, mut rx) = tokio::sync::mpsc::channel(100);
[INFO] [stdout]    |                                         ^^^^ could not find `mpsc` in `sync`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use std::sync::mpsc;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `mpsc`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 27 -     let (mut tx, mut rx) = tokio::sync::mpsc::channel(100);
[INFO] [stdout] 27 +     let (mut tx, mut rx) = mpsc::channel(100);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `mpsc` in `sync`
[INFO] [stdout]   --> src/main.rs:32:26
[INFO] [stdout]    |
[INFO] [stdout] 32 |     mut tx: tokio::sync::mpsc::Sender<Vec<u8>>,
[INFO] [stdout]    |                          ^^^^ could not find `mpsc` in `sync`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout] 1  + use std::sync::mpsc;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `mpsc`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 32 -     mut tx: tokio::sync::mpsc::Sender<Vec<u8>>,
[INFO] [stdout] 32 +     mut tx: mpsc::Sender<Vec<u8>>,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: module `sync` is private
[INFO] [stdout]    --> src/main.rs:27:35
[INFO] [stdout]     |
[INFO] [stdout] 27  |     let (mut tx, mut rx) = tokio::sync::mpsc::channel(100);
[INFO] [stdout]     |                                   ^^^^ private module
[INFO] [stdout]     |
[INFO] [stdout] note: the module `sync` is defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.28.2/src/lib.rs:543:5
[INFO] [stdout]     |
[INFO] [stdout] 543 |     mod sync;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: module `sync` is private
[INFO] [stdout]    --> src/main.rs:32:20
[INFO] [stdout]     |
[INFO] [stdout] 32  |     mut tx: tokio::sync::mpsc::Sender<Vec<u8>>,
[INFO] [stdout]     |                    ^^^^ private module
[INFO] [stdout]     |
[INFO] [stdout] note: the module `sync` is defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.28.2/src/lib.rs:543:5
[INFO] [stdout]     |
[INFO] [stdout] 543 |     mod sync;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::IpAddr`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::IpAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::process;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EtherTypes`
[INFO] [stdout]  --> src/main.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 | use pnet::packet::ethernet::{EtherTypes, EthernetPacket};
[INFO] [stdout]   |                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pnet::packet::ip::IpNextHeaderProtocols`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use pnet::packet::ip::IpNextHeaderProtocols;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pnet::packet::ipv4::Ipv4Packet`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use pnet::packet::ipv4::Ipv4Packet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pnet::packet::ipv6::Ipv6Packet`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use pnet::packet::ipv6::Ipv6Packet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::task;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `Result<&[u8], std::io::Error>` is not a future
[INFO] [stdout]   --> src/main.rs:40:40
[INFO] [stdout]    |
[INFO] [stdout] 40 |     while let Some(packet) = rx.next().await {
[INFO] [stdout]    |                                       -^^^^^
[INFO] [stdout]    |                                       ||
[INFO] [stdout]    |                                       |`Result<&[u8], std::io::Error>` is not a future
[INFO] [stdout]    |                                       help: remove the `.await`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Future` is not implemented for `Result<&[u8], std::io::Error>`
[INFO] [stdout]    = note: Result<&[u8], std::io::Error> must be a future or must implement `IntoFuture` to be awaited
[INFO] [stdout]    = note: required for `Result<&[u8], std::io::Error>` to implement `IntoFuture`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |   ) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |        -------------------------- expected `Result<(), Box<(dyn std::error::Error + 'static)>>` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 40 | /     while let Some(packet) = rx.next().await {
[INFO] [stdout] 41 | |         let packet = EthernetPacket::new(packet).unwrap();
[INFO] [stdout] 42 | |         let payload = packet.payload();
[INFO] [stdout] 43 | |         tx.send(payload.to_vec()).await.unwrap();
[INFO] [stdout] 44 | |     }
[INFO] [stdout]    | |_____^ expected `Result<(), Box<dyn Error>>`, found `()`
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<(), Box<(dyn std::error::Error + 'static)>>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] help: try adding an expression at the end of the block
[INFO] [stdout]    |
[INFO] [stdout] 44 ~     }
[INFO] [stdout] 45 +     Ok(())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0752]: `main` function is not allowed to be `async`
[INFO] [stdout]   --> src/main.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub async fn main() {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^ `main` function is not allowed to be `async`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 10 previous errors; 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0432, E0433, E0603, E0752.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `firewall` (bin "firewall") due to 11 previous errors; 7 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "29825472a157e8f79425effccb2f1590af72d519f8b588d7fa3f6fd6ae8bd2c0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "29825472a157e8f79425effccb2f1590af72d519f8b588d7fa3f6fd6ae8bd2c0", kill_on_drop: false }`
[INFO] [stdout] 29825472a157e8f79425effccb2f1590af72d519f8b588d7fa3f6fd6ae8bd2c0
[INFO] testing 0xacn/firewall against beta-2024-02-10 for beta-1.77-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F0xacn%2Ffirewall" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/0xacn/firewall on toolchain beta-2024-02-10
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/0xacn/firewall
[INFO] finished tweaking git repo https://github.com/0xacn/firewall
[INFO] tweaked toml for git repo https://github.com/0xacn/firewall written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/0xacn/firewall 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-2024-02-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0c14334edc26871464403567f60a07bb68c9c645297ecf7a1267361e9db84d09
[INFO] running `Command { std: "docker" "start" "-a" "0c14334edc26871464403567f60a07bb68c9c645297ecf7a1267361e9db84d09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0c14334edc26871464403567f60a07bb68c9c645297ecf7a1267361e9db84d09", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0c14334edc26871464403567f60a07bb68c9c645297ecf7a1267361e9db84d09", kill_on_drop: false }`
[INFO] [stdout] 0c14334edc26871464403567f60a07bb68c9c645297ecf7a1267361e9db84d09
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-02-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fad680a153403256e9719e0942835363d2ea147da74270dda6597cae91a0b910
[INFO] running `Command { std: "docker" "start" "-a" "fad680a153403256e9719e0942835363d2ea147da74270dda6597cae91a0b910", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.58
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling unicode-ident v1.0.8
[INFO] [stderr]    Compiling quote v1.0.27
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling no-std-net v0.6.0
[INFO] [stderr]    Compiling libc v0.2.144
[INFO] [stderr]    Compiling regex-syntax v0.7.1
[INFO] [stderr]    Compiling pnet_base v0.33.0
[INFO] [stderr]    Compiling serde v1.0.163
[INFO] [stderr]    Compiling pnet_macros_support v0.33.0
[INFO] [stderr]    Compiling tokio v1.28.2
[INFO] [stderr]    Compiling pnet v0.33.0
[INFO] [stderr]    Compiling pin-project-lite v0.2.9
[INFO] [stderr]    Compiling aho-corasick v1.0.1
[INFO] [stderr]    Compiling pnet_sys v0.33.0
[INFO] [stderr]    Compiling regex v1.8.1
[INFO] [stderr]    Compiling ipnetwork v0.20.0
[INFO] [stderr]    Compiling pnet_datalink v0.33.0
[INFO] [stderr]    Compiling pnet_macros v0.33.0
[INFO] [stderr]    Compiling pnet_packet v0.33.0
[INFO] [stderr]    Compiling pnet_transport v0.33.0
[INFO] [stderr]    Compiling firewall v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: expected one of `=` or `|`, found `}`
[INFO] [stdout]   --> src/main.rs:49:1
[INFO] [stdout]    |
[INFO] [stdout] 48 |     if let Some(ethernet)
[INFO] [stdout]    |                          - expected one of `=` or `|`
[INFO] [stdout] 49 | }
[INFO] [stdout]    | ^ unexpected token
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `tokio::stream::StreamExt`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use tokio::stream::StreamExt;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^ no `StreamExt` in `stream`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `main` in `tokio`
[INFO] [stdout]   --> src/main.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[tokio::main]
[INFO] [stdout]    |          ^^^^ could not find `main` in `tokio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `mpsc` in `sync`
[INFO] [stdout]    --> src/main.rs:27:41
[INFO] [stdout]     |
[INFO] [stdout] 27  |     let (mut tx, mut rx) = tokio::sync::mpsc::channel(100);
[INFO] [stdout]     |                                         ^^^^ could not find `mpsc` in `sync`
[INFO] [stdout]     |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.28.2/src/sync/mod.rs:449:13
[INFO] [stdout]     |
[INFO] [stdout] 449 |     pub mod mpsc;
[INFO] [stdout]     |             ^^^^
[INFO] [stdout]     = note: the item is gated behind the `sync` feature
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout] 1   + use std::sync::mpsc;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `mpsc`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 27  -     let (mut tx, mut rx) = tokio::sync::mpsc::channel(100);
[INFO] [stdout] 27  +     let (mut tx, mut rx) = mpsc::channel(100);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `mpsc` in `sync`
[INFO] [stdout]    --> src/main.rs:32:26
[INFO] [stdout]     |
[INFO] [stdout] 32  |     mut tx: tokio::sync::mpsc::Sender<Vec<u8>>,
[INFO] [stdout]     |                          ^^^^ could not find `mpsc` in `sync`
[INFO] [stdout]     |
[INFO] [stdout] note: found an item that was configured out
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.28.2/src/sync/mod.rs:449:13
[INFO] [stdout]     |
[INFO] [stdout] 449 |     pub mod mpsc;
[INFO] [stdout]     |             ^^^^
[INFO] [stdout]     = note: the item is gated behind the `sync` feature
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]     |
[INFO] [stdout] 1   + use std::sync::mpsc;
[INFO] [stdout]     |
[INFO] [stdout] help: if you import `mpsc`, refer to it directly
[INFO] [stdout]     |
[INFO] [stdout] 32  -     mut tx: tokio::sync::mpsc::Sender<Vec<u8>>,
[INFO] [stdout] 32  +     mut tx: mpsc::Sender<Vec<u8>>,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: module `sync` is private
[INFO] [stdout]    --> src/main.rs:27:35
[INFO] [stdout]     |
[INFO] [stdout] 27  |     let (mut tx, mut rx) = tokio::sync::mpsc::channel(100);
[INFO] [stdout]     |                                   ^^^^ private module
[INFO] [stdout]     |
[INFO] [stdout] note: the module `sync` is defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.28.2/src/lib.rs:543:5
[INFO] [stdout]     |
[INFO] [stdout] 543 |     mod sync;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: module `sync` is private
[INFO] [stdout]    --> src/main.rs:32:20
[INFO] [stdout]     |
[INFO] [stdout] 32  |     mut tx: tokio::sync::mpsc::Sender<Vec<u8>>,
[INFO] [stdout]     |                    ^^^^ private module
[INFO] [stdout]     |
[INFO] [stdout] note: the module `sync` is defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/tokio-1.28.2/src/lib.rs:543:5
[INFO] [stdout]     |
[INFO] [stdout] 543 |     mod sync;
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::IpAddr`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::net::IpAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::process;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EtherTypes`
[INFO] [stdout]  --> src/main.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 | use pnet::packet::ethernet::{EtherTypes, EthernetPacket};
[INFO] [stdout]   |                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pnet::packet::ip::IpNextHeaderProtocols`
[INFO] [stdout]  --> src/main.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use pnet::packet::ip::IpNextHeaderProtocols;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pnet::packet::ipv4::Ipv4Packet`
[INFO] [stdout]  --> src/main.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use pnet::packet::ipv4::Ipv4Packet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pnet::packet::ipv6::Ipv6Packet`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use pnet::packet::ipv6::Ipv6Packet;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task`
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | use tokio::task;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `Result<&[u8], std::io::Error>` is not a future
[INFO] [stdout]   --> src/main.rs:40:40
[INFO] [stdout]    |
[INFO] [stdout] 40 |     while let Some(packet) = rx.next().await {
[INFO] [stdout]    |                                       -^^^^^
[INFO] [stdout]    |                                       ||
[INFO] [stdout]    |                                       |`Result<&[u8], std::io::Error>` is not a future
[INFO] [stdout]    |                                       help: remove the `.await`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Future` is not implemented for `Result<&[u8], std::io::Error>`, which is required by `Result<&[u8], std::io::Error>: IntoFuture`
[INFO] [stdout]    = note: Result<&[u8], std::io::Error> must be a future or must implement `IntoFuture` to be awaited
[INFO] [stdout]    = note: required for `Result<&[u8], std::io::Error>` to implement `IntoFuture`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 33 |   ) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]    |        -------------------------- expected `Result<(), Box<(dyn std::error::Error + 'static)>>` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 40 | /     while let Some(packet) = rx.next().await {
[INFO] [stdout] 41 | |         let packet = EthernetPacket::new(packet).unwrap();
[INFO] [stdout] 42 | |         let payload = packet.payload();
[INFO] [stdout] 43 | |         tx.send(payload.to_vec()).await.unwrap();
[INFO] [stdout] 44 | |     }
[INFO] [stdout]    | |_____^ expected `Result<(), Box<dyn Error>>`, found `()`
[INFO] [stdout]    |
[INFO] [stdout]    = note:   expected enum `Result<(), Box<(dyn std::error::Error + 'static)>>`
[INFO] [stdout]            found unit type `()`
[INFO] [stdout] help: try adding an expression at the end of the block
[INFO] [stdout]    |
[INFO] [stdout] 44 ~     }
[INFO] [stdout] 45 +     Ok(())
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0752]: `main` function is not allowed to be `async`
[INFO] [stdout]   --> src/main.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub async fn main() {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^ `main` function is not allowed to be `async`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 10 previous errors; 7 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0432, E0433, E0603, E0752.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `firewall` (bin "firewall") due to 11 previous errors; 7 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "fad680a153403256e9719e0942835363d2ea147da74270dda6597cae91a0b910", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fad680a153403256e9719e0942835363d2ea147da74270dda6597cae91a0b910", kill_on_drop: false }`
[INFO] [stdout] fad680a153403256e9719e0942835363d2ea147da74270dda6597cae91a0b910
