[INFO] cloning repository https://github.com/rapiz1/rathole [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rapiz1/rathole" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frapiz1%2Frathole", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frapiz1%2Frathole'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 5a9dd6d939744859af322aeff7fd60f7483a68bc [INFO] testing rapiz1/rathole against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frapiz1%2Frathole" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-0-tc1/source/rust-toolchain [INFO] started tweaking git repo https://github.com/rapiz1/rathole [INFO] finished tweaking git repo https://github.com/rapiz1/rathole [INFO] tweaked toml for git repo https://github.com/rapiz1/rathole written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/rapiz1/rathole on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/rapiz1/rathole 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" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded enum-iterator v1.4.1 [INFO] [stderr] Downloaded enum-iterator-derive v1.2.1 [INFO] [stderr] Downloaded async-http-proxy v1.2.5 [INFO] [stderr] Downloaded filetime v0.2.22 [INFO] [stderr] Downloaded p12 v0.6.3 [INFO] [stderr] Downloaded errno v0.3.3 [INFO] [stderr] Downloaded vergen v7.5.1 [INFO] [stderr] Downloaded console-api v0.5.0 [INFO] [stderr] Downloaded termcolor v1.3.0 [INFO] [stderr] Downloaded async-socks5 v0.5.1 [INFO] [stderr] Downloaded semver v1.0.19 [INFO] [stderr] Downloaded snowstorm v0.4.0 [INFO] [stderr] Downloaded rustls-pemfile v2.0.0 [INFO] [stderr] Downloaded console-subscriber v0.1.10 [INFO] [stderr] Downloaded indexmap v2.2.3 [INFO] [stderr] Downloaded rustls-webpki v0.102.2 [INFO] [stderr] Downloaded aho-corasick v1.1.1 [INFO] [stderr] Downloaded regex v1.9.6 [INFO] [stderr] Downloaded rustls v0.22.2 [INFO] [stderr] Downloaded rustix v0.38.15 [INFO] [stderr] Downloaded linux-raw-sys v0.4.8 [INFO] [stderr] Downloaded ring v0.17.7 [INFO] [stderr] Downloaded openssl-src v300.3.1+3.3.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 153ab5bde483bc9d2998c9251def34e235c97525909a9433a7f62d4c7d376030 [INFO] running `Command { std: "docker" "start" "-a" "153ab5bde483bc9d2998c9251def34e235c97525909a9433a7f62d4c7d376030", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "153ab5bde483bc9d2998c9251def34e235c97525909a9433a7f62d4c7d376030", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "153ab5bde483bc9d2998c9251def34e235c97525909a9433a7f62d4c7d376030", kill_on_drop: false }` [INFO] [stdout] 153ab5bde483bc9d2998c9251def34e235c97525909a9433a7f62d4c7d376030 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 03dad659eb3260b988a117dfb491ec4ecbbfe9ca85f791474ce18ceb863e971f [INFO] running `Command { std: "docker" "start" "-a" "03dad659eb3260b988a117dfb491ec4ecbbfe9ca85f791474ce18ceb863e971f", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.148 [INFO] [stderr] Compiling proc-macro2 v1.0.67 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling pkg-config v0.3.27 [INFO] [stderr] Compiling serde v1.0.188 [INFO] [stderr] Compiling subtle v2.5.0 [INFO] [stderr] Compiling log v0.4.20 [INFO] [stderr] Compiling cpufeatures v0.2.9 [INFO] [stderr] Compiling smallvec v1.11.1 [INFO] [stderr] Compiling pin-project-lite v0.2.13 [INFO] [stderr] Compiling semver v1.0.19 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling zeroize v1.6.0 [INFO] [stderr] Compiling once_cell v1.18.0 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling tinyvec_macros v0.1.1 [INFO] [stderr] Compiling lock_api v0.4.10 [INFO] [stderr] Compiling anyhow v1.0.75 [INFO] [stderr] Compiling rustversion v1.0.14 [INFO] [stderr] Compiling futures-core v0.3.28 [INFO] [stderr] Compiling tinyvec v1.6.0 [INFO] [stderr] Compiling powerfmt v0.2.0 [INFO] [stderr] Compiling opaque-debug v0.3.0 [INFO] [stderr] Compiling percent-encoding v2.3.0 [INFO] [stderr] Compiling itoa v1.0.9 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Compiling deranged v0.3.11 [INFO] [stderr] Compiling time-core v0.1.2 [INFO] [stderr] Compiling unicode-bidi v0.3.13 [INFO] [stderr] Compiling form_urlencoded v1.2.0 [INFO] [stderr] Compiling platforms v3.1.2 [INFO] [stderr] Compiling futures-task v0.3.28 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling futures-util v0.3.28 [INFO] [stderr] Compiling openssl v0.10.57 [INFO] [stderr] Compiling curve25519-dalek v4.1.2 [INFO] [stderr] Compiling syn v2.0.37 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling getrandom v0.2.10 [INFO] [stderr] Compiling mio v0.8.8 [INFO] [stderr] Compiling parking_lot_core v0.9.8 [INFO] [stderr] Compiling inout v0.1.3 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling socket2 v0.5.4 [INFO] [stderr] Compiling jobserver v0.1.26 [INFO] [stderr] Compiling signal-hook-registry v1.4.1 [INFO] [stderr] Compiling foreign-types-shared v0.1.1 [INFO] [stderr] Compiling time v0.3.36 [INFO] [stderr] Compiling unicode-normalization v0.1.22 [INFO] [stderr] Compiling crossbeam-utils v0.8.16 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling parking_lot v0.12.1 [INFO] [stderr] Compiling idna v0.4.0 [INFO] [stderr] Compiling futures-sink v0.3.28 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling foreign-types v0.3.2 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling snow v0.9.6 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling httparse v1.8.0 [INFO] [stderr] Compiling url v2.4.1 [INFO] [stderr] Compiling tracing-core v0.1.31 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling universal-hash v0.5.1 [INFO] [stderr] Compiling aead v0.5.2 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling polyval v0.6.1 [INFO] [stderr] Compiling poly1305 v0.8.0 [INFO] [stderr] Compiling bitflags v2.4.0 [INFO] [stderr] Compiling regex-syntax v0.7.5 [INFO] [stderr] Compiling ghash v0.5.0 [INFO] [stderr] Compiling async-trait v0.1.73 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling ctr v0.9.2 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling chacha20 v0.9.1 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling blake2 v0.10.6 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling chacha20poly1305 v0.10.1 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling utf-8 v0.7.6 [INFO] [stderr] Compiling data-encoding v2.4.0 [INFO] [stderr] Compiling os_str_bytes v6.5.1 [INFO] [stderr] Compiling aes-gcm v0.10.3 [INFO] [stderr] Compiling vergen v7.5.1 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling openssl-probe v0.1.5 [INFO] [stderr] Compiling overload v0.1.1 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling walkdir v2.4.0 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling nu-ansi-term v0.46.0 [INFO] [stderr] Compiling clap_lex v0.2.4 [INFO] [stderr] Compiling crossbeam-channel v0.5.8 [INFO] [stderr] Compiling inotify v0.9.6 [INFO] [stderr] Compiling tracing-log v0.1.3 [INFO] [stderr] Compiling sharded-slab v0.1.6 [INFO] [stderr] Compiling filetime v0.2.22 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling thread_local v1.1.7 [INFO] [stderr] Compiling instant v0.1.12 [INFO] [stderr] Compiling libz-sys v1.1.12 [INFO] [stderr] Compiling openssl-sys v0.9.93 [INFO] [stderr] Compiling libgit2-sys v0.14.2+1.5.1 [INFO] [stderr] Compiling textwrap v0.16.0 [INFO] [stderr] Compiling base64 v0.13.1 [INFO] [stderr] Compiling termcolor v1.3.0 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling notify v5.2.0 [INFO] [stderr] Compiling socket2 v0.4.9 [INFO] [stderr] Compiling fdlimit v0.2.1 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling regex-automata v0.3.9 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling serde_derive v1.0.188 [INFO] [stderr] Compiling thiserror-impl v1.0.49 [INFO] [stderr] Compiling tokio-macros v2.1.0 [INFO] [stderr] Compiling enum-iterator-derive v1.2.1 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.0 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling futures-macro v0.3.28 [INFO] [stderr] Compiling tracing-attributes v0.1.26 [INFO] [stderr] Compiling getset v0.1.2 [INFO] [stderr] Compiling pin-project-internal v1.1.3 [INFO] [stderr] Compiling regex v1.9.6 [INFO] [stderr] Compiling clap_derive v3.2.25 [INFO] [stderr] Compiling enum-iterator v1.4.1 [INFO] [stderr] Compiling thiserror v1.0.49 [INFO] [stderr] Compiling pin-project v1.1.3 [INFO] [stderr] Compiling tracing v0.1.37 [INFO] [stderr] Compiling tracing-subscriber v0.3.17 [INFO] [stderr] Compiling clap v3.2.25 [INFO] [stderr] Compiling git2 v0.16.1 [INFO] [stderr] Compiling bytes v1.5.0 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Compiling tokio v1.32.0 [INFO] [stderr] Compiling http v0.2.9 [INFO] [stderr] Compiling tungstenite v0.20.1 [INFO] [stderr] Compiling rathole v0.5.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling async-http-proxy v1.2.5 [INFO] [stderr] Compiling tokio-util v0.7.9 [INFO] [stderr] Compiling tokio-tungstenite v0.20.1 [INFO] [stderr] Compiling async-socks5 v0.5.1 [INFO] [stderr] Compiling snowstorm v0.4.0 [INFO] [stderr] Compiling backoff v0.4.0 [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/transport/noise.rs:25:16 [INFO] [stdout] | [INFO] [stdout] 25 | fn builder(&self) -> Builder { [INFO] [stdout] | ^^^^^ ^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [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] 25 | fn builder(&self) -> Builder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 51.51s [INFO] running `Command { std: "docker" "inspect" "03dad659eb3260b988a117dfb491ec4ecbbfe9ca85f791474ce18ceb863e971f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "03dad659eb3260b988a117dfb491ec4ecbbfe9ca85f791474ce18ceb863e971f", kill_on_drop: false }` [INFO] [stdout] 03dad659eb3260b988a117dfb491ec4ecbbfe9ca85f791474ce18ceb863e971f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9261059c915f8f7deaf39a17ab2d5f853213c2013147773b1a3770ff7307fa73 [INFO] running `Command { std: "docker" "start" "-a" "9261059c915f8f7deaf39a17ab2d5f853213c2013147773b1a3770ff7307fa73", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.148 [INFO] [stderr] Compiling subtle v2.5.0 [INFO] [stderr] Compiling cpufeatures v0.2.9 [INFO] [stderr] Compiling serde v1.0.188 [INFO] [stderr] Compiling unicode-bidi v0.3.13 [INFO] [stderr] Compiling smallvec v1.11.1 [INFO] [stderr] Compiling percent-encoding v2.3.0 [INFO] [stderr] Compiling thiserror v1.0.49 [INFO] [stderr] Compiling lock_api v0.4.10 [INFO] [stderr] Compiling zeroize v1.6.0 [INFO] [stderr] Compiling inout v0.1.3 [INFO] [stderr] Compiling anyhow v1.0.75 [INFO] [stderr] Compiling time v0.3.36 [INFO] [stderr] Compiling opaque-debug v0.3.0 [INFO] [stderr] Compiling futures-core v0.3.28 [INFO] [stderr] Compiling futures-sink v0.3.28 [INFO] [stderr] Compiling tracing-core v0.1.31 [INFO] [stderr] Compiling futures-task v0.3.28 [INFO] [stderr] Compiling regex-syntax v0.7.5 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Compiling bitflags v2.4.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.16 [INFO] [stderr] Compiling data-encoding v2.4.0 [INFO] [stderr] Compiling form_urlencoded v1.2.0 [INFO] [stderr] Compiling curve25519-dalek v4.1.2 [INFO] [stderr] Compiling walkdir v2.4.0 [INFO] [stderr] Compiling sharded-slab v0.1.6 [INFO] [stderr] Compiling jobserver v0.1.26 [INFO] [stderr] Compiling getrandom v0.2.10 [INFO] [stderr] Compiling mio v0.8.8 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling parking_lot_core v0.9.8 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling idna v0.4.0 [INFO] [stderr] Compiling parking_lot v0.12.1 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling socket2 v0.5.4 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling signal-hook-registry v1.4.1 [INFO] [stderr] Compiling vergen v7.5.1 [INFO] [stderr] Compiling universal-hash v0.5.1 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling url v2.4.1 [INFO] [stderr] Compiling polyval v0.6.1 [INFO] [stderr] Compiling aead v0.5.2 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling poly1305 v0.8.0 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling ctr v0.9.2 [INFO] [stderr] Compiling chacha20 v0.9.1 [INFO] [stderr] Compiling ghash v0.5.0 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling blake2 v0.10.6 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling futures-util v0.3.28 [INFO] [stderr] Compiling inotify v0.9.6 [INFO] [stderr] Compiling tracing-log v0.1.3 [INFO] [stderr] Compiling chacha20poly1305 v0.10.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling tracing v0.1.37 [INFO] [stderr] Compiling crossbeam-channel v0.5.8 [INFO] [stderr] Compiling filetime v0.2.22 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling pin-project v1.1.3 [INFO] [stderr] Compiling termcolor v1.3.0 [INFO] [stderr] Compiling fdlimit v0.2.1 [INFO] [stderr] Compiling openssl-sys v0.9.93 [INFO] [stderr] Compiling libz-sys v1.1.12 [INFO] [stderr] Compiling libgit2-sys v0.14.2+1.5.1 [INFO] [stderr] Compiling aes-gcm v0.10.3 [INFO] [stderr] Compiling clap v3.2.25 [INFO] [stderr] Compiling socket2 v0.4.9 [INFO] [stderr] Compiling snow v0.9.6 [INFO] [stderr] Compiling notify v5.2.0 [INFO] [stderr] Compiling regex-automata v0.3.9 [INFO] [stderr] Compiling openssl v0.10.57 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Compiling bytes v1.5.0 [INFO] [stderr] Compiling bincode v1.3.3 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling tokio v1.32.0 [INFO] [stderr] Compiling http v0.2.9 [INFO] [stderr] Compiling regex v1.9.6 [INFO] [stderr] Compiling tracing-subscriber v0.3.17 [INFO] [stderr] Compiling tungstenite v0.20.1 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling git2 v0.16.1 [INFO] [stderr] Compiling async-socks5 v0.5.1 [INFO] [stderr] Compiling backoff v0.4.0 [INFO] [stderr] Compiling snowstorm v0.4.0 [INFO] [stderr] Compiling tokio-util v0.7.9 [INFO] [stderr] Compiling tokio-tungstenite v0.20.1 [INFO] [stderr] Compiling async-http-proxy v1.2.5 [INFO] [stderr] Compiling rathole v0.5.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/transport/noise.rs:25:16 [INFO] [stdout] | [INFO] [stdout] 25 | fn builder(&self) -> Builder { [INFO] [stdout] | ^^^^^ ^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [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] 25 | fn builder(&self) -> Builder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/transport/noise.rs:25:16 [INFO] [stdout] | [INFO] [stdout] 25 | fn builder(&self) -> Builder { [INFO] [stdout] | ^^^^^ ^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [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] 25 | fn builder(&self) -> Builder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/transport/noise.rs:25:16 [INFO] [stdout] | [INFO] [stdout] 25 | fn builder(&self) -> Builder { [INFO] [stdout] | ^^^^^ ^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [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] 25 | fn builder(&self) -> Builder<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 06s [INFO] running `Command { std: "docker" "inspect" "9261059c915f8f7deaf39a17ab2d5f853213c2013147773b1a3770ff7307fa73", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9261059c915f8f7deaf39a17ab2d5f853213c2013147773b1a3770ff7307fa73", kill_on_drop: false }` [INFO] [stdout] 9261059c915f8f7deaf39a17ab2d5f853213c2013147773b1a3770ff7307fa73 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] a1516fbe34cbc837a5d0555ebebae9e690d5e0e45702b24e5ae3b4432a76cbd9 [INFO] running `Command { std: "docker" "start" "-a" "a1516fbe34cbc837a5d0555ebebae9e690d5e0e45702b24e5ae3b4432a76cbd9", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/transport/noise.rs:25:16 [INFO] [stderr] | [INFO] [stderr] 25 | fn builder(&self) -> Builder { [INFO] [stderr] | ^^^^^ ^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [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] 25 | fn builder(&self) -> Builder<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: `rathole` (lib) generated 1 warning (run `cargo fix --lib -p rathole` to apply 1 suggestion) [INFO] [stderr] warning: `rathole` (lib test) generated 1 warning (1 duplicate) [INFO] [stderr] warning: `rathole` (lib) generated 1 warning (1 duplicate) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.40s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rathole-69b24cc9095e4e22) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test config::tests::test_invalid_config ... ok [INFO] [stdout] test tests::test_determine_run_mode ... ok [INFO] [stdout] test config_watcher::test::test_calculate_events ... ok [INFO] [stdout] test config::tests::test_validate_server_config ... ok [INFO] [stdout] test config::tests::test_example_config ... ok [INFO] [stdout] test config::tests::test_valid_config ... ok [INFO] [stdout] test config::tests::test_validate_client_config ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rathole-ce5dc713ff9df7eb) [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running tests/integration_test.rs (/opt/rustwide/target/debug/deps/integration_test-dcd978cce0a37712) [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] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] 2026-01-07T06:04:48.643083Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: start the client [INFO] [stdout] 2026-01-07T06:04:48.643083Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: start the client [INFO] [stdout] 2026-01-07T06:04:48.651293Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:48.651300Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:48.651567Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:04:48.651570Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:04:48.651656Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:04:48.651676Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:04:48.654252Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 584.841162ms... [INFO] [stdout] 2026-01-07T06:04:48.654474Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 450.732621ms... [INFO] [stdout] 2026-01-07T06:04:48.654676Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 450.613151ms... [INFO] [stdout] 2026-01-07T06:04:48.654841Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 520.945982ms... [INFO] [stdout] 2026-01-07T06:04:49.106809Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 1.145632901s... [INFO] [stdout] 2026-01-07T06:04:49.107044Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 1.190156545s... [INFO] [stdout] 2026-01-07T06:04:49.194695Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 815.604087ms... [INFO] [stdout] 2026-01-07T06:04:49.244626Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 984.985994ms... [INFO] [stdout] 2026-01-07T06:04:49.644935Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: start the server [INFO] [stdout] 2026-01-07T06:04:49.652206Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: start the server [INFO] [stdout] 2026-01-07T06:04:49.661413Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:49.661760Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-01-07T06:04:49.686147Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:49.686394Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-01-07T06:04:50.014940Z  INFO connection{addr=127.0.0.1:45180}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:50.021539Z  INFO connection{addr=127.0.0.1:45180}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:04:50.025038Z  INFO connection{addr=127.0.0.1:45180}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:04:50.025318Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:50.231216Z  INFO connection{addr=127.0.0.1:45218}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:50.233425Z  INFO connection{addr=127.0.0.1:45218}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:04:50.233638Z  INFO connection{addr=127.0.0.1:45218}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:04:50.233813Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:50.254840Z  INFO connection{addr=127.0.0.1:51200}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:50.255266Z  INFO connection{addr=127.0.0.1:51200}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:04:50.255764Z  INFO connection{addr=127.0.0.1:51200}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:04:50.255897Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:50.299075Z  INFO connection{addr=127.0.0.1:51270}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:50.299471Z  INFO connection{addr=127.0.0.1:51270}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:04:50.299871Z  INFO connection{addr=127.0.0.1:51270}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:04:50.300001Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:52.146338Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:04:52.153312Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:04:52.155244Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:04:52.158966Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: shutdown the client [INFO] [stdout] 2026-01-07T06:04:52.159073Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:04:52.159294Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:52.159411Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:52.159532Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: restart the client [INFO] [stdout] 2026-01-07T06:04:52.162233Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:52.162377Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:04:52.162480Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:04:52.163172Z  INFO connection{addr=127.0.0.1:45256}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:52.163308Z  INFO connection{addr=127.0.0.1:45268}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:52.163733Z  WARN connection{addr=127.0.0.1:45256}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-01-07T06:04:52.163796Z  INFO connection{addr=127.0.0.1:45256}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:04:52.164000Z  WARN connection{addr=127.0.0.1:45268}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-01-07T06:04:52.164053Z  INFO connection{addr=127.0.0.1:45268}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:04:52.164354Z  INFO connection{addr=127.0.0.1:45180}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:52.164544Z  INFO connection{addr=127.0.0.1:45256}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:04:52.164807Z  INFO connection{addr=127.0.0.1:45218}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:52.164969Z  INFO connection{addr=127.0.0.1:45268}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:04:52.165211Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:52.165346Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:52.165558Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:04:52.165731Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.165863Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:04:52.166005Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.208128Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:04:52.234876Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: shutdown the client [INFO] [stdout] 2026-01-07T06:04:52.235074Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:04:52.235524Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:52.235662Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:52.235894Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: restart the client [INFO] [stdout] 2026-01-07T06:04:52.239147Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:52.239318Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:04:52.239429Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:04:52.240214Z  INFO connection{addr=127.0.0.1:51364}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:52.240332Z  INFO connection{addr=127.0.0.1:51376}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:52.240649Z  WARN connection{addr=127.0.0.1:51364}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-01-07T06:04:52.240697Z  INFO connection{addr=127.0.0.1:51364}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:04:52.240845Z  WARN connection{addr=127.0.0.1:51376}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-01-07T06:04:52.240893Z  INFO connection{addr=127.0.0.1:51376}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:04:52.240996Z  INFO connection{addr=127.0.0.1:51200}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:52.241158Z  INFO connection{addr=127.0.0.1:51200}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:04:52.241452Z  INFO connection{addr=127.0.0.1:51270}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:52.241565Z  INFO connection{addr=127.0.0.1:51270}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:04:52.241820Z  INFO connection{addr=127.0.0.1:51200}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:52.242225Z  INFO connection{addr=127.0.0.1:51364}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:04:52.242324Z  INFO connection{addr=127.0.0.1:51270}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:52.242776Z  INFO connection{addr=127.0.0.1:51376}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:04:52.242958Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:52.243304Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:52.243796Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.244033Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.244372Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.244599Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.244851Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.245231Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.245430Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.245685Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.245926Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.246153Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.246803Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.247048Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.247348Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.247516Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.247663Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:52.247818Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.160949Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:04:53.162907Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:04:53.164549Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: shutdown the server [INFO] [stdout] 2026-01-07T06:04:53.164624Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:04:53.164770Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:04:53.164796Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:53.164986Z  INFO connection{addr=127.0.0.1:45268}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:53.165295Z  INFO connection{addr=127.0.0.1:45256}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:53.165450Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: restart the server [INFO] [stdout] 2026-01-07T06:04:53.165597Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:04:53.165753Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.165933Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 522.428834ms... [INFO] [stdout] 2026-01-07T06:04:53.166039Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:04:53.166212Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.166382Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 474.700058ms... [INFO] [stdout] 2026-01-07T06:04:53.167597Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:53.167761Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-01-07T06:04:53.236965Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:04:53.274761Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:04:53.306186Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: shutdown the server [INFO] [stdout] 2026-01-07T06:04:53.306388Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:04:53.306596Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:04:53.306658Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:53.306820Z  INFO connection{addr=127.0.0.1:51364}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:53.307011Z  INFO connection{addr=127.0.0.1:51364}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:04:53.307194Z  INFO connection{addr=127.0.0.1:51376}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:53.307352Z  INFO connection{addr=127.0.0.1:51376}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:04:53.307491Z  INFO connection{addr=127.0.0.1:51364}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:53.307811Z  INFO connection{addr=127.0.0.1:51376}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:53.308194Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: restart the server [INFO] [stdout] 2026-01-07T06:04:53.308496Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 512.137058ms... [INFO] [stdout] 2026-01-07T06:04:53.308715Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 528.902818ms... [INFO] [stdout] 2026-01-07T06:04:53.310269Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.310482Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.310670Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.310846Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.311028Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.311244Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.311433Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.311619Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.311801Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.311991Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.312211Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.312393Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.312579Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.312768Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.312945Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.313133Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:53.314193Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:53.314407Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-01-07T06:04:53.662021Z  INFO connection{addr=127.0.0.1:45320}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:53.662404Z  INFO connection{addr=127.0.0.1:45320}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:04:53.662715Z  INFO connection{addr=127.0.0.1:45320}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:04:53.662911Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:53.689978Z  INFO connection{addr=127.0.0.1:45348}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:53.690477Z  INFO connection{addr=127.0.0.1:45348}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:04:53.690703Z  INFO connection{addr=127.0.0.1:45348}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:04:53.690892Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:53.821983Z  INFO connection{addr=127.0.0.1:51538}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:53.822423Z  INFO connection{addr=127.0.0.1:51538}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:04:53.822849Z  INFO connection{addr=127.0.0.1:51538}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:04:53.822992Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:53.840765Z  INFO connection{addr=127.0.0.1:51612}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:53.841182Z  INFO connection{addr=127.0.0.1:51612}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:04:53.841583Z  INFO connection{addr=127.0.0.1:51612}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:04:53.843206Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:55.669364Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-01-07T06:04:55.675444Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-01-07T06:04:55.675551Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:04:55.675676Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:04:55.675831Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:04:55.675860Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:55.676247Z  INFO connection{addr=127.0.0.1:45348}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:55.676511Z  INFO connection{addr=127.0.0.1:45320}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:55.676643Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:55.676778Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:55.676985Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: start the client [INFO] [stdout] 2026-01-07T06:04:55.677217Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:04:55.677410Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.677656Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:04:55.677806Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.689164Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:55.799512Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:04:55.799822Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:04:55.800402Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 468.38728ms... [INFO] [stdout] 2026-01-07T06:04:55.800627Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 493.730279ms... [INFO] [stdout] 2026-01-07T06:04:55.809366Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-01-07T06:04:55.899978Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-01-07T06:04:55.900259Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:04:55.900420Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:04:55.900593Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:04:55.900641Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:55.900787Z  INFO connection{addr=127.0.0.1:51538}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:55.900931Z  INFO connection{addr=127.0.0.1:51538}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:04:55.901056Z  INFO connection{addr=127.0.0.1:51612}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:55.901212Z  INFO connection{addr=127.0.0.1:51612}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:04:55.901332Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:55.901486Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:55.901627Z  INFO connection{addr=127.0.0.1:51538}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:55.901877Z  INFO connection{addr=127.0.0.1:51612}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:55.902421Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: start the client [INFO] [stdout] 2026-01-07T06:04:55.902739Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.902923Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.903116Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.903297Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.903485Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.903661Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.903836Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.904000Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.904194Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.904364Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.904535Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.904704Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.904868Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.905036Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.905240Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.905410Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:55.908154Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:55.957217Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:04:55.957514Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:04:55.958561Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 598.474799ms... [INFO] [stdout] 2026-01-07T06:04:55.958818Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 438.444175ms... [INFO] [stdout] 2026-01-07T06:04:56.270020Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 1.138489914s... [INFO] [stdout] 2026-01-07T06:04:56.301787Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 1.140008152s... [INFO] [stdout] 2026-01-07T06:04:56.398782Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 821.903026ms... [INFO] [stdout] 2026-01-07T06:04:56.563605Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 829.326175ms... [INFO] [stdout] 2026-01-07T06:04:56.678399Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: start the server [INFO] [stdout] 2026-01-07T06:04:56.679861Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:56.763010Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-01-07T06:04:56.904358Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: start the server [INFO] [stdout] 2026-01-07T06:04:56.905624Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:56.970364Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-01-07T06:04:57.231126Z  INFO connection{addr=127.0.0.1:33680}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:57.231653Z  INFO connection{addr=127.0.0.1:33680}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:04:57.232261Z  INFO connection{addr=127.0.0.1:33680}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:04:57.232380Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:57.401382Z  INFO connection{addr=127.0.0.1:33770}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:57.401797Z  INFO connection{addr=127.0.0.1:33770}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:04:57.402332Z  INFO connection{addr=127.0.0.1:33770}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:04:57.402440Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:57.414921Z  INFO connection{addr=127.0.0.1:57226}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:57.415519Z  INFO connection{addr=127.0.0.1:57226}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:04:57.415739Z  INFO connection{addr=127.0.0.1:57226}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:04:57.415954Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:57.446765Z  INFO connection{addr=127.0.0.1:57246}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:57.447429Z  INFO connection{addr=127.0.0.1:57246}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:04:57.447732Z  INFO connection{addr=127.0.0.1:57246}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:04:57.447976Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:59.183251Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:04:59.185812Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:04:59.187898Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: shutdown the client [INFO] [stdout] 2026-01-07T06:04:59.187976Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:04:59.188186Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:59.188375Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:59.188634Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: restart the client [INFO] [stdout] 2026-01-07T06:04:59.189750Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:59.248966Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:04:59.249272Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:04:59.257349Z  INFO connection{addr=127.0.0.1:57274}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:59.259534Z  WARN connection{addr=127.0.0.1:57274}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-01-07T06:04:59.259664Z  INFO connection{addr=127.0.0.1:57274}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:04:59.260286Z  INFO connection{addr=127.0.0.1:57246}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:59.260605Z  INFO connection{addr=127.0.0.1:57274}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:04:59.261053Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:59.261354Z  INFO connection{addr=127.0.0.1:57280}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:59.261692Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:04:59.262149Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.263522Z  WARN connection{addr=127.0.0.1:57280}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-01-07T06:04:59.263656Z  INFO connection{addr=127.0.0.1:57280}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:04:59.265427Z  INFO connection{addr=127.0.0.1:57226}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:59.265713Z  INFO connection{addr=127.0.0.1:57280}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:04:59.266040Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:59.267750Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:04:59.268050Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.407263Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:04:59.460989Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:04:59.499127Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: shutdown the client [INFO] [stdout] 2026-01-07T06:04:59.499428Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:04:59.500592Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:59.500843Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:59.501062Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: restart the client [INFO] [stdout] 2026-01-07T06:04:59.502653Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:04:59.554220Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:04:59.554480Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:04:59.561062Z  INFO connection{addr=127.0.0.1:33878}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:59.563358Z  WARN connection{addr=127.0.0.1:33878}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-01-07T06:04:59.563636Z  INFO connection{addr=127.0.0.1:33878}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:04:59.564490Z  INFO connection{addr=127.0.0.1:33680}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:59.565046Z  INFO connection{addr=127.0.0.1:33680}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:04:59.565825Z  INFO connection{addr=127.0.0.1:33680}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:59.566462Z  INFO connection{addr=127.0.0.1:33878}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:04:59.566707Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:59.567312Z  INFO connection{addr=127.0.0.1:33894}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:04:59.568232Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.568927Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.569613Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.570590Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.571646Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.572484Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.573066Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.573624Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.577260Z  WARN connection{addr=127.0.0.1:33894}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-01-07T06:04:59.577416Z  INFO connection{addr=127.0.0.1:33894}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:04:59.579216Z  INFO connection{addr=127.0.0.1:33770}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:04:59.579482Z  INFO connection{addr=127.0.0.1:33770}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:04:59.580126Z  INFO connection{addr=127.0.0.1:33770}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:04:59.580883Z  INFO connection{addr=127.0.0.1:33894}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:04:59.581213Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:04:59.583290Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.583610Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.584197Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.584492Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.584873Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.585261Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.585547Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:04:59.587351Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.198567Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:00.201405Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:00.204053Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: shutdown the server [INFO] [stdout] 2026-01-07T06:05:00.204394Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:00.204558Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:00.204576Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:00.207231Z  INFO connection{addr=127.0.0.1:57274}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:00.207584Z  INFO connection{addr=127.0.0.1:57280}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:00.208037Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: restart the server [INFO] [stdout] 2026-01-07T06:05:00.208359Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:05:00.208584Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.208829Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 446.471779ms... [INFO] [stdout] 2026-01-07T06:05:00.208954Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:05:00.209154Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.209374Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 420.54163ms... [INFO] [stdout] 2026-01-07T06:05:00.221271Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:00.298622Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-01-07T06:05:00.501374Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:00.564087Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:00.612604Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: shutdown the server [INFO] [stdout] 2026-01-07T06:05:00.612794Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:00.612970Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:00.613009Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:00.614427Z  INFO connection{addr=127.0.0.1:33878}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:00.614627Z  INFO connection{addr=127.0.0.1:33878}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:00.614777Z  INFO connection{addr=127.0.0.1:33894}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:00.614939Z  INFO connection{addr=127.0.0.1:33894}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:00.615066Z  INFO connection{addr=127.0.0.1:33878}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:00.615479Z  INFO connection{addr=127.0.0.1:33894}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:00.615999Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: restart the server [INFO] [stdout] 2026-01-07T06:05:00.617176Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 457.823049ms... [INFO] [stdout] 2026-01-07T06:05:00.617514Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 402.817394ms... [INFO] [stdout] 2026-01-07T06:05:00.617799Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.618088Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.618377Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.618656Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.618918Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.619218Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.619513Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.619806Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.620116Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.620415Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.620706Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.622364Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.622688Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.622988Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.623277Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.623569Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:00.626266Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:00.636130Z  INFO connection{addr=127.0.0.1:57332}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:00.636568Z  INFO connection{addr=127.0.0.1:57332}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:00.636823Z  INFO connection{addr=127.0.0.1:57332}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:00.637074Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:00.668397Z  INFO connection{addr=127.0.0.1:57354}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:00.668863Z  INFO connection{addr=127.0.0.1:57354}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:00.669774Z  INFO connection{addr=127.0.0.1:57354}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:00.670529Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:00.682838Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-01-07T06:05:01.026329Z  INFO connection{addr=127.0.0.1:34046}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:01.026745Z  INFO connection{addr=127.0.0.1:34046}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:01.027296Z  INFO connection{addr=127.0.0.1:34046}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:01.027414Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:01.079782Z  INFO connection{addr=127.0.0.1:34128}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:01.080145Z  INFO connection{addr=127.0.0.1:34128}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:01.080565Z  INFO connection{addr=127.0.0.1:34128}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:01.080660Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:02.711247Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-01-07T06:05:02.718923Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-01-07T06:05:02.719056Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:02.719259Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:02.719467Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:02.719495Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:02.721982Z  INFO connection{addr=127.0.0.1:57332}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:02.723380Z  INFO connection{addr=127.0.0.1:57354}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:02.723674Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:02.723929Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:02.724402Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: start the client [INFO] [stdout] 2026-01-07T06:05:02.724719Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:05:02.725027Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:02.725292Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:05:02.725615Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:02.728078Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:02.728666Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:02.728846Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:02.729370Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Failed to connect TCP socket: Connection refused (os error 111). Retry in 407.062833ms... [INFO] [stdout] 2026-01-07T06:05:02.729716Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Failed to connect TCP socket: Connection refused (os error 111). Retry in 483.309908ms... [INFO] [stdout] 2026-01-07T06:05:03.117366Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-01-07T06:05:03.139620Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Failed to connect TCP socket: Connection refused (os error 111). Retry in 1.140651259s... [INFO] [stdout] 2026-01-07T06:05:03.227726Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Failed to connect TCP socket: Connection refused (os error 111). Retry in 1.060577034s... [INFO] [stdout] 2026-01-07T06:05:03.239844Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-01-07T06:05:03.240040Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:03.240367Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:03.240574Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:03.240702Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:03.243228Z  INFO connection{addr=127.0.0.1:34046}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:03.243358Z  INFO connection{addr=127.0.0.1:34046}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:03.243447Z  INFO connection{addr=127.0.0.1:34128}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:03.243539Z  INFO connection{addr=127.0.0.1:34128}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:03.243610Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:03.243733Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:03.243848Z  INFO connection{addr=127.0.0.1:34046}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:03.244138Z  INFO connection{addr=127.0.0.1:34128}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:03.244493Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: start the client [INFO] [stdout] 2026-01-07T06:05:03.244876Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.245050Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.245233Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.245392Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.245554Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.245705Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.245859Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.246007Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.246278Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.246518Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.246756Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.246995Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.247243Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.247495Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.247727Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.247998Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:03.251747Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:03.252205Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:03.252329Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:03.252727Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Failed to connect TCP socket: Connection refused (os error 111). Retry in 536.869094ms... [INFO] [stdout] 2026-01-07T06:05:03.252997Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Failed to connect TCP socket: Connection refused (os error 111). Retry in 414.855678ms... [INFO] [stdout] 2026-01-07T06:05:03.671235Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Failed to connect TCP socket: Connection refused (os error 111). Retry in 1.181011016s... [INFO] [stdout] 2026-01-07T06:05:03.726352Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: start the server [INFO] [stdout] 2026-01-07T06:05:03.727639Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:03.727860Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-01-07T06:05:03.791057Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Failed to connect TCP socket: Connection refused (os error 111). Retry in 827.023021ms... [INFO] [stdout] 2026-01-07T06:05:04.246233Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: start the server [INFO] [stdout] 2026-01-07T06:05:04.256164Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:04.256479Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-01-07T06:05:04.296024Z  INFO connection{addr=127.0.0.1:57428}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:04.304875Z  INFO connection{addr=127.0.0.1:57428}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:04.305303Z  INFO connection{addr=127.0.0.1:57442}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:04.305699Z  INFO connection{addr=127.0.0.1:57428}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:04.306326Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:04.307695Z  INFO connection{addr=127.0.0.1:57442}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:04.315113Z  INFO connection{addr=127.0.0.1:57442}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:04.317659Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:04.626564Z  INFO connection{addr=127.0.0.1:34272}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:04.627995Z  INFO connection{addr=127.0.0.1:34272}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:04.629360Z  INFO connection{addr=127.0.0.1:34272}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:04.629666Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:04.860745Z  INFO connection{addr=127.0.0.1:34356}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:04.861608Z  INFO connection{addr=127.0.0.1:34356}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:04.863021Z  INFO connection{addr=127.0.0.1:34356}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:04.865339Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:06.235244Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:06.242377Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:06.249489Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: shutdown the client [INFO] [stdout] 2026-01-07T06:05:06.249576Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:06.249764Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:06.249874Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:06.249986Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: restart the client [INFO] [stdout] 2026-01-07T06:05:06.251045Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:06.251454Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:06.251535Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:06.272517Z  INFO connection{addr=127.0.0.1:42410}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:06.275257Z  INFO connection{addr=127.0.0.1:42426}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:06.275680Z  WARN connection{addr=127.0.0.1:42410}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-01-07T06:05:06.275849Z  INFO connection{addr=127.0.0.1:42410}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:06.276502Z  INFO connection{addr=127.0.0.1:57442}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:06.276699Z  INFO connection{addr=127.0.0.1:42410}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:06.277200Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:06.277706Z  WARN connection{addr=127.0.0.1:42426}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-01-07T06:05:06.277862Z  INFO connection{addr=127.0.0.1:42426}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:06.278078Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:05:06.278285Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:06.278628Z  INFO connection{addr=127.0.0.1:57428}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:06.278807Z  INFO connection{addr=127.0.0.1:42426}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:06.279447Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:06.283492Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:05:06.283675Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:06.750390Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:07.002898Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:07.090609Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: shutdown the client [INFO] [stdout] 2026-01-07T06:05:07.090793Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:07.091048Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:07.091242Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:07.091411Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: restart the client [INFO] [stdout] 2026-01-07T06:05:07.131332Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:07.132410Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:07.132676Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:07.147475Z  INFO connection{addr=127.0.0.1:42006}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:07.150219Z  INFO connection{addr=127.0.0.1:42014}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:07.150854Z  WARN connection{addr=127.0.0.1:42006}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-01-07T06:05:07.151267Z  INFO connection{addr=127.0.0.1:42006}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:07.152078Z  INFO connection{addr=127.0.0.1:34356}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:07.152432Z  INFO connection{addr=127.0.0.1:34356}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:07.153915Z  INFO connection{addr=127.0.0.1:34356}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:07.154461Z  INFO connection{addr=127.0.0.1:42006}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:07.154790Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:07.156260Z  WARN connection{addr=127.0.0.1:42014}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-01-07T06:05:07.156463Z  INFO connection{addr=127.0.0.1:42014}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:07.156739Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.157034Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.158260Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.158554Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.158738Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.158921Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.159119Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.159308Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.160136Z  INFO connection{addr=127.0.0.1:34272}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:07.160309Z  INFO connection{addr=127.0.0.1:34272}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:07.161683Z  INFO connection{addr=127.0.0.1:34272}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:07.162065Z  INFO connection{addr=127.0.0.1:42014}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:07.162369Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:07.181734Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.182092Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.182318Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.182507Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.182686Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.182869Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.183044Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.183253Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.259181Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:07.272884Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:07.286398Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: shutdown the server [INFO] [stdout] 2026-01-07T06:05:07.286608Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:07.286831Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:07.286893Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:07.287238Z  INFO connection{addr=127.0.0.1:42410}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:07.287546Z  INFO connection{addr=127.0.0.1:42426}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:07.287880Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: restart the server [INFO] [stdout] 2026-01-07T06:05:07.288213Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:05:07.288458Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.288700Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 592.148718ms... [INFO] [stdout] 2026-01-07T06:05:07.290217Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:05:07.290424Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:07.290763Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 411.234898ms... [INFO] [stdout] 2026-01-07T06:05:07.294134Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:07.294386Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-01-07T06:05:07.711732Z  INFO connection{addr=127.0.0.1:42468}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:07.712898Z  INFO connection{addr=127.0.0.1:42468}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:07.713363Z  INFO connection{addr=127.0.0.1:42468}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:07.715783Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:07.892828Z  INFO connection{addr=127.0.0.1:42490}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:07.893913Z  INFO connection{addr=127.0.0.1:42490}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:07.894190Z  INFO connection{addr=127.0.0.1:42490}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:07.894740Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:08.092483Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:08.395806Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:08.503436Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: shutdown the server [INFO] [stdout] 2026-01-07T06:05:08.503663Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:08.503918Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:08.503985Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:08.504184Z  INFO connection{addr=127.0.0.1:42006}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:08.504412Z  INFO connection{addr=127.0.0.1:42006}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:08.504580Z  INFO connection{addr=127.0.0.1:42014}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:08.504877Z  INFO connection{addr=127.0.0.1:42014}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:08.505017Z  INFO connection{addr=127.0.0.1:42006}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:08.505479Z  INFO connection{addr=127.0.0.1:42014}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:08.505902Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: restart the server [INFO] [stdout] 2026-01-07T06:05:08.508340Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 569.624367ms... [INFO] [stdout] 2026-01-07T06:05:08.508616Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 522.475286ms... [INFO] [stdout] 2026-01-07T06:05:08.508945Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.509270Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.509498Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.509731Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.509953Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.510176Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.510482Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.510702Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.510920Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.511152Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.511381Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.511689Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.511919Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.512178Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.512408Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.513077Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:08.516275Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:08.517653Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-01-07T06:05:09.040007Z  INFO connection{addr=127.0.0.1:42180}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:09.042526Z  INFO connection{addr=127.0.0.1:42180}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:09.044264Z  INFO connection{addr=127.0.0.1:42180}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:09.044639Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:09.107980Z  INFO connection{addr=127.0.0.1:42270}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:09.109310Z  INFO connection{addr=127.0.0.1:42270}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:09.110973Z  INFO connection{addr=127.0.0.1:42270}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:09.111335Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:09.790248Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-01-07T06:05:09.822883Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-01-07T06:05:09.824293Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:09.824602Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:09.824892Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:09.824963Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:09.825348Z  INFO connection{addr=127.0.0.1:42490}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:09.825786Z  INFO connection{addr=127.0.0.1:42468}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:09.826008Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:09.826222Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:09.826517Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: start the client [INFO] [stdout] 2026-01-07T06:05:09.826789Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:05:09.827181Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:09.827405Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-01-07T06:05:09.829221Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:09.837192Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:09.837389Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:09.837491Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:09.838161Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 572.648876ms... [INFO] [stdout] 2026-01-07T06:05:09.838353Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 435.261672ms... [INFO] [stdout] 2026-01-07T06:05:10.275894Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 1.052313688s... [INFO] [stdout] 2026-01-07T06:05:10.412853Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 1.015079842s... [INFO] [stdout] 2026-01-07T06:05:10.828413Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: start the server [INFO] [stdout] 2026-01-07T06:05:10.829869Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:10.830370Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-01-07T06:05:11.006631Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-01-07T06:05:11.330694Z  INFO connection{addr=127.0.0.1:42552}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:11.333513Z  INFO connection{addr=127.0.0.1:42552}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:11.333872Z  INFO connection{addr=127.0.0.1:42552}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:11.337353Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:11.430391Z  INFO connection{addr=127.0.0.1:42584}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:11.432456Z  INFO connection{addr=127.0.0.1:42584}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:11.432776Z  INFO connection{addr=127.0.0.1:42584}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:11.436373Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:11.656255Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-01-07T06:05:11.656673Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:11.657057Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:11.657341Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:11.657412Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:11.657603Z  INFO connection{addr=127.0.0.1:42270}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:11.657814Z  INFO connection{addr=127.0.0.1:42270}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:11.658117Z  INFO connection{addr=127.0.0.1:42180}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:11.658306Z  INFO connection{addr=127.0.0.1:42180}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:11.658489Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:11.658694Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:11.658894Z  INFO connection{addr=127.0.0.1:42270}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:11.659392Z  INFO connection{addr=127.0.0.1:42180}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:11.659922Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: start the client [INFO] [stdout] 2026-01-07T06:05:11.661459Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.661746Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.662134Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.662377Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.662627Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.662863Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.663114Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.663375Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.663721Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.663956Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.664189Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.664436Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.664683Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.665015Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.665250Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.665835Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-01-07T06:05:11.679278Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:11.679701Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:11.679963Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:11.681242Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 580.259977ms... [INFO] [stdout] 2026-01-07T06:05:11.682155Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 406.180302ms... [INFO] [stdout] 2026-01-07T06:05:12.098553Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 958.040853ms... [INFO] [stdout] 2026-01-07T06:05:12.264556Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 936.028588ms... [INFO] [stdout] 2026-01-07T06:05:12.660381Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: start the server [INFO] [stdout] 2026-01-07T06:05:12.671182Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:12.671529Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-01-07T06:05:13.063271Z  INFO connection{addr=127.0.0.1:42432}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:13.063877Z  INFO connection{addr=127.0.0.1:42432}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:13.064466Z  INFO connection{addr=127.0.0.1:42432}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:13.065378Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:13.202945Z  INFO connection{addr=127.0.0.1:42508}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:13.203460Z  INFO connection{addr=127.0.0.1:42508}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:13.204133Z  INFO connection{addr=127.0.0.1:42508}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:13.204357Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:13.331225Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:13.333990Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:13.337087Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: shutdown the client [INFO] [stdout] 2026-01-07T06:05:13.337242Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:13.337600Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:13.337783Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:13.337968Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: restart the client [INFO] [stdout] 2026-01-07T06:05:13.344139Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:13.344484Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:13.344640Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:13.346548Z  INFO connection{addr=127.0.0.1:42600}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:13.347145Z  INFO connection{addr=127.0.0.1:42606}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:13.347454Z  WARN connection{addr=127.0.0.1:42600}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-01-07T06:05:13.347668Z  INFO connection{addr=127.0.0.1:42600}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:13.349591Z  INFO connection{addr=127.0.0.1:42584}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:13.350005Z  INFO connection{addr=127.0.0.1:42600}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:13.350379Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:13.350715Z  WARN connection{addr=127.0.0.1:42606}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-01-07T06:05:13.350845Z  INFO connection{addr=127.0.0.1:42606}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:13.351531Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:13.351819Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:13.352418Z  INFO connection{addr=127.0.0.1:42552}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:13.355457Z  INFO connection{addr=127.0.0.1:42606}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:13.355862Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:13.356819Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:13.357120Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:14.346261Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:14.349304Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:14.351785Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: shutdown the server [INFO] [stdout] 2026-01-07T06:05:14.351934Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:14.352211Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:14.352277Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:14.352607Z  INFO connection{addr=127.0.0.1:42600}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:14.356474Z  INFO connection{addr=127.0.0.1:42606}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:14.356694Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: restart the server [INFO] [stdout] 2026-01-07T06:05:14.357018Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:14.357258Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:14.357493Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake. Retry in 406.115871ms... [INFO] [stdout] 2026-01-07T06:05:14.357640Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:14.357804Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:14.358012Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake. Retry in 537.35402ms... [INFO] [stdout] 2026-01-07T06:05:14.363155Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:14.363395Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-01-07T06:05:14.768225Z  INFO connection{addr=127.0.0.1:42654}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:14.768624Z  INFO connection{addr=127.0.0.1:42654}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:14.768841Z  INFO connection{addr=127.0.0.1:42654}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:14.769080Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:14.897788Z  INFO connection{addr=127.0.0.1:42684}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:14.898237Z  INFO connection{addr=127.0.0.1:42684}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:14.898464Z  INFO connection{addr=127.0.0.1:42684}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:14.898813Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:15.161835Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:15.222269Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:15.273929Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: shutdown the client [INFO] [stdout] 2026-01-07T06:05:15.274184Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:15.274507Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:15.274715Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:15.274936Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: restart the client [INFO] [stdout] 2026-01-07T06:05:15.277646Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:15.277989Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:15.278191Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:15.282506Z  INFO connection{addr=127.0.0.1:47268}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:15.283059Z  INFO connection{addr=127.0.0.1:47284}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:15.283499Z  WARN connection{addr=127.0.0.1:47268}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-01-07T06:05:15.283631Z  INFO connection{addr=127.0.0.1:47268}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:15.284357Z  INFO connection{addr=127.0.0.1:42432}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:15.287396Z  INFO connection{addr=127.0.0.1:42432}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:15.288017Z  INFO connection{addr=127.0.0.1:42432}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:15.288485Z  INFO connection{addr=127.0.0.1:47268}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:15.288776Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:15.289479Z  WARN connection{addr=127.0.0.1:47284}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-01-07T06:05:15.289621Z  INFO connection{addr=127.0.0.1:47284}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:15.290010Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.290317Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.290686Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.290951Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.291223Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.291486Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.291755Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.292229Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.295743Z  INFO connection{addr=127.0.0.1:42508}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:15.297968Z  INFO connection{addr=127.0.0.1:42508}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:15.298602Z  INFO connection{addr=127.0.0.1:42508}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:15.299335Z  INFO connection{addr=127.0.0.1:47284}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:15.299716Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:15.301815Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.302140Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.302401Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.302648Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.302895Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.303250Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.303498Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:15.303758Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.275389Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:16.342041Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:16.383179Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: shutdown the server [INFO] [stdout] 2026-01-07T06:05:16.383418Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:16.383690Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:16.383763Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:16.384052Z  INFO connection{addr=127.0.0.1:47284}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:16.384301Z  INFO connection{addr=127.0.0.1:47284}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:16.384497Z  INFO connection{addr=127.0.0.1:47268}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:16.384695Z  INFO connection{addr=127.0.0.1:47268}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:16.384865Z  INFO connection{addr=127.0.0.1:47284}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:16.385371Z  INFO connection{addr=127.0.0.1:47268}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:16.385829Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: restart the server [INFO] [stdout] 2026-01-07T06:05:16.386277Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake. Retry in 548.001603ms... [INFO] [stdout] 2026-01-07T06:05:16.386587Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake. Retry in 421.140075ms... [INFO] [stdout] 2026-01-07T06:05:16.386972Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.387262Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.387537Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.387791Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.388160Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.388394Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.388631Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.388868Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.389134Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.389394Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.389753Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.390001Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.390249Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.390508Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.390761Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.391144Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.396283Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:16.396816Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-01-07T06:05:16.812898Z  INFO connection{addr=127.0.0.1:47470}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:16.813456Z  INFO connection{addr=127.0.0.1:47470}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:16.813934Z  INFO connection{addr=127.0.0.1:47470}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:16.814077Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:16.858376Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-01-07T06:05:16.864317Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-01-07T06:05:16.864405Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:16.864511Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:16.864643Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:16.864760Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:16.865038Z  INFO connection{addr=127.0.0.1:42684}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:16.865413Z  INFO connection{addr=127.0.0.1:42654}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:16.865544Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:16.865664Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:16.865849Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: start the client [INFO] [stdout] 2026-01-07T06:05:16.866024Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.866307Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.866436Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.866571Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:16.875290Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:16.932032Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:16.932298Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:16.933052Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 565.460434ms... [INFO] [stdout] 2026-01-07T06:05:16.933299Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 593.571815ms... [INFO] [stdout] 2026-01-07T06:05:16.936477Z  INFO connection{addr=127.0.0.1:47536}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:16.936980Z  INFO connection{addr=127.0.0.1:47536}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:16.938597Z  INFO connection{addr=127.0.0.1:47536}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:16.938748Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:17.500325Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 1.004459312s... [INFO] [stdout] 2026-01-07T06:05:17.534767Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2332: Connection refused (os error 111). Retry in 922.406886ms... [INFO] [stdout] 2026-01-07T06:05:17.867390Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: start the server [INFO] [stdout] 2026-01-07T06:05:17.872147Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:17.940438Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-01-07T06:05:18.464424Z  INFO connection{addr=127.0.0.1:34026}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:18.464929Z  INFO connection{addr=127.0.0.1:34026}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:18.468353Z  INFO connection{addr=127.0.0.1:34026}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:18.468673Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:18.512835Z  INFO connection{addr=127.0.0.1:34042}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:18.513438Z  INFO connection{addr=127.0.0.1:34042}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:18.513727Z  INFO connection{addr=127.0.0.1:34042}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:18.514028Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:18.886398Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-01-07T06:05:19.043130Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-01-07T06:05:19.043477Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:19.043674Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:19.043937Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:19.043994Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:19.044208Z  INFO connection{addr=127.0.0.1:47536}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:19.044423Z  INFO connection{addr=127.0.0.1:47536}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:19.044589Z  INFO connection{addr=127.0.0.1:47470}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:19.044760Z  INFO connection{addr=127.0.0.1:47470}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:19.044919Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:19.045137Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:19.045340Z  INFO connection{addr=127.0.0.1:47536}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:19.045725Z  INFO connection{addr=127.0.0.1:47470}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:19.046204Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: start the client [INFO] [stdout] 2026-01-07T06:05:19.046902Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.047183Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.047435Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.047690Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.047938Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.048257Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.048521Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.048771Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.049031Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.049301Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.049553Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.049795Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.050036Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.050286Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.050528Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.050765Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:19.052704Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:19.091927Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:19.092190Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:19.092891Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 532.623725ms... [INFO] [stdout] 2026-01-07T06:05:19.093173Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 538.92152ms... [INFO] [stdout] 2026-01-07T06:05:19.627689Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 809.282004ms... [INFO] [stdout] 2026-01-07T06:05:19.634489Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to connect to 127.0.0.1:2333: Connection refused (os error 111). Retry in 1.197719836s... [INFO] [stdout] 2026-01-07T06:05:20.047263Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: start the server [INFO] [stdout] 2026-01-07T06:05:20.049471Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:20.137238Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-01-07T06:05:20.369352Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:20.372275Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:20.374870Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: shutdown the client [INFO] [stdout] 2026-01-07T06:05:20.375017Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:20.375340Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:20.375663Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:20.375985Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: restart the client [INFO] [stdout] 2026-01-07T06:05:20.378230Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:20.431379Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:20.431643Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:20.444780Z  INFO connection{addr=127.0.0.1:34066}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:20.448908Z  INFO connection{addr=127.0.0.1:47706}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:20.449697Z  WARN connection{addr=127.0.0.1:34066}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-01-07T06:05:20.450303Z  INFO connection{addr=127.0.0.1:47706}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:20.449847Z  INFO connection{addr=127.0.0.1:34066}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:20.451044Z  INFO connection{addr=127.0.0.1:34042}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:20.451942Z  INFO connection{addr=127.0.0.1:34066}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:20.451710Z  INFO connection{addr=127.0.0.1:47706}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:20.452372Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:20.453275Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:20.453914Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:20.455320Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:20.456551Z  INFO connection{addr=127.0.0.1:34072}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:20.461633Z  WARN connection{addr=127.0.0.1:34072}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-01-07T06:05:20.463190Z  INFO connection{addr=127.0.0.1:34072}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:20.463937Z  INFO connection{addr=127.0.0.1:34026}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:20.464303Z  INFO connection{addr=127.0.0.1:34072}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:20.466389Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:20.466999Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:20.467346Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:20.840156Z  INFO connection{addr=127.0.0.1:47782}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:20.840717Z  INFO connection{addr=127.0.0.1:47782}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:20.841360Z  INFO connection{addr=127.0.0.1:47782}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:20.841501Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:21.382248Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:21.385591Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:21.388636Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: shutdown the server [INFO] [stdout] 2026-01-07T06:05:21.388718Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:21.388877Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:21.388893Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:21.391242Z  INFO connection{addr=127.0.0.1:34066}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:21.391664Z  INFO connection{addr=127.0.0.1:34072}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:21.391905Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: restart the server [INFO] [stdout] 2026-01-07T06:05:21.392157Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:21.392423Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:21.392714Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake. Retry in 514.803812ms... [INFO] [stdout] 2026-01-07T06:05:21.392869Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:21.393075Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:21.393366Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake. Retry in 544.015868ms... [INFO] [stdout] 2026-01-07T06:05:21.429185Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:21.473382Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-01-07T06:05:21.914562Z  INFO connection{addr=127.0.0.1:34116}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:21.915197Z  INFO connection{addr=127.0.0.1:34116}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:21.915492Z  INFO connection{addr=127.0.0.1:34116}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:21.915918Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:21.942410Z  INFO connection{addr=127.0.0.1:34140}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:21.942945Z  INFO connection{addr=127.0.0.1:34140}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:21.943234Z  INFO connection{addr=127.0.0.1:34140}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:21.943555Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:22.548440Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:22.626081Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:22.681206Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: shutdown the client [INFO] [stdout] 2026-01-07T06:05:22.681381Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:22.681662Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:22.681917Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:22.682295Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: restart the client [INFO] [stdout] 2026-01-07T06:05:22.684319Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:22.724510Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-01-07T06:05:22.724763Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-01-07T06:05:22.731030Z  INFO connection{addr=127.0.0.1:47904}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:22.732895Z  WARN connection{addr=127.0.0.1:47904}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-01-07T06:05:22.733032Z  INFO connection{addr=127.0.0.1:47904}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:22.733622Z  INFO connection{addr=127.0.0.1:47706}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:22.733852Z  INFO connection{addr=127.0.0.1:47706}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:22.734432Z  INFO connection{addr=127.0.0.1:47706}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:22.735080Z  INFO connection{addr=127.0.0.1:47904}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:22.735357Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:22.736386Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.736698Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.736974Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.737243Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.737513Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.737874Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.738158Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.738448Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.741604Z  INFO connection{addr=127.0.0.1:47910}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:22.744504Z  WARN connection{addr=127.0.0.1:47910}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-01-07T06:05:22.744744Z  INFO connection{addr=127.0.0.1:47910}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:22.745272Z  INFO connection{addr=127.0.0.1:47782}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:22.745505Z  INFO connection{addr=127.0.0.1:47782}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:22.746149Z  INFO connection{addr=127.0.0.1:47782}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:22.746622Z  INFO connection{addr=127.0.0.1:47910}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:22.746864Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:22.747848Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.748150Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.748441Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.748696Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.749046Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.749326Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.749594Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:22.751135Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.683558Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-01-07T06:05:23.759450Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-01-07T06:05:23.812755Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: shutdown the server [INFO] [stdout] 2026-01-07T06:05:23.812958Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:23.813413Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:23.813473Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:23.815135Z  INFO connection{addr=127.0.0.1:47904}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:23.815515Z  INFO connection{addr=127.0.0.1:47904}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:23.815689Z  INFO connection{addr=127.0.0.1:47910}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:23.815934Z  INFO connection{addr=127.0.0.1:47910}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:23.816313Z  INFO connection{addr=127.0.0.1:47904}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:23.817870Z  INFO connection{addr=127.0.0.1:47910}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:23.818606Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: restart the server [INFO] [stdout] 2026-01-07T06:05:23.819217Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake. Retry in 419.458277ms... [INFO] [stdout] 2026-01-07T06:05:23.819546Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake. Retry in 503.664409ms... [INFO] [stdout] 2026-01-07T06:05:23.819952Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.820267Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.820558Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.820844Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.821266Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.821564Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.821853Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.822204Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.822598Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.822886Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.823192Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.823479Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.823874Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.824187Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.824475Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.824761Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: WebSocket protocol error: Connection reset without closing handshake: Connection reset without closing handshake [INFO] [stdout] 2026-01-07T06:05:23.828263Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-01-07T06:05:23.878157Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-01-07T06:05:23.893366Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-01-07T06:05:23.905929Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-01-07T06:05:23.906186Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:23.907057Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:23.907364Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:23.907470Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:23.910035Z  INFO connection{addr=127.0.0.1:34116}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:23.911148Z  INFO connection{addr=127.0.0.1:34140}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:23.911777Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:23.912441Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] test udp ... ok [INFO] [stdout] 2026-01-07T06:05:24.259395Z  INFO connection{addr=127.0.0.1:48072}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:24.260018Z  INFO connection{addr=127.0.0.1:48072}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-01-07T06:05:24.260647Z  INFO connection{addr=127.0.0.1:48072}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-01-07T06:05:24.260800Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:24.334283Z  INFO connection{addr=127.0.0.1:48140}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-01-07T06:05:24.334963Z  INFO connection{addr=127.0.0.1:48140}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-01-07T06:05:24.335580Z  INFO connection{addr=127.0.0.1:48140}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-01-07T06:05:24.335718Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-01-07T06:05:26.326247Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-01-07T06:05:26.527902Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-01-07T06:05:26.528302Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:26.528493Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-01-07T06:05:26.528704Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-01-07T06:05:26.528763Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:26.530379Z  INFO connection{addr=127.0.0.1:48140}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:26.530615Z  INFO connection{addr=127.0.0.1:48140}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:26.530762Z  INFO connection{addr=127.0.0.1:48072}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:26.530938Z  INFO connection{addr=127.0.0.1:48072}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-01-07T06:05:26.531083Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:26.531324Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-01-07T06:05:26.531557Z  INFO connection{addr=127.0.0.1:48140}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-01-07T06:05:26.531988Z  INFO connection{addr=127.0.0.1:48072}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] test tcp ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 37.92s [INFO] [stdout] [INFO] [stderr] Doc-tests rathole [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" "a1516fbe34cbc837a5d0555ebebae9e690d5e0e45702b24e5ae3b4432a76cbd9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a1516fbe34cbc837a5d0555ebebae9e690d5e0e45702b24e5ae3b4432a76cbd9", kill_on_drop: false }` [INFO] [stdout] a1516fbe34cbc837a5d0555ebebae9e690d5e0e45702b24e5ae3b4432a76cbd9