[INFO] fetching crate min_shark 0.6.0... [INFO] testing min_shark-0.6.0 against beta-2025-10-28 for beta-1.92-2 [INFO] extracting crate min_shark 0.6.0 into /workspace/builds/worker-1-tc2/source [INFO] started tweaking crates.io crate min_shark 0.6.0 [INFO] finished tweaking crates.io crate min_shark 0.6.0 [INFO] tweaked toml for crates.io crate min_shark 0.6.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate min_shark 0.6.0 on toolchain beta-2025-10-28 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 37 packages to latest compatible versions [INFO] [stderr] Adding derive_more v1.0.0 (available: v2.0.1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8d098bb72bd1abdde86acb06e6960517336d43e04974cc68aa4bfbfcad19f305 [INFO] running `Command { std: "docker" "start" "-a" "8d098bb72bd1abdde86acb06e6960517336d43e04974cc68aa4bfbfcad19f305", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8d098bb72bd1abdde86acb06e6960517336d43e04974cc68aa4bfbfcad19f305", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8d098bb72bd1abdde86acb06e6960517336d43e04974cc68aa4bfbfcad19f305", kill_on_drop: false }` [INFO] [stdout] 8d098bb72bd1abdde86acb06e6960517336d43e04974cc68aa4bfbfcad19f305 [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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] fb489d66011d2f1e095b2e151503e7f961005636fe73dc6c6ca16a46b03de6eb [INFO] running `Command { std: "docker" "start" "-a" "fb489d66011d2f1e095b2e151503e7f961005636fe73dc6c6ca16a46b03de6eb", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling syn v2.0.108 [INFO] [stderr] Compiling convert_case v0.6.0 [INFO] [stderr] Compiling derive_more-impl v1.0.0 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling derive_more v1.0.0 [INFO] [stderr] Compiling min_shark v0.6.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/expression.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | pub fn matcher(&self) -> Matcher { [INFO] [stdout] | ^^^^^ ^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 478 | pub fn matcher(&self) -> Matcher<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.96s [INFO] running `Command { std: "docker" "inspect" "fb489d66011d2f1e095b2e151503e7f961005636fe73dc6c6ca16a46b03de6eb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fb489d66011d2f1e095b2e151503e7f961005636fe73dc6c6ca16a46b03de6eb", kill_on_drop: false }` [INFO] [stdout] fb489d66011d2f1e095b2e151503e7f961005636fe73dc6c6ca16a46b03de6eb [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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a20917b49f503bf413b848febcbae5118c963fa8a589c80338993f6a6ac345d0 [INFO] running `Command { std: "docker" "start" "-a" "a20917b49f503bf413b848febcbae5118c963fa8a589c80338993f6a6ac345d0", kill_on_drop: false }` [INFO] [stderr] Compiling nu-ansi-term v0.50.3 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling syn v2.0.108 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling matchers v0.2.0 [INFO] [stderr] Compiling derive_more-impl v1.0.0 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling tracing-subscriber v0.3.20 [INFO] [stderr] Compiling derive_more v1.0.0 [INFO] [stderr] Compiling min_shark v0.6.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/expression.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | pub fn matcher(&self) -> Matcher { [INFO] [stdout] | ^^^^^ ^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 478 | pub fn matcher(&self) -> Matcher<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/expression.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | pub fn matcher(&self) -> Matcher { [INFO] [stdout] | ^^^^^ ^^^^^^^ [INFO] [stdout] | | | [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is hidden here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 478 | pub fn matcher(&self) -> Matcher<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 12.62s [INFO] running `Command { std: "docker" "inspect" "a20917b49f503bf413b848febcbae5118c963fa8a589c80338993f6a6ac345d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a20917b49f503bf413b848febcbae5118c963fa8a589c80338993f6a6ac345d0", kill_on_drop: false }` [INFO] [stdout] a20917b49f503bf413b848febcbae5118c963fa8a589c80338993f6a6ac345d0 [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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] b7e2d05992d748aedcb96fddc3bebc3300a6325d147a21e3dbc56462311c3d2d [INFO] running `Command { std: "docker" "start" "-a" "b7e2d05992d748aedcb96fddc3bebc3300a6325d147a21e3dbc56462311c3d2d", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] [INFO] [stderr] --> src/expression.rs:478:20 [INFO] [stdout] running 84 tests [INFO] [stderr] | [INFO] [stderr] 478 | pub fn matcher(&self) -> Matcher { [INFO] [stderr] | ^^^^^ ^^^^^^^ [INFO] [stderr] | | | [INFO] [stderr] | | the same lifetime is hidden here [INFO] [stderr] | | the same lifetime is hidden here [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 478 | pub fn matcher(&self) -> Matcher<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `min_shark` (lib) generated 1 warning (run `cargo fix --lib -p min_shark` to apply 1 suggestion) [INFO] [stderr] warning: `min_shark` (lib test) generated 1 warning (1 duplicate) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/min_shark-11b3852f166eb028) [INFO] [stdout] 2025-11-05T02:53:44.599863Z  INFO min_shark::expression::tests: Evaluating expression "(not arp and port in [80, 443])" [INFO] [stdout] test driver::tests::test_parse_error_missing_closing_brace_ip ... ok [INFO] [stdout] 2025-11-05T02:53:44.603677Z  INFO min_shark::expression::tests: Evaluating expression "And([])" [INFO] [stdout] test driver::tests::test_parse_error_bad_comparison_op ... ok [INFO] [stdout] 2025-11-05T02:53:44.603861Z  INFO min_shark::expression::tests: Evaluating expression "Or([])" [INFO] [stdout] test driver::tests::test_parse_error_bad_ip_val_02 ... ok [INFO] [stdout] test driver::tests::test_parse_error_bad_ip_val_01 ... ok [INFO] [stdout] test driver::tests::test_filter_too_long ... ok [INFO] [stdout] test driver::tests::test_parse_error_extraneous_data ... ok [INFO] [stdout] test driver::tests::test_parse_error_bad_byte_string ... ok [INFO] [stdout] test driver::tests::test_parse_error_empty_filter ... ok [INFO] [stdout] test driver::tests::test_parse_error_missing_operation_eth ... ok [INFO] [stdout] test driver::tests::test_parse_error_whitespace ... ok [INFO] [stdout] test driver::tests::test_parse_error_wrong_closing_brace_ip ... ok [INFO] [stdout] test driver::tests::test_parse_error_wrong_missing_brace_eth ... ok [INFO] [stdout] test expression::tests::test_complex_not_arp_expression ... ok [INFO] [stdout] test expression::tests::test_matcher_usage ... ok [INFO] [stdout] 2025-11-05T02:53:44.604816Z  INFO min_shark::expression::tests: Evaluating expression "arp" [INFO] [stdout] test expression::tests::test_merge_and ... 2025-11-05T02:53:44.604862Z  INFO min_shark::expression::tests: Evaluating expression "arp" [INFO] [stdout] ok [INFO] [stdout] 2025-11-05T02:53:44.604872Z  INFO min_shark::expression::tests: Evaluating expression "not arp" [INFO] [stdout] 2025-11-05T02:53:44.604882Z  INFO min_shark::expression::tests: Evaluating expression "not arp" [INFO] [stdout] test expression::tests::test_empty_expression ... ok [INFO] [stdout] test expression::tests::test_merge_or ... ok [INFO] [stdout] test expression::tests::test_merge_two_and ... ok [INFO] [stdout] test expression::tests::test_single_clause_arp_expression ... ok [INFO] [stdout] test expression::tests::test_no_merge_and ... ok [INFO] [stdout] test input::tests::test_input_error ... ok2025-11-05T02:53:44.604719Z  INFO min_shark::expression::tests: Evaluating expression "not tcp" [INFO] [stdout] 2025-11-05T02:53:44.606582Z  INFO min_shark::expression::tests: Evaluating expression "ip.src == 10.1.1.2/32" [INFO] [stdout] 2025-11-05T02:53:44.606793Z  INFO min_shark::expression::tests: Evaluating expression "udp" [INFO] [stdout] 2025-11-05T02:53:44.606663Z  INFO min_shark::expression::tests: Evaluating expression "ip == 10.1.1.0/16" [INFO] [stdout] 2025-11-05T02:53:44.606994Z  INFO min_shark::expression::tests: Evaluating expression "ip == 192.168.66.1/24" [INFO] [stdout] 2025-11-05T02:53:44.607086Z  INFO min_shark::expression::tests: Evaluating expression "ip.src == 10.1.1.0/16" [INFO] [stdout] 2025-11-05T02:53:44.607168Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst == 192.168.66.1/24" [INFO] [stdout] 2025-11-05T02:53:44.607273Z  INFO min_shark::expression::tests: Evaluating expression "ip in [10.1.1.0/16]" [INFO] [stdout] 2025-11-05T02:53:44.607400Z  INFO min_shark::expression::tests: Evaluating expression "ip in [192.168.66.1/24]" [INFO] [stdout] 2025-11-05T02:53:44.607504Z  INFO min_shark::expression::tests: Evaluating expression "port == 26112" [INFO] [stdout] 2025-11-05T02:53:44.607198Z  INFO min_shark::expression::tests: Evaluating expression "((tcp or not udp) and ip.dst == 192.168.66.0/24 and ip.src == 10.1.1.0/30 and payload matches "\D+")" [INFO] [stdout] 2025-11-05T02:53:44.607536Z  INFO min_shark::expression::tests: Evaluating expression "port == 80" [INFO] [stdout] 2025-11-05T02:53:44.607545Z  INFO min_shark::expression::tests: Evaluating expression "srcport == 26112" [INFO] [stdout] 2025-11-05T02:53:44.607553Z  INFO min_shark::expression::tests: Evaluating expression "dstport == 80" [INFO] [stdout] 2025-11-05T02:53:44.607561Z  INFO min_shark::expression::tests: Evaluating expression "port in [26112]" [INFO] [stdout] 2025-11-05T02:53:44.607571Z  INFO min_shark::expression::tests: Evaluating expression "port in [80]" [INFO] [stdout] 2025-11-05T02:53:44.607578Z  INFO min_shark::expression::tests: Evaluating expression "port not in [1, 2, 3]" [INFO] [stdout] 2025-11-05T02:53:44.607587Z  INFO min_shark::expression::tests: Evaluating expression "srcport in [26112]" [INFO] [stdout] 2025-11-05T02:53:44.607594Z  INFO min_shark::expression::tests: Evaluating expression "dstport in [80]" [INFO] [stdout] 2025-11-05T02:53:44.607602Z  INFO min_shark::expression::tests: Evaluating expression "dstport not in [1, 2, 3]" [INFO] [stdout] 2025-11-05T02:53:44.606739Z  INFO min_shark::expression::tests: Evaluating expression "tcp" [INFO] [stdout] 2025-11-05T02:53:44.607430Z  INFO min_shark::expression::tests: Evaluating expression "payload.len >= 0" [INFO] [stdout] 2025-11-05T02:53:44.607714Z  INFO min_shark::expression::tests: Evaluating expression "payload.len > 0" [INFO] [stdout] 2025-11-05T02:53:44.607727Z  INFO min_shark::expression::tests: Evaluating expression "payload.len <= 100" [INFO] [stdout] 2025-11-05T02:53:44.607736Z  INFO min_shark::expression::tests: Evaluating expression "payload.len < 100" [INFO] [stdout] 2025-11-05T02:53:44.607743Z  INFO min_shark::expression::tests: Evaluating expression "payload.len == 75" [INFO] [stdout] 2025-11-05T02:53:44.607751Z  INFO min_shark::expression::tests: Evaluating expression "payload.len != 16" [INFO] [stdout] 2025-11-05T02:53:44.607511Z  INFO min_shark::expression::tests: Evaluating expression "ip.src in [10.1.1.0/16]" [INFO] [stdout] 2025-11-05T02:53:44.607827Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst in [192.168.66.1/24]" [INFO] [stdout] 2025-11-05T02:53:44.607847Z  INFO min_shark::expression::tests: Evaluating expression "ip.src not in [192.168.66.1/24]" [INFO] [stdout] 2025-11-05T02:53:44.607856Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst not in [10.1.1.0/16]" [INFO] [stdout] 2025-11-05T02:53:44.606886Z  INFO min_shark::expression::tests: Evaluating expression "vlan" [INFO] [stdout] 2025-11-05T02:53:44.607878Z  INFO min_shark::expression::tests: Evaluating expression "vlan.id == 2" [INFO] [stdout] 2025-11-05T02:53:44.607901Z  INFO min_shark::expression::tests: Evaluating expression "vlan.id != 3" [INFO] [stdout] 2025-11-05T02:53:44.607910Z  INFO min_shark::expression::tests: Evaluating expression "vlan.id <= 2" [INFO] [stdout] 2025-11-05T02:53:44.607920Z  INFO min_shark::expression::tests: Evaluating expression "vlan.id < 3" [INFO] [stdout] 2025-11-05T02:53:44.607936Z  INFO min_shark::expression::tests: Evaluating expression "vlan.id >= 2" [INFO] [stdout] 2025-11-05T02:53:44.607945Z  INFO min_shark::expression::tests: Evaluating expression "vlan.id > 1" [INFO] [stdout] 2025-11-05T02:53:44.607954Z  INFO min_shark::expression::tests: Evaluating expression "vlan.id in [1, 2, 3, 4]" [INFO] [stdout] 2025-11-05T02:53:44.606791Z  INFO min_shark::expression::tests: Evaluating expression "ip.src != 192.168.66.1/32" [INFO] [stdout] 2025-11-05T02:53:44.608012Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst == 192.168.66.1/32" [INFO] [stdout] 2025-11-05T02:53:44.608025Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst != 10.1.1.2/32" [INFO] [stdout] 2025-11-05T02:53:44.608036Z  INFO min_shark::expression::tests: Evaluating expression "ip.src >= 10.1.1.2/32" [INFO] [stdout] 2025-11-05T02:53:44.608046Z  INFO min_shark::expression::tests: Evaluating expression "ip.src >= 10.1.1.1/32" [INFO] [stdout] 2025-11-05T02:53:44.608056Z  INFO min_shark::expression::tests: Evaluating expression "ip.src > 10.1.1.1/32" [INFO] [stdout] 2025-11-05T02:53:44.608065Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst >= 192.168.66.1/32" [INFO] [stdout] 2025-11-05T02:53:44.608075Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst >= 192.168.66.0/32" [INFO] [stdout] 2025-11-05T02:53:44.608085Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst > 192.168.66.0/32" [INFO] [stdout] 2025-11-05T02:53:44.608095Z  INFO min_shark::expression::tests: Evaluating expression "ip.src <= 10.1.1.2/32" [INFO] [stdout] 2025-11-05T02:53:44.608105Z  INFO min_shark::expression::tests: Evaluating expression "ip.src <= 10.1.1.3/32" [INFO] [stdout] 2025-11-05T02:53:44.608114Z  INFO min_shark::expression::tests: Evaluating expression "ip.src < 10.1.1.3/32" [INFO] [stdout] 2025-11-05T02:53:44.608124Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst <= 192.168.66.1/32" [INFO] [stdout] 2025-11-05T02:53:44.608134Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst <= 192.168.66.2/32" [INFO] [stdout] 2025-11-05T02:53:44.608144Z  INFO min_shark::expression::tests: Evaluating expression "ip.dst < 192.168.66.2/32" [INFO] [stdout] 2025-11-05T02:53:44.606938Z  INFO min_shark::expression::tests: Evaluating expression "eth == abcdef010203" [INFO] [stdout] 2025-11-05T02:53:44.608224Z  INFO min_shark::expression::tests: Evaluating expression "eth.src == abcdef010203" [INFO] [stdout] 2025-11-05T02:53:44.608242Z  INFO min_shark::expression::tests: Evaluating expression "eth == 010203040506" [INFO] [stdout] 2025-11-05T02:53:44.608253Z  INFO min_shark::expression::tests: Evaluating expression "eth.dst == 010203040506" [INFO] [stdout] 2025-11-05T02:53:44.608263Z  INFO min_shark::expression::tests: Evaluating expression "eth >= abcdef010203" [INFO] [stdout] 2025-11-05T02:53:44.608274Z  INFO min_shark::expression::tests: Evaluating expression "eth.src >= abcdef010203" [INFO] [stdout] 2025-11-05T02:53:44.608284Z  INFO min_shark::expression::tests: Evaluating expression "eth >= 010203040506" [INFO] [stdout] 2025-11-05T02:53:44.608294Z  INFO min_shark::expression::tests: Evaluating expression "eth.dst >= 010203040506" [INFO] [stdout] 2025-11-05T02:53:44.608304Z  INFO min_shark::expression::tests: Evaluating expression "eth.dst > 010203040504" [INFO] [stdout] 2025-11-05T02:53:44.608332Z  INFO min_shark::expression::tests: Evaluating expression "eth <= abcdef010203" [INFO] [stdout] 2025-11-05T02:53:44.608342Z  INFO min_shark::expression::tests: Evaluating expression "eth.src <= abcdef010203" [INFO] [stdout] 2025-11-05T02:53:44.608352Z  INFO min_shark::expression::tests: Evaluating expression "eth <= 010203040506" [INFO] [stdout] 2025-11-05T02:53:44.608362Z  INFO min_shark::expression::tests: Evaluating expression "eth.dst <= 010203040506" [INFO] [stdout] 2025-11-05T02:53:44.608374Z  INFO min_shark::expression::tests: Evaluating expression "eth.dst < 010203040507" [INFO] [stdout] 2025-11-05T02:53:44.608385Z  INFO min_shark::expression::tests: Evaluating expression "eth.src != 010203040506" [INFO] [stdout] 2025-11-05T02:53:44.608395Z  INFO min_shark::expression::tests: Evaluating expression "eth.dst != abcdef010203" [INFO] [stdout] 2025-11-05T02:53:44.608404Z  INFO min_shark::expression::tests: Evaluating expression "eth in [ab:cd:ef:01:02:03]" [INFO] [stdout] 2025-11-05T02:53:44.608418Z  INFO min_shark::expression::tests: Evaluating expression "eth in [01:02:03:04:05:06]" [INFO] [stdout] 2025-11-05T02:53:44.608429Z  INFO min_shark::expression::tests: Evaluating expression "eth.src in [ab:cd:ef:01:02:03]" [INFO] [stdout] 2025-11-05T02:53:44.608440Z  INFO min_shark::expression::tests: Evaluating expression "eth.src not in [01:02:03:04:05:06]" [INFO] [stdout] 2025-11-05T02:53:44.608451Z  INFO min_shark::expression::tests: Evaluating expression "eth.dst in [01:02:03:04:05:06]" [INFO] [stdout] 2025-11-05T02:53:44.608462Z  INFO min_shark::expression::tests: Evaluating expression "eth.dst not in [ab:cd:ef:01:02:03]" [INFO] [stdout] 2025-11-05T02:53:44.608473Z  INFO min_shark::expression::tests: Evaluating expression "eth contains [171]" [INFO] [stdout] 2025-11-05T02:53:44.608499Z  INFO min_shark::expression::tests: Evaluating expression "eth contains [6]" [INFO] [stdout] 2025-11-05T02:53:44.608510Z  INFO min_shark::expression::tests: Evaluating expression "eth.dst contains [6]" [INFO] [stdout] 2025-11-05T02:53:44.608520Z  INFO min_shark::expression::tests: Evaluating expression "eth.src contains [171]" [INFO] [stdout] 2025-11-05T02:53:44.608531Z  INFO min_shark::expression::tests: Evaluating expression "eth matches "(?-u).*\x03$"" [INFO] [stdout] 2025-11-05T02:53:44.608564Z  INFO min_shark::expression::tests: Evaluating expression "eth matches "(?-u).*\x06$"" [INFO] [stdout] 2025-11-05T02:53:44.608582Z  INFO min_shark::expression::tests: Evaluating expression "eth.dst matches "(?-u).*\x06$"" [INFO] [stdout] 2025-11-05T02:53:44.608634Z  INFO min_shark::expression::tests: Evaluating expression "eth.src matches "(?-u).*\x03$"" [INFO] [stdout] [INFO] [stdout] test expression::tests::test_no_merge_or ... ok [INFO] [stdout] test expression::tests::test_not_expression ... ok [INFO] [stdout] test expression::tests::test_single_clause_udp_expression ... ok [INFO] [stdout] test expression::tests::test_single_clause_port_expressions ... ok [INFO] [stdout] test expression::tests::test_single_clause_tcp_expression ... ok [INFO] [stdout] test expression::tests::test_single_clause_payload_len_expressions ... ok [INFO] [stdout] test expression::tests::test_composite_expression ... ok [INFO] [stdout] 2025-11-05T02:53:44.608989Z  INFO min_shark::lexer::tests: Lexing input "om =nom" [INFO] [stdout] test expression::tests::test_single_clause_ip_expressions ... ok [INFO] [stdout] 2025-11-05T02:53:44.609032Z  INFO min_shark::lexer::tests: Lexing input "'" [INFO] [stdout] 2025-11-05T02:53:44.609046Z  INFO min_shark::lexer::tests: Lexing input """ [INFO] [stdout] test expression::tests::test_single_clause_vlan_expressions ... ok [INFO] [stdout] 2025-11-05T02:53:44.609055Z  INFO min_shark::lexer::tests: Lexing input "^" [INFO] [stdout] 2025-11-05T02:53:44.609065Z  INFO min_shark::lexer::tests: Lexing input "%" [INFO] [stdout] test expression::tests::test_single_clause_ip_comparison_expressions ... ok [INFO] [stdout] test expression::tests::test_mixed_merging ... ok [INFO] [stdout] 2025-11-05T02:53:44.609142Z  INFO min_shark::lexer::tests: Lexing input "om nom nom" [INFO] [stdout] test expression::tests::test_single_clause_ethernet_expressions ... ok [INFO] [stdout] 2025-11-05T02:53:44.609175Z  INFO min_shark::lexer::tests: Lexing input "'boo'((boom-------" [INFO] [stdout] 2025-11-05T02:53:44.609194Z  INFO min_shark::lexer::tests: Lexing input "==)('')" [INFO] [stdout] test input::tests::test_input_success ... ok [INFO] [stdout] 2025-11-05T02:53:44.609221Z  INFO min_shark::lexer::tests: Lexing input "payload ~ "\r\n\x45\xdb"" [INFO] [stdout] test lexer::tests::test_lex_errors ... ok [INFO] [stdout] 2025-11-05T02:53:44.609252Z  INFO min_shark::lexer::tests: Lexing input "payload ~ "GET /(secret|password)"" [INFO] [stdout] 2025-11-05T02:53:44.609266Z  INFO min_shark::lexer::tests: Lexing input "payload ~ "[[:ascii:]]{100}"" [INFO] [stdout] test lexer::tests::test_lex_nonsensical_inputs ... ok [INFO] [stdout] 2025-11-05T02:53:44.609278Z  INFO min_shark::lexer::tests: Lexing input "payload matches ".*Philips\\.HIF.*"" [INFO] [stdout] 2025-11-05T02:53:44.609295Z  INFO min_shark::lexer::tests: Lexing input "port <= 0x16" [INFO] [stdout] 2025-11-05T02:53:44.609292Z  INFO min_shark::lexer::tests: Lexing input "''" [INFO] [stdout] 2025-11-05T02:53:44.609308Z  INFO min_shark::lexer::tests: Lexing input "port <= 0b1100_1100" [INFO] [stdout] 2025-11-05T02:53:44.609336Z  INFO min_shark::lexer::tests: Lexing input "''""''" [INFO] [stdout] 2025-11-05T02:53:44.609350Z  INFO min_shark::lexer::tests: Lexing input "'"'" [INFO] [stdout] 2025-11-05T02:53:44.609342Z  INFO min_shark::lexer::tests: Lexing input "tcp" [INFO] [stdout] 2025-11-05T02:53:44.609375Z  INFO min_shark::lexer::tests: Lexing input "udp" [INFO] [stdout] 2025-11-05T02:53:44.609387Z  INFO min_shark::lexer::tests: Lexing input "vlan" [INFO] [stdout] 2025-11-05T02:53:44.609397Z  INFO min_shark::lexer::tests: Lexing input "arp" [INFO] [stdout] 2025-11-05T02:53:44.609414Z  INFO min_shark::lexer::tests: Lexing input " [INFO] [stdout] [INFO] [stdout] eth.addr == 00-B0-D0-63-C2-26 " [INFO] [stdout] 2025-11-05T02:53:44.609359Z  INFO min_shark::lexer::tests: Lexing input ""t"" [INFO] [stdout] 2025-11-05T02:53:44.609480Z  INFO min_shark::lexer::tests: Lexing input " '' " [INFO] [stdout] 2025-11-05T02:53:44.609493Z  INFO min_shark::lexer::tests: Lexing input " "" " [INFO] [stdout] 2025-11-05T02:53:44.609515Z  INFO min_shark::lexer::tests: Lexing input "payload ~ '^something[0-9]+'" [INFO] [stdout] 2025-11-05T02:53:44.609542Z  INFO min_shark::lexer::tests: Lexing input "payload matches '^something[0-9]+'" [INFO] [stdout] 2025-11-05T02:53:44.609641Z  INFO min_shark::lexer::tests: Lexing input "not tcp and (ip.src == 10.10.0.0/16 or (dstport > 80 and dstport <= 100))" [INFO] [stdout] 2025-11-05T02:53:44.609678Z  INFO min_shark::lexer::tests: Lexing input "!tcp && (ip.src == 10.10.0.0/16 || (dstport > 80 && dstport <= 100))" [INFO] [stdout] 2025-11-05T02:53:44.609743Z  INFO min_shark::lexer::tests: Lexing input "!tcp&&(ip.src==10.10.0.0/16||(dstport>80&&dstport<=100))" [INFO] [stdout] 2025-11-05T02:53:44.609916Z  INFO min_shark::lexer::tests: Lexing input "srcport in { 22 , 80 }" [INFO] [stdout] 2025-11-05T02:53:44.609996Z  INFO min_shark::lexer::tests: Lexing input "ip.src in {192.168.1.0/24}" [INFO] [stdout] 2025-11-05T02:53:44.610037Z  INFO min_shark::lexer::tests: Lexing input "ip.dst in {192.168.3.1, 10.0.0.0/8}" [INFO] [stdout] 2025-11-05T02:53:44.610111Z  INFO min_shark::lexer::tests: Lexing input "ip.src in{192.168.1.0/24}" [INFO] [stdout] 2025-11-05T02:53:44.610201Z  INFO min_shark::lexer::tests: Lexing input "ip.dst in{192.168.3.1,10.0.0.0/8}" [INFO] [stdout] 2025-11-05T02:53:44.610364Z  INFO min_shark::lexer::tests: Lexing input "eth.addr == 00-B0-D0-63-C2-26" [INFO] [stdout] 2025-11-05T02:53:44.610553Z  INFO min_shark::lexer::tests: Lexing input "eth.src != 00-B0-D0-63-C2-26" [INFO] [stdout] 2025-11-05T02:53:44.610678Z  INFO min_shark::lexer::tests: Lexing input "eth.dst eq 00-B0-D0-63-C2-26" [INFO] [stdout] 2025-11-05T02:53:44.610804Z  INFO min_shark::lexer::tests: Lexing input "ip.addr == 1.2.3.4" [INFO] [stdout] 2025-11-05T02:53:44.610899Z  INFO min_shark::lexer::tests: Lexing input "ip.src == 1.2.3.4" [INFO] [stdout] 2025-11-05T02:53:44.610996Z  INFO min_shark::lexer::tests: Lexing input "ip.dst == 1.2.3.4" [INFO] [stdout] 2025-11-05T02:53:44.611118Z  INFO min_shark::lexer::tests: Lexing input "vlan.id == 12" [INFO] [stdout] 2025-11-05T02:53:44.611217Z  INFO min_shark::lexer::tests: Lexing input "port == 80" [INFO] [stdout] 2025-11-05T02:53:44.611393Z  INFO min_shark::lexer::tests: Lexing input "ip.addr == 1.2.3.4/32" [INFO] [stdout] 2025-11-05T02:53:44.611437Z  INFO min_shark::lexer::tests: Lexing input "ip.addr eq 1.2.3.4/32" [INFO] [stdout] 2025-11-05T02:53:44.611396Z  INFO min_shark::lexer::tests: Lexing input "" [INFO] [stdout] 2025-11-05T02:53:44.611452Z  INFO min_shark::lexer::tests: Lexing input "ip.addr != 1.2.3.4/32" [INFO] [stdout] 2025-11-05T02:53:44.611465Z  INFO min_shark::lexer::tests: Lexing input "ip.addr ne 1.2.3.4/32" [INFO] [stdout] test lexer::tests::test_lex_real_life_examples ... ok [INFO] [stdout] 2025-11-05T02:53:44.611475Z  INFO min_shark::lexer::tests: Lexing input "ip.addr > 1.2.3.4/32" [INFO] [stdout] 2025-11-05T02:53:44.611552Z  INFO min_shark::lexer::tests: Lexing input "ip.addr gt 1.2.3.4/32" [INFO] [stdout] 2025-11-05T02:53:44.611564Z  INFO min_shark::lexer::tests: Lexing input "ip.addr >= 1.2.3.4/32" [INFO] [stdout] test lexer::tests::test_lex_single_term ... 2025-11-05T02:53:44.611576Z  INFO min_shark::lexer::tests: Lexing input "ip.addr ge 1.2.3.4/32" [INFO] [stdout] ok [INFO] [stdout] 2025-11-05T02:53:44.611588Z  INFO min_shark::lexer::tests: Lexing input "ip.addr < 1.2.3.4/32" [INFO] [stdout] 2025-11-05T02:53:44.611599Z  INFO min_shark::lexer::tests: Lexing input "ip.addr lt 1.2.3.4/32" [INFO] [stdout] test lexer::tests::test_lex_lots_of_whitespace ... ok [INFO] [stdout] 2025-11-05T02:53:44.611612Z  INFO min_shark::lexer::tests: Lexing input "ip.addr <= 1.2.3.4/32" [INFO] [stdout] 2025-11-05T02:53:44.611623Z  INFO min_shark::lexer::tests: Lexing input "ip.addr le 1.2.3.4/32" [INFO] [stdout] test lexer::tests::test_lex_quotes ... ok [INFO] [stdout] test lexer::tests::test_lex_matches ... ok [INFO] [stdout] test lexer::tests::test_lex_multiple_clauses ... ok [INFO] [stdout] test lexer::tests::test_lex_set_operations ... ok [INFO] [stdout] test expression::tests::test_merge_two_or ... ok [INFO] [stdout] test lexer::tests::test_lex_empty_input ... ok [INFO] [stdout] test mac_addr::tests::test_hex2byte_invalid ... ok [INFO] [stdout] test lexer::tests::test_lex_comparison_operations ... ok [INFO] [stdout] 2025-11-05T02:53:44.611960Z  INFO min_shark::lexer::tests: Lexing input "srcport == 80" [INFO] [stdout] 2025-11-05T02:53:44.611981Z  INFO min_shark::lexer::tests: Lexing input "dstport == 80" [INFO] [stdout] 2025-11-05T02:53:44.611953Z  INFO min_shark::parser::tests: Validating parse of vlan and (vlan.id in {1, 2} or ip.addr == 10.1.0.0/16) and not udp as an expression And([Single(IsVlan), Or([Single(VlanId(MatchAny([1, 2]))), Single(IpAddr(Compare { op: Equal, val: 10.1.0.0/16 }))]), Not(Single(IsUdp))]) [INFO] [stdout] 2025-11-05T02:53:44.611995Z  INFO min_shark::lexer::tests: Lexing input "payload contains '00'" [INFO] [stdout] 2025-11-05T02:53:44.612014Z  INFO min_shark::lexer::tests: Lexing input "payload.len == 16" [INFO] [stdout] 2025-11-05T02:53:44.612142Z  INFO min_shark::parser::tests: Validating parse of (vlan or (eth.addr in {00:11:22:33:44:55, 55:44:33:22:11:00} and ip.addr == 10.1.0.0/16 and not udp)) as an expression Or([Single(IsVlan), And([Single(EthAddr(MatchAny([00:11:22:33:44:55, 55:44:33:22:11:00]))), Single(IpAddr(Compare { op: Equal, val: 10.1.0.0/16 })), Not(Single(IsUdp))])]) [INFO] [stdout] 2025-11-05T02:53:44.608908Z  INFO min_shark::lexer::tests: Lexing input "payload contains 00:11:22:33" [INFO] [stdout] 2025-11-05T02:53:44.612459Z  INFO min_shark::lexer::tests: Lexing input "payload contains 00:11:22:33 " [INFO] [stdout] 2025-11-05T02:53:44.612808Z  INFO min_shark::parser::tests: Validating parse of not (eth.addr ~ 'something' and ip.addr == 10.1.0.0/16) as an expression Not(And([Single(EthAddr(RegexMatch(RegexMatcher(Regex("something"))))), Single(IpAddr(Compare { op: Equal, val: 10.1.0.0/16 }))])) [INFO] [stdout] test mac_addr::tests::test_mac_try_from_dot ... ok [INFO] [stdout] test mac_addr::tests::test_mac_try_from_colon ... ok [INFO] [stdout] test mac_addr::tests::test_mac_try_from_invalid ... ok [INFO] [stdout] 2025-11-05T02:53:44.613476Z  INFO min_shark::driver::tests: Parsing input "tcp" [INFO] [stdout] 2025-11-05T02:53:44.613501Z  INFO min_shark::driver::tests: Parsing input "not udp" [INFO] [stdout] 2025-11-05T02:53:44.613512Z  INFO min_shark::driver::tests: Parsing input "not udp and (not tcp or vlan)" [INFO] [stdout] test mac_addr::tests::test_mac_try_from_plain ... ok [INFO] [stdout] 2025-11-05T02:53:44.613530Z  INFO min_shark::driver::tests: Parsing input "port eq 25 or udp" [INFO] [stdout] test lexer::tests::test_lex_single_clause ... ok [INFO] [stdout] 2025-11-05T02:53:44.613546Z  INFO min_shark::driver::tests: Parsing input "eth.addr contains 00:06:5B" [INFO] [stdout] 2025-11-05T02:53:44.613565Z  INFO min_shark::driver::tests: Parsing input "ip.addr == 10.43.54.65" [INFO] [stdout] test parser::tests::test_parse_complex_statement_01 ... ok [INFO] [stdout] 2025-11-05T02:53:44.613580Z  INFO min_shark::driver::tests: Parsing input "ip.src == 10.43.54.65 or ip.dst == 10.43.54.65" [INFO] [stdout] 2025-11-05T02:53:44.613597Z  INFO min_shark::driver::tests: Parsing input "! ( ip.addr == 10.43.54.65 )" [INFO] [stdout] test parser::tests::test_parse_complex_statement_02 ... ok [INFO] [stdout] 2025-11-05T02:53:44.613611Z  INFO min_shark::driver::tests: Parsing input "srcport in {8011, 8012, 8013} and tcp" [INFO] [stdout] 2025-11-05T02:53:44.613631Z  INFO min_shark::driver::tests: Parsing input "port in {8011, 8012, 8013} and tcp and payload contains 'MSH'" [INFO] [stdout] test mac_addr::tests::test_hex2byte ... ok [INFO] [stdout] 2025-11-05T02:53:44.613659Z  INFO min_shark::driver::tests: Parsing input "payload matches "(?i)Workflowrx"" [INFO] [stdout] test mac_addr::tests::test_to_string ... ok [INFO] [stdout] test lexer::tests::test_lex_contains ... ok [INFO] [stdout] test mac_addr::tests::test_mac_eq ... ok [INFO] [stdout] test parser::tests::test_parse_complex_statement_03 ... ok [INFO] [stdout] 2025-11-05T02:53:44.616493Z  INFO min_shark::lexer::tests: Lexing input "eth.addr==00-B0-D0-63-C2-26" [INFO] [stdout] 2025-11-05T02:53:44.616527Z  INFO min_shark::parser::tests: Parsing 'payload contains '' ' as a payload operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.616566Z  INFO min_shark::parser::tests: Parsing 'payload ~ string' as a payload operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.616581Z  INFO min_shark::parser::tests: Parsing 'payload ~ "" ' as a payload operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.616661Z  INFO min_shark::parser::tests: Parsing 'tcp' as single term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.616694Z  INFO min_shark::parser::tests: Parsing 'udp' as single term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.616707Z  INFO min_shark::parser::tests: Parsing 'vlan' as single term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.616719Z  INFO min_shark::parser::tests: Parsing 'arp' as single term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.616710Z  INFO min_shark::expression::tests: Evaluating expression "payload contains [111, 110, 99, 101, 32, 121, 111, 117]" [INFO] [stdout] 2025-11-05T02:53:44.616736Z  INFO min_shark::parser::tests: Parsing 'payload contains ab' as a payload operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.616745Z  INFO min_shark::expression::tests: Evaluating expression "payload contains [84, 104, 101, 32]" [INFO] [stdout] 2025-11-05T02:53:44.616758Z  INFO min_shark::expression::tests: Evaluating expression "payload contains [105, 116, 46]" [INFO] [stdout] 2025-11-05T02:53:44.616763Z  INFO min_shark::parser::tests: Parsing 'payload contains ab:cd:ef' as a payload operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.616770Z  INFO min_shark::expression::tests: Evaluating expression "payload matches "(?i)^THE TROUBLE.+$"" [INFO] [stdout] 2025-11-05T02:53:44.616780Z  INFO min_shark::parser::tests: Parsing 'payload contains ab-cd-ef' as a payload operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.616798Z  INFO min_shark::parser::tests: Parsing 'payload contains 'string'' as a payload operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.616817Z  INFO min_shark::parser::tests: Parsing 'payload contains "\x00string"' as a payload operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.616836Z  INFO min_shark::parser::tests: Parsing 'payload matches "string"' as a payload operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.617093Z  INFO min_shark::parser::tests: Validating parse of payload matches 'something' and not payload ~ 'else' and payload ~ 'last' as an expression And([Single(Payload(RegexMatch(RegexMatcher(Regex("something"))))), Not(Single(Payload(RegexMatch(RegexMatcher(Regex("else")))))), Single(Payload(RegexMatch(RegexMatcher(Regex("last")))))]) [INFO] [stdout] test mac_addr::tests::test_mac_try_from_dash ... ok [INFO] [stdout] 2025-11-05T02:53:44.617663Z  INFO min_shark::parser::tests: Validating parse of not ip.dst not in {192.168.1.1/24, 10.1.1.0} as an expression Not(Single(IpDst(MatchNone([192.168.1.1/24, 10.1.1.0/32])))) [INFO] [stdout] 2025-11-05T02:53:44.617784Z  INFO min_shark::parser::tests: Parsing 'vlan.id == ""' as a value operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.617853Z  INFO min_shark::parser::tests: Parsing 'vlan.id == "55"' as a value operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.617896Z  INFO min_shark::parser::tests: Parsing 'vlan.id == not-a-number' as a value operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.617949Z  INFO min_shark::parser::tests: Parsing 'vlan.id in 55' as a value operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.618493Z  INFO min_shark::parser::tests: Parsing 'vlan.id > ==' as a value operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.618187Z  INFO min_shark::parser::tests: Parsing 'payload.len == '55'' as a payload length operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.617891Z  INFO min_shark::parser::tests: Parsing 'eth.addr == ab-cd-ef-01-23-45' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622494Z  INFO min_shark::parser::tests: Parsing 'eth.addr ne ab:cd:ef:01:23:45' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622580Z  INFO min_shark::parser::tests: Parsing 'eth.dst > ab:cd:ef:01:23:45' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622626Z  INFO min_shark::parser::tests: Parsing 'eth.src >= ab-cd-ef-01-23-45' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622649Z  INFO min_shark::parser::tests: Parsing 'eth.src < ab-cd-ef-01-23-45' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622670Z  INFO min_shark::parser::tests: Parsing 'eth.addr <= ab-cd-ef-01-23-45' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622736Z  INFO min_shark::parser::tests: Parsing 'eth.addr eq abcdef012345' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622758Z  INFO min_shark::parser::tests: Parsing 'eth.addr == ab:cd:ef:01:23:45' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622779Z  INFO min_shark::parser::tests: Parsing 'eth.addr == abc.def.012.345' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622800Z  INFO min_shark::parser::tests: Parsing 'eth.src in {abcdef012345, abc.def.012.345}' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622822Z  INFO min_shark::parser::tests: Parsing 'eth.dst in { abcdef012345 }' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622839Z  INFO min_shark::parser::tests: Parsing 'eth.addr contains ab' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622857Z  INFO min_shark::parser::tests: Parsing 'eth.addr contains ab:cd:ef' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622874Z  INFO min_shark::parser::tests: Parsing 'eth.addr contains 'string'' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622893Z  INFO min_shark::parser::tests: Parsing 'eth.dst contains "\x00string"' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622911Z  INFO min_shark::parser::tests: Parsing 'eth.dst ~ 'string'' as ethernet operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.618425Z  INFO min_shark::parser::tests: Parsing 'ip.addr eq 192.168.1.1' as ip operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.618497Z  INFO min_shark::parser::tests: Parsing 'eth.src == ' as ethernet operations - should fail [INFO] [stdout] test lexer::tests::test_lex_no_whitespace ... 2025-11-05T02:53:44.623207Z  INFO min_shark::parser::tests: Parsing 'eth.src == ''' as ethernet operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.622367Z  INFO min_shark::parser::tests: Parsing 'vlan.id in {1, 2' as a value operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.623227Z  INFO min_shark::parser::tests: Parsing 'eth.src == 'ab-cd-ef-01-23-45'' as ethernet operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.618129Z  INFO min_shark::parser::tests: Parsing 'vlan.id == 1' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623241Z  INFO min_shark::parser::tests: Parsing 'eth.src == string' as ethernet operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.623255Z  INFO min_shark::parser::tests: Parsing 'eth.src in { ab-cd-ef-01-23-45,' as ethernet operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.623274Z  INFO min_shark::parser::tests: Parsing 'eth.src in { ab-cd-ef-01-23-45, }' as ethernet operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.623291Z  INFO min_shark::parser::tests: Parsing 'eth.src in { }' as ethernet operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.623301Z  INFO min_shark::parser::tests: Parsing 'vlan.id in{1}' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623370Z  INFO min_shark::parser::tests: Parsing 'port eq 1' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623403Z  INFO min_shark::parser::tests: Parsing 'port in { 1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623403Z  INFO min_shark::parser::tests: Parsing 'ip.src == 192.168.1.1/32' as ip operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623420Z  INFO min_shark::parser::tests: Parsing 'port not in { 1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623428Z  INFO min_shark::parser::tests: Parsing 'ip.dst != 192.168.1.1' as ip operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623438Z  INFO min_shark::parser::tests: Parsing 'dstport == 1' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623443Z  INFO min_shark::parser::tests: Parsing 'ip.addr gt 192.168.1.1' as ip operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623453Z  INFO min_shark::parser::tests: Parsing 'dstport in { 1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623458Z  INFO min_shark::parser::tests: Parsing 'ip.addr ge 192.168.1.1' as ip operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623470Z  INFO min_shark::parser::tests: Parsing 'dstport not in { 1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623473Z  INFO min_shark::parser::tests: Parsing 'ip.addr lt 192.168.1.1' as ip operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623486Z  INFO min_shark::parser::tests: Parsing 'srcport == 1' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623488Z  INFO min_shark::parser::tests: Parsing 'ip.addr le 192.168.1.1' as ip operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623499Z  INFO min_shark::parser::tests: Parsing 'srcport in { 1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623502Z  INFO min_shark::parser::tests: Parsing 'ip.addr in {192.168.1.1, 192.168.1.1/32}' as ip operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623513Z  INFO min_shark::parser::tests: Parsing 'srcport not in { 1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623530Z  INFO min_shark::parser::tests: Parsing 'eth.addr == ab-cd-ef-01-23-45' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623548Z  INFO min_shark::parser::tests: Parsing 'eth.addr in {ab-cd-ef-01-23-45}' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623567Z  INFO min_shark::parser::tests: Parsing 'eth.addr not in {ab-cd-ef-01-23-45}' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623585Z  INFO min_shark::parser::tests: Parsing 'eth.addr contains 00:11' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623607Z  INFO min_shark::parser::tests: Parsing 'eth.addr matches 'string'' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623853Z  INFO min_shark::parser::tests: Parsing 'eth.dst == ab-cd-ef-01-23-45' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623881Z  INFO min_shark::parser::tests: Parsing 'eth.dst in {ab-cd-ef-01-23-45}' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623900Z  INFO min_shark::parser::tests: Parsing 'eth.dst not in {ab-cd-ef-01-23-45}' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623933Z  INFO min_shark::parser::tests: Parsing 'eth.dst contains 00:11' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.623954Z  INFO min_shark::parser::tests: Parsing 'eth.dst matches 'string'' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624051Z  INFO min_shark::parser::tests: Parsing 'eth.src == ab-cd-ef-01-23-45' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624078Z  INFO min_shark::parser::tests: Parsing 'eth.src in {ab-cd-ef-01-23-45}' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624094Z  INFO min_shark::parser::tests: Parsing 'eth.src not in {ab-cd-ef-01-23-45}' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624111Z  INFO min_shark::parser::tests: Parsing 'eth.src contains 00:11' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624128Z  INFO min_shark::parser::tests: Parsing 'eth.src matches 'string'' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624223Z  INFO min_shark::parser::tests: Parsing 'ip.addr == 192.168.1.1' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624250Z  INFO min_shark::parser::tests: Parsing 'ip.addr in { 192.168.1.1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624270Z  INFO min_shark::parser::tests: Parsing 'ip.addr not in { 192.168.1.1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624289Z  INFO min_shark::parser::tests: Parsing 'ip.dst == 192.168.1.1' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624303Z  INFO min_shark::parser::tests: Parsing 'ip.dst in { 192.168.1.1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624344Z  INFO min_shark::parser::tests: Parsing 'ip.dst not in { 192.168.1.1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624363Z  INFO min_shark::parser::tests: Parsing 'ip.src == 192.168.1.1' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624379Z  INFO min_shark::parser::tests: Parsing 'ip.src in { 192.168.1.1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624396Z  INFO min_shark::parser::tests: Parsing 'ip.src not in { 192.168.1.1 }' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624414Z  INFO min_shark::parser::tests: Parsing 'payload contains 00:11' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624432Z  INFO min_shark::parser::tests: Parsing 'payload matches 'string'' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624530Z  INFO min_shark::parser::tests: Parsing 'payload.len eq 1' as multiple term clause - should succeed [INFO] [stdout] 2025-11-05T02:53:44.622453Z  INFO min_shark::parser::tests: Parsing 'payload.len == not_a_number' as a payload length operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.618250Z  INFO min_shark::parser::tests: Parsing 'ip.addr == 55' as ip operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.624697Z  INFO min_shark::parser::tests: Parsing 'payload.len == s0me' as a payload length operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.618343Z  INFO min_shark::parser::tests: Parsing 'payload.len == 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624736Z  INFO min_shark::parser::tests: Parsing 'payload.len in 55' as a payload length operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.624754Z  INFO min_shark::parser::tests: Parsing 'payload.len < ==' as a payload length operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.624755Z  INFO min_shark::parser::tests: Parsing 'payload.len eq 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624778Z  INFO min_shark::parser::tests: Parsing 'payload.len != 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624793Z  INFO min_shark::parser::tests: Parsing 'payload.len ne 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624808Z  INFO min_shark::parser::tests: Parsing 'payload.len > 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624822Z  INFO min_shark::parser::tests: Parsing 'payload.len gt 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624835Z  INFO min_shark::parser::tests: Parsing 'payload.len >= 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624848Z  INFO min_shark::parser::tests: Parsing 'payload.len ge 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624845Z  INFO min_shark::parser::tests: Parsing 'vlan.id in {1, }' as a value operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.624863Z  INFO min_shark::parser::tests: Parsing 'payload.len < 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624870Z  INFO min_shark::parser::tests: Parsing 'vlan.id in {}' as a value operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.624877Z  INFO min_shark::parser::tests: Parsing 'payload.len lt 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624886Z  INFO min_shark::parser::tests: Parsing 'vlan.id in {,2}' as a value operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.624891Z  INFO min_shark::parser::tests: Parsing 'payload.len <= 55' as a payload length operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.624905Z  INFO min_shark::parser::tests: Parsing 'payload.len le 55' as a payload length operations - should succeed [INFO] [stdout] ok [INFO] [stdout] 2025-11-05T02:53:44.624985Z  INFO min_shark::parser::tests: Parsing 'ip.addr == not-an-ip' as ip operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.625007Z  INFO min_shark::parser::tests: Parsing 'ip.addr in 192.168.1.1' as ip operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.625023Z  INFO min_shark::parser::tests: Parsing 'ip.addr > ==' as ip operations - should fail [INFO] [stdout] test parser::tests::test_parse_payload_operations_failure ... ok [INFO] [stdout] 2025-11-05T02:53:44.625035Z  INFO min_shark::parser::tests: Parsing 'ip.addr in { 192.168.1.1, 192.168.1.1' as ip operations - should fail [INFO] [stdout] 2025-11-05T02:53:44.625053Z  INFO min_shark::parser::tests: Parsing 'ip.addr in { 192.168.1.1, 192.168.1.1, }' as ip operations - should fail [INFO] [stdout] test parser::tests::test_parse_single_term ... 2025-11-05T02:53:44.625071Z  INFO min_shark::parser::tests: Parsing 'ip.addr in { }' as ip operations - should fail [INFO] [stdout] ok [INFO] [stdout] 2025-11-05T02:53:44.625101Z  INFO min_shark::parser::tests: Parsing 'vlan.id == 55' as a value operations - should succeed [INFO] [stdout] test expression::tests::test_single_clause_payload_expressions ... ok [INFO] [stdout] 2025-11-05T02:53:44.625135Z  INFO min_shark::parser::tests: Parsing 'vlan.id != 55' as a value operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625150Z  INFO min_shark::parser::tests: Parsing 'vlan.id > 55' as a value operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625162Z  INFO min_shark::parser::tests: Parsing 'vlan.id >= 55' as a value operations - should succeed [INFO] [stdout] test parser::tests::test_parse_payload_operations_success ... ok [INFO] [stdout] 2025-11-05T02:53:44.625178Z  INFO min_shark::parser::tests: Parsing 'vlan.id < 55' as a value operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625190Z  INFO min_shark::parser::tests: Parsing 'vlan.id <= 55' as a value operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625185Z  INFO min_shark::value_parsers::tests: Parsing "00" as byte string - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625202Z  INFO min_shark::parser::tests: Parsing 'vlan.id in {1, 2}' as a value operations - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625211Z  INFO min_shark::value_parsers::tests: Parsing "0E" as byte string - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625221Z  INFO min_shark::value_parsers::tests: Parsing "001122334455" as byte string - should succeed [INFO] [stdout] test parser::tests::test_parse_complex_statement_04 ... 2025-11-05T02:53:44.625231Z  INFO min_shark::value_parsers::tests: Parsing "00:11:22:33:44:55" as byte string - should succeed [INFO] [stdout] ok [INFO] [stdout] 2025-11-05T02:53:44.625243Z  INFO min_shark::value_parsers::tests: Parsing "00-11-22-33-44-55" as byte string - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625234Z  INFO min_shark::value_parsers::tests: Parsing "\" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625253Z  INFO min_shark::value_parsers::tests: Parsing "00:11-22:33-44:55" as byte string - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625258Z  INFO min_shark::value_parsers::tests: Parsing "simple string" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625266Z  INFO min_shark::value_parsers::tests: Parsing "" as byte string - should fail [INFO] [stdout] test parser::tests::test_parse_complex_statement_05 ... 2025-11-05T02:53:44.625273Z  INFO min_shark::value_parsers::tests: Parsing "\\escaped \\ slash \\" as escaped bytes - should succeed [INFO] [stdout] ok2025-11-05T02:53:44.625274Z  INFO min_shark::value_parsers::tests: Parsing "0" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.625288Z  INFO min_shark::value_parsers::tests: Parsing "not an escape \w" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625301Z  INFO min_shark::value_parsers::tests: Parsing "1" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.625303Z  INFO min_shark::value_parsers::tests: Parsing "\xFF" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625323Z  INFO min_shark::value_parsers::tests: Parsing "a" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.625333Z  INFO min_shark::value_parsers::tests: Parsing "foo\nbar\xFFbaz" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625345Z  INFO min_shark::value_parsers::tests: Parsing "\n" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625348Z  INFO min_shark::value_parsers::tests: Parsing "A" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.625293Z  INFO min_shark::value_parsers::tests: Parsing "127.0.0.1" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625349Z  INFO min_shark::value_parsers::tests: Parsing "ab-cd-ef-01-23-45" as mac-address - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625358Z  INFO min_shark::value_parsers::tests: Parsing "x1" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.625367Z  INFO min_shark::value_parsers::tests: Parsing "AB-CD-EF-01-23-45" as mac-address - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625366Z  INFO min_shark::value_parsers::tests: Parsing "192.168.12.34/16" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625376Z  INFO min_shark::value_parsers::tests: Parsing "ab:cd:ef:01:23:45" as mac-address - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625380Z  INFO min_shark::value_parsers::tests: Parsing "~1" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.625357Z  INFO min_shark::value_parsers::tests: Parsing "new line at the end\n" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625386Z  INFO min_shark::value_parsers::tests: Parsing "AB:CD:EF:01:23:45" as mac-address - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625389Z  INFO min_shark::value_parsers::tests: Parsing "10Z1" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.625396Z  INFO min_shark::value_parsers::tests: Parsing "abcdef012345" as mac-address - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625442Z  INFO min_shark::value_parsers::tests: Parsing "(48, 48)" as ascii byte - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625474Z  INFO min_shark::value_parsers::tests: Parsing "(97, 48)" as ascii byte - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625382Z  INFO min_shark::value_parsers::tests: Parsing "10.1.1.0/24" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625483Z  INFO min_shark::value_parsers::tests: Parsing "(97, 50)" as ascii byte - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625492Z  INFO min_shark::value_parsers::tests: Parsing "(65, 98)" as ascii byte - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625499Z  INFO min_shark::value_parsers::tests: Parsing "10.1.1.0/32" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625503Z  INFO min_shark::value_parsers::tests: Parsing "(0, 0)" as ascii byte - should fail [INFO] [stdout] 2025-11-05T02:53:44.625513Z  INFO min_shark::value_parsers::tests: Parsing "(122, 48)" as ascii byte - should fail [INFO] [stdout] 2025-11-05T02:53:44.625514Z  INFO min_shark::value_parsers::tests: Parsing "10.1.1.0" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625523Z  INFO min_shark::value_parsers::tests: Parsing "(255, 48)" as ascii byte - should fail [INFO] [stdout] 2025-11-05T02:53:44.625525Z  INFO min_shark::value_parsers::tests: Parsing "fd00::/32" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625540Z  INFO min_shark::value_parsers::tests: Parsing "fd00::/16" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625552Z  INFO min_shark::value_parsers::tests: Parsing "fd00::1:2:3:4/16" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625566Z  INFO min_shark::value_parsers::tests: Parsing "1:2::3:4" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625575Z  INFO min_shark::value_parsers::tests: Parsing "1:2:3:4:5:6:77.77.88.88" as ip - should succeed [INFO] [stdout] [INFO] [stdout] 2025-11-05T02:53:44.625585Z  INFO min_shark::value_parsers::tests: Parsing "1:2:3:4:5:6:4d4d:5858" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625449Z  INFO min_shark::value_parsers::tests: Parsing "ABCDEF012345" as mac-address - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625595Z  INFO min_shark::value_parsers::tests: Parsing "fe80::1.2.3.4" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625605Z  INFO min_shark::value_parsers::tests: Parsing "::1" as ip - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625603Z  INFO min_shark::value_parsers::tests: Parsing "abc.def.012.345" as mac-address - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625613Z  INFO min_shark::value_parsers::tests: Parsing "1::" as ip - should succeed [INFO] [stdout] test parser::tests::test_parse_ethernet_operations_success ... 2025-11-05T02:53:44.625620Z  INFO min_shark::value_parsers::tests: Parsing "ABC.DEF.012.345" as mac-address - should succeed [INFO] [stdout] ok2025-11-05T02:53:44.625623Z  INFO min_shark::value_parsers::tests: Parsing "::" as ip - should succeed [INFO] [stdout] [INFO] [stdout] 2025-11-05T02:53:44.625635Z  INFO min_shark::value_parsers::tests: Parsing "ab-cd-ef-01-23" as mac-address - should fail [INFO] [stdout] 2025-11-05T02:53:44.625637Z  INFO min_shark::value_parsers::tests: Parsing "10.1.1" as ip - should fail [INFO] [stdout] 2025-11-05T02:53:44.625644Z  INFO min_shark::value_parsers::tests: Parsing "12345" as mac-address - should fail [INFO] [stdout] 2025-11-05T02:53:44.625652Z  INFO min_shark::value_parsers::tests: Parsing "fd00:" as ip - should fail [INFO] [stdout] 2025-11-05T02:53:44.625653Z  INFO min_shark::value_parsers::tests: Parsing "some words" as mac-address - should fail [INFO] [stdout] 2025-11-05T02:53:44.625664Z  INFO min_shark::value_parsers::tests: Parsing "" as ip - should fail [INFO] [stdout] test parser::tests::test_parse_ethernet_operations_failure ... 2025-11-05T02:53:44.625667Z  INFO min_shark::value_parsers::tests: Parsing "-ab-cd-ef-01-23-45" as mac-address - should fail [INFO] [stdout] ok [INFO] [stdout] test parser::tests::test_parse_ip_operations_success ... 2025-11-05T02:53:44.625674Z  INFO min_shark::value_parsers::tests: Parsing "��" as ip - should fail [INFO] [stdout] 2025-11-05T02:53:44.625679Z  INFO min_shark::value_parsers::tests: Parsing "(ASCII|\x22\x12)" as regex - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625718Z  INFO min_shark::value_parsers::tests: Parsing "0" as u16 - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625413Z  INFO min_shark::value_parsers::tests: Parsing "\nnew line at the start" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625753Z  INFO min_shark::value_parsers::tests: Parsing "4294967295" as u16 - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625770Z  INFO min_shark::value_parsers::tests: Parsing "25d" as u16 - should fail [INFO] [stdout] 2025-11-05T02:53:44.625781Z  INFO min_shark::value_parsers::tests: Parsing "-1" as u16 - should fail [INFO] [stdout] 2025-11-05T02:53:44.625778Z  INFO min_shark::value_parsers::tests: Parsing "something \t else" as escaped bytes - should succeed [INFO] [stdout] ok2025-11-05T02:53:44.625789Z  INFO min_shark::value_parsers::tests: Parsing "4294967296" as u16 - should fail [INFO] [stdout] [INFO] [stdout] test parser::tests::test_parse_multiple_terms_clause ... 2025-11-05T02:53:44.625798Z  INFO min_shark::value_parsers::tests: Parsing "" as u16 - should fail [INFO] [stdout] 2025-11-05T02:53:44.625398Z  INFO min_shark::value_parsers::tests: Parsing "10&20$30" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.625676Z  INFO min_shark::value_parsers::tests: Parsing "ab-cd-ef-01-23-45-" as mac-address - should fail [INFO] [stdout] 2025-11-05T02:53:44.625814Z  INFO min_shark::value_parsers::tests: Parsing "��" as u16 - should fail [INFO] [stdout] 2025-11-05T02:53:44.625797Z  INFO min_shark::value_parsers::tests: Parsing "Null NULL NUL \x00" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625822Z  INFO min_shark::value_parsers::tests: Parsing "" as mac-address - should fail [INFO] [stdout] 2025-11-05T02:53:44.625841Z  INFO min_shark::value_parsers::tests: Parsing "maybe nul \x0" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625861Z  INFO min_shark::value_parsers::tests: Parsing "windows style nl \r\n" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625874Z  INFO min_shark::value_parsers::tests: Parsing "\xa" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625886Z  INFO min_shark::value_parsers::tests: Parsing "\x1" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625907Z  INFO min_shark::value_parsers::tests: Parsing "\x-" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625916Z  INFO min_shark::value_parsers::tests: Parsing "\x12\xa1\xA1" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625926Z  INFO min_shark::value_parsers::tests: Parsing "\xaa\xbb\xcc" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625936Z  INFO min_shark::value_parsers::tests: Parsing "invalid escape \xa~" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625950Z  INFO min_shark::value_parsers::tests: Parsing "invalid escape \x~~" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625964Z  INFO min_shark::value_parsers::tests: Parsing "invalid escape \x~a" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.625982Z  INFO min_shark::value_parsers::tests: Parsing "invalid escape \x" as escaped bytes - should succeed [INFO] [stdout] 2025-11-05T02:53:44.626008Z  INFO min_shark::value_parsers::tests: Parsing "" as escaped bytes - should fail [INFO] [stdout] 2025-11-05T02:53:44.626024Z  INFO min_shark::value_parsers::tests: Parsing "��" as escaped bytes - should fail [INFO] [stdout] 2025-11-05T02:53:44.626082Z  INFO min_shark::value_parsers::tests: Parsing "10-1" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.626101Z  INFO min_shark::value_parsers::tests: Parsing "101" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.626111Z  INFO min_shark::value_parsers::tests: Parsing "00-11^22" as byte string - should fail [INFO] [stdout] 2025-11-05T02:53:44.626127Z  INFO min_shark::value_parsers::tests: Parsing "00:11:22:Zz" as byte string - should fail [INFO] [stdout] ok [INFO] [stdout] test parser::tests::test_parse_payload_len_operations_failure ... ok [INFO] [stdout] test parser::tests::test_parse_val_operations_failure ... ok [INFO] [stdout] test parser::tests::test_parse_payload_len_operations_success ... ok [INFO] [stdout] test parser::tests::test_parse_ip_operations_failure ... ok [INFO] [stdout] test parser::tests::test_parse_val_operations_success ... ok [INFO] [stdout] test value_parsers::tests::test_parse_ascii_byte ... ok [INFO] [stdout] test value_parsers::tests::test_parse_ip_net ... ok [INFO] [stdout] test value_parsers::tests::test_parse_u32 ... ok [INFO] [stdout] test value_parsers::tests::test_parse_mac_addr ... ok [INFO] [stdout] test value_parsers::tests::test_parse_escaped_string_as_byte ... ok [INFO] [stdout] test value_parsers::tests::test_parse_byte_string ... ok [INFO] [stdout] 2025-11-05T02:53:44.626556Z  INFO min_shark::driver::tests: Parsing input "eth.src == 00:10:9b:3a:53:fc or eth.dst == 00:10:9b:3a:53:fc" [INFO] [stdout] 2025-11-05T02:53:44.626662Z  INFO min_shark::driver::tests: Parsing input "ip.src != 192.168.0.1" [INFO] [stdout] 2025-11-05T02:53:44.626739Z  INFO min_shark::driver::tests: Parsing input "ip.dst == 2606:4700:4700::1111" [INFO] [stdout] 2025-11-05T02:53:44.626797Z  INFO min_shark::driver::tests: Parsing input "ip.dst >= 173.245.48.0 && ip.dst < 173.245.49.0" [INFO] [stdout] 2025-11-05T02:53:44.626837Z  INFO min_shark::driver::tests: Parsing input "ip.addr in {192.168.1.0/24}" [INFO] [stdout] 2025-11-05T02:53:44.626913Z  INFO min_shark::driver::tests: Parsing input "ip.dst in {192.168.3.1, 10.0.0.0/8}" [INFO] [stdout] 2025-11-05T02:53:44.626987Z  INFO min_shark::driver::tests: Parsing input "srcport < 1024" [INFO] [stdout] 2025-11-05T02:53:44.627036Z  INFO min_shark::driver::tests: Parsing input "payload.len > 50 and payload.len < 500" [INFO] [stdout] 2025-11-05T02:53:44.627075Z  INFO min_shark::driver::tests: Parsing input "payload matches "GET /secret"" [INFO] [stdout] 2025-11-05T02:53:44.627278Z  INFO min_shark::driver::tests: Parsing input "payload ~ '\r\n\x45\xdb'" [INFO] [stdout] 2025-11-05T02:53:44.627463Z  INFO min_shark::driver::tests: Parsing input "payload ~ "[[:ascii:]]{100}"" [INFO] [stdout] 2025-11-05T02:53:44.628023Z  INFO min_shark::driver::tests: Parsing input "payload ~ "^\x00BOOM\x00"" [INFO] [stdout] 2025-11-05T02:53:44.628145Z  INFO min_shark::value_parsers::tests: Parsing "(?i)CaSeInSeNsItIvE" as regex - should succeed [INFO] [stdout] 2025-11-05T02:53:44.629161Z  INFO min_shark::driver::tests: Parsing input "ip.src == 192.168.1.7 || ip.dst == 1.2.3.4 && (srcport == 9 || dstport == 9)" [INFO] [stdout] 2025-11-05T02:53:44.629246Z  INFO min_shark::driver::tests: Parsing input "payload contains 'something'" [INFO] [stdout] 2025-11-05T02:53:44.629416Z  INFO min_shark::driver::tests: Parsing input "eth.src == 3f:43:9a:2c:00:00 or eth.dst contains 2c:9a:bb" [INFO] [stdout] test driver::tests::test_simple_expression_e2e ... ok [INFO] [stdout] 2025-11-05T02:53:44.659235Z  INFO min_shark::value_parsers::tests: Parsing "some words" as regex - should succeed [INFO] [stdout] 2025-11-05T02:53:44.668631Z  INFO min_shark::value_parsers::tests: Parsing "^\x00BOOM\x00" as regex - should succeed [INFO] [stdout] 2025-11-05T02:53:44.669790Z  INFO min_shark::value_parsers::tests: Parsing "[[:ascii:]]{100}" as regex - should succeed [INFO] [stdout] 2025-11-05T02:53:44.670306Z  INFO min_shark::value_parsers::tests: Parsing "GET /(secret|password)" as regex - should succeed [INFO] [stdout] 2025-11-05T02:53:44.690563Z  INFO min_shark::value_parsers::tests: Parsing "(1234" as regex - should fail [INFO] [stderr] Doc-tests min_shark [INFO] [stdout] 2025-11-05T02:53:44.690683Z  INFO min_shark::value_parsers::tests: Parsing "\" as regex - should fail [INFO] [stdout] 2025-11-05T02:53:44.690724Z  INFO min_shark::value_parsers::tests: Parsing "" as regex - should fail [INFO] [stdout] 2025-11-05T02:53:44.690741Z  INFO min_shark::value_parsers::tests: Parsing "��" as regex - should fail [INFO] [stdout] test value_parsers::tests::test_parse_regex ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 84 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [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" "b7e2d05992d748aedcb96fddc3bebc3300a6325d147a21e3dbc56462311c3d2d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b7e2d05992d748aedcb96fddc3bebc3300a6325d147a21e3dbc56462311c3d2d", kill_on_drop: false }` [INFO] [stdout] b7e2d05992d748aedcb96fddc3bebc3300a6325d147a21e3dbc56462311c3d2d