[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#c2efcc4ae006a6b2761cb42572fc9cee0d1ce4af for pr-154756 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frapiz1%2Frathole" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-7-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-7-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/rapiz1/rathole on toolchain c2efcc4ae006a6b2761cb42572fc9cee0d1ce4af [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2efcc4ae006a6b2761cb42572fc9cee0d1ce4af" "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" "+c2efcc4ae006a6b2761cb42572fc9cee0d1ce4af" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded getset v0.1.2 [INFO] [stderr] Downloaded fdlimit v0.2.1 [INFO] [stderr] Downloaded async-socks5 v0.5.1 [INFO] [stderr] Downloaded enum-iterator v1.4.1 [INFO] [stderr] Downloaded async-http-proxy v1.2.5 [INFO] [stderr] Downloaded filetime v0.2.22 [INFO] [stderr] Downloaded os_str_bytes v6.5.1 [INFO] [stderr] Downloaded notify v5.2.0 [INFO] [stderr] Downloaded polyval v0.6.1 [INFO] [stderr] Downloaded platforms v3.1.2 [INFO] [stderr] Downloaded tempfile v3.8.0 [INFO] [stderr] Downloaded rustls-pki-types v1.3.0 [INFO] [stderr] Downloaded console-subscriber v0.1.10 [INFO] [stderr] Downloaded base64 v0.21.4 [INFO] [stderr] Downloaded sharded-slab v0.1.6 [INFO] [stderr] Downloaded git2 v0.16.1 [INFO] [stderr] Downloaded vergen v7.5.1 [INFO] [stderr] Downloaded console-api v0.5.0 [INFO] [stderr] Downloaded rustls-pemfile v2.0.0 [INFO] [stderr] Downloaded curve25519-dalek-derive v0.1.0 [INFO] [stderr] Downloaded snowstorm v0.4.0 [INFO] [stderr] Downloaded rustls-webpki v0.102.2 [INFO] [stderr] Downloaded enum-iterator-derive v1.2.1 [INFO] [stderr] Downloaded ghash v0.5.0 [INFO] [stderr] Downloaded curve25519-dalek v4.1.2 [INFO] [stderr] Downloaded hdrhistogram v7.5.2 [INFO] [stderr] Downloaded rustix v0.38.15 [INFO] [stderr] Downloaded fiat-crypto v0.2.1 [INFO] [stderr] Downloaded linux-raw-sys v0.4.8 [INFO] [stderr] Downloaded libgit2-sys v0.14.2+1.5.1 [INFO] [stderr] Downloaded libz-sys v1.1.12 [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-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+c2efcc4ae006a6b2761cb42572fc9cee0d1ce4af" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 22b7732075ad7e60b44dec62824531151e9a133184907c8e4aba9e950ef626b9 [INFO] running `Command { std: "docker" "start" "-a" "22b7732075ad7e60b44dec62824531151e9a133184907c8e4aba9e950ef626b9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "22b7732075ad7e60b44dec62824531151e9a133184907c8e4aba9e950ef626b9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "22b7732075ad7e60b44dec62824531151e9a133184907c8e4aba9e950ef626b9", kill_on_drop: false }` [INFO] [stdout] 22b7732075ad7e60b44dec62824531151e9a133184907c8e4aba9e950ef626b9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+c2efcc4ae006a6b2761cb42572fc9cee0d1ce4af" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3fbd2e40584996e6da84deb2cbd334357fd78e1d5cb2980b043fb342f3f4bacf [INFO] running `Command { std: "docker" "start" "-a" "3fbd2e40584996e6da84deb2cbd334357fd78e1d5cb2980b043fb342f3f4bacf", 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 serde v1.0.188 [INFO] [stderr] Compiling subtle v2.5.0 [INFO] [stderr] Compiling cpufeatures v0.2.9 [INFO] [stderr] Compiling log v0.4.20 [INFO] [stderr] Compiling pin-project-lite v0.2.13 [INFO] [stderr] Compiling thiserror v1.0.49 [INFO] [stderr] Compiling smallvec v1.11.1 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling lock_api v0.4.10 [INFO] [stderr] Compiling parking_lot_core v0.9.8 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling semver v1.0.19 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling zeroize v1.6.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling once_cell v1.18.0 [INFO] [stderr] Compiling anyhow v1.0.75 [INFO] [stderr] Compiling tinyvec_macros v0.1.1 [INFO] [stderr] Compiling tinyvec v1.6.0 [INFO] [stderr] Compiling powerfmt v0.2.0 [INFO] [stderr] Compiling rustversion v1.0.14 [INFO] [stderr] Compiling opaque-debug v0.3.0 [INFO] [stderr] Compiling itoa v1.0.9 [INFO] [stderr] Compiling unicode-bidi v0.3.13 [INFO] [stderr] Compiling percent-encoding v2.3.0 [INFO] [stderr] Compiling time-core v0.1.2 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Compiling num-conv v0.1.0 [INFO] [stderr] Compiling deranged v0.3.11 [INFO] [stderr] Compiling form_urlencoded v1.2.0 [INFO] [stderr] Compiling futures-core v0.3.28 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling platforms v3.1.2 [INFO] [stderr] Compiling httparse v1.8.0 [INFO] [stderr] Compiling futures-task v0.3.28 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Compiling getrandom v0.2.10 [INFO] [stderr] Compiling mio v0.8.8 [INFO] [stderr] Compiling signal-hook-registry v1.4.1 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling socket2 v0.5.4 [INFO] [stderr] Compiling curve25519-dalek v4.1.2 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling jobserver v0.1.26 [INFO] [stderr] Compiling parking_lot v0.12.1 [INFO] [stderr] Compiling futures-sink v0.3.28 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling inout v0.1.3 [INFO] [stderr] Compiling syn v2.0.37 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling universal-hash v0.5.1 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling unicode-normalization v0.1.22 [INFO] [stderr] Compiling time v0.3.36 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling aead v0.5.2 [INFO] [stderr] Compiling polyval v0.6.1 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling crossbeam-utils v0.8.16 [INFO] [stderr] Compiling futures-util v0.3.28 [INFO] [stderr] Compiling foreign-types-shared v0.1.1 [INFO] [stderr] Compiling openssl v0.10.57 [INFO] [stderr] Compiling foreign-types v0.3.2 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling ghash v0.5.0 [INFO] [stderr] Compiling chacha20 v0.9.1 [INFO] [stderr] Compiling idna v0.4.0 [INFO] [stderr] Compiling ctr v0.9.2 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling poly1305 v0.8.0 [INFO] [stderr] Compiling snow v0.9.6 [INFO] [stderr] Compiling tracing-core v0.1.31 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Compiling bitflags v2.4.0 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling url v2.4.1 [INFO] [stderr] Compiling async-trait v0.1.73 [INFO] [stderr] Compiling regex-syntax v0.7.5 [INFO] [stderr] Compiling aes-gcm v0.10.3 [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 chacha20poly1305 v0.10.1 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling blake2 v0.10.6 [INFO] [stderr] Compiling inotify-sys v0.1.5 [INFO] [stderr] Compiling os_str_bytes v6.5.1 [INFO] [stderr] Compiling openssl-probe v0.1.5 [INFO] [stderr] Compiling overload v0.1.1 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling utf-8 v0.7.6 [INFO] [stderr] Compiling data-encoding v2.4.0 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling crossbeam-channel v0.5.8 [INFO] [stderr] Compiling nu-ansi-term v0.46.0 [INFO] [stderr] Compiling inotify v0.9.6 [INFO] [stderr] Compiling clap_lex v0.2.4 [INFO] [stderr] Compiling walkdir v2.4.0 [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 strsim v0.10.0 [INFO] [stderr] Compiling termcolor v1.3.0 [INFO] [stderr] Compiling base64 v0.13.1 [INFO] [stderr] Compiling textwrap v0.16.0 [INFO] [stderr] Compiling notify v5.2.0 [INFO] [stderr] Compiling socket2 v0.4.9 [INFO] [stderr] Compiling vergen v7.5.1 [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 proc-macro-error v1.0.4 [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 openssl-macros v0.1.1 [INFO] [stderr] Compiling futures-macro v0.3.28 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.0 [INFO] [stderr] Compiling pin-project-internal v1.1.3 [INFO] [stderr] Compiling tracing-attributes v0.1.26 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling getset v0.1.2 [INFO] [stderr] Compiling clap_derive v3.2.25 [INFO] [stderr] Compiling enum-iterator v1.4.1 [INFO] [stderr] Compiling regex v1.9.6 [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 backoff v0.4.0 [INFO] [stderr] Compiling tokio-native-tls v0.3.1 [INFO] [stderr] Compiling tokio-tungstenite v0.20.1 [INFO] [stderr] Compiling snowstorm v0.4.0 [INFO] [stderr] Compiling async-socks5 v0.5.1 [INFO] [stderr] Compiling tokio-util v0.7.9 [INFO] [stderr] Compiling async-http-proxy v1.2.5 [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 1m 29s [INFO] running `Command { std: "docker" "inspect" "3fbd2e40584996e6da84deb2cbd334357fd78e1d5cb2980b043fb342f3f4bacf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3fbd2e40584996e6da84deb2cbd334357fd78e1d5cb2980b043fb342f3f4bacf", kill_on_drop: false }` [INFO] [stdout] 3fbd2e40584996e6da84deb2cbd334357fd78e1d5cb2980b043fb342f3f4bacf [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+c2efcc4ae006a6b2761cb42572fc9cee0d1ce4af" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8b50fd83cf18910209a9b58df4a7256894f92631fc20d316cf5ac0aadd8162d0 [INFO] running `Command { std: "docker" "start" "-a" "8b50fd83cf18910209a9b58df4a7256894f92631fc20d316cf5ac0aadd8162d0", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.148 [INFO] [stderr] Compiling subtle v2.5.0 [INFO] [stderr] Compiling serde v1.0.188 [INFO] [stderr] Compiling log v0.4.20 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling cpufeatures v0.2.9 [INFO] [stderr] Compiling tinyvec v1.6.0 [INFO] [stderr] Compiling itoa v1.0.9 [INFO] [stderr] Compiling percent-encoding v2.3.0 [INFO] [stderr] Compiling unicode-bidi v0.3.13 [INFO] [stderr] Compiling pin-project-lite v0.2.13 [INFO] [stderr] Compiling smallvec v1.11.1 [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 anyhow v1.0.75 [INFO] [stderr] Compiling opaque-debug v0.3.0 [INFO] [stderr] Compiling time v0.3.36 [INFO] [stderr] Compiling futures-sink v0.3.28 [INFO] [stderr] Compiling tracing-core v0.1.31 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling futures-task v0.3.28 [INFO] [stderr] Compiling form_urlencoded v1.2.0 [INFO] [stderr] Compiling httparse v1.8.0 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Compiling regex-syntax v0.7.5 [INFO] [stderr] Compiling bitflags v2.4.0 [INFO] [stderr] Compiling curve25519-dalek v4.1.2 [INFO] [stderr] Compiling futures-util v0.3.28 [INFO] [stderr] Compiling crossbeam-utils v0.8.16 [INFO] [stderr] Compiling openssl-probe v0.1.5 [INFO] [stderr] Compiling data-encoding v2.4.0 [INFO] [stderr] Compiling overload v0.1.1 [INFO] [stderr] Compiling os_str_bytes v6.5.1 [INFO] [stderr] Compiling utf-8 v0.7.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 parking_lot_core v0.9.8 [INFO] [stderr] Compiling socket2 v0.5.4 [INFO] [stderr] Compiling unicode-normalization v0.1.22 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling inout v0.1.3 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling parking_lot v0.12.1 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling signal-hook-registry v1.4.1 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling universal-hash v0.5.1 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling idna v0.4.0 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling polyval v0.6.1 [INFO] [stderr] Compiling aead v0.5.2 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling aes v0.8.4 [INFO] [stderr] Compiling chacha20 v0.9.1 [INFO] [stderr] Compiling ctr v0.9.2 [INFO] [stderr] Compiling ghash v0.5.0 [INFO] [stderr] Compiling poly1305 v0.8.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 inotify-sys v0.1.5 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling chacha20poly1305 v0.10.1 [INFO] [stderr] Compiling url v2.4.1 [INFO] [stderr] Compiling walkdir v2.4.0 [INFO] [stderr] Compiling inotify v0.9.6 [INFO] [stderr] Compiling vergen v7.5.1 [INFO] [stderr] Compiling aes-gcm v0.10.3 [INFO] [stderr] Compiling regex-automata v0.3.9 [INFO] [stderr] Compiling clap_lex v0.2.4 [INFO] [stderr] Compiling regex-automata v0.1.10 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling snow v0.9.6 [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 nu-ansi-term v0.46.0 [INFO] [stderr] Compiling tracing v0.1.37 [INFO] [stderr] Compiling tracing-log v0.1.3 [INFO] [stderr] Compiling sharded-slab v0.1.6 [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 pin-project v1.1.3 [INFO] [stderr] Compiling thread_local v1.1.7 [INFO] [stderr] Compiling instant v0.1.12 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling textwrap v0.16.0 [INFO] [stderr] Compiling base64 v0.13.1 [INFO] [stderr] Compiling termcolor v1.3.0 [INFO] [stderr] Compiling notify v5.2.0 [INFO] [stderr] Compiling socket2 v0.4.9 [INFO] [stderr] Compiling openssl v0.10.57 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Compiling matchers v0.1.0 [INFO] [stderr] Compiling fdlimit v0.2.1 [INFO] [stderr] Compiling clap v3.2.25 [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 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 backoff v0.4.0 [INFO] [stderr] Compiling tokio-util v0.7.9 [INFO] [stderr] Compiling async-http-proxy v1.2.5 [INFO] [stderr] Compiling tokio-tungstenite v0.20.1 [INFO] [stderr] Compiling snowstorm v0.4.0 [INFO] [stderr] Compiling async-socks5 v0.5.1 [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 47s [INFO] running `Command { std: "docker" "inspect" "8b50fd83cf18910209a9b58df4a7256894f92631fc20d316cf5ac0aadd8162d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8b50fd83cf18910209a9b58df4a7256894f92631fc20d316cf5ac0aadd8162d0", kill_on_drop: false }` [INFO] [stdout] 8b50fd83cf18910209a9b58df4a7256894f92631fc20d316cf5ac0aadd8162d0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+c2efcc4ae006a6b2761cb42572fc9cee0d1ce4af" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 89f8294e82e6390955ba4131f4bdecd5857040b54ef66fc426879066c7e9f1e2 [INFO] running `Command { std: "docker" "start" "-a" "89f8294e82e6390955ba4131f4bdecd5857040b54ef66fc426879066c7e9f1e2", kill_on_drop: false }` [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] [INFO] [stderr] --> src/transport/noise.rs:25:16 [INFO] [stdout] running 7 tests [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 1.51s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rathole-69b24cc9095e4e22) [INFO] [stdout] test config::tests::test_validate_client_config ... ok [INFO] [stdout] test config::tests::test_validate_server_config ... ok [INFO] [stdout] test config_watcher::test::test_calculate_events ... ok [INFO] [stdout] test config::tests::test_valid_config ... ok [INFO] [stdout] test config::tests::test_invalid_config ... ok [INFO] [stdout] test tests::test_determine_run_mode ... ok [INFO] [stdout] test config::tests::test_example_config ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rathole-ce5dc713ff9df7eb) [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] [stderr] Running tests/integration_test.rs (/opt/rustwide/target/debug/deps/integration_test-dcd978cce0a37712) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] 2026-04-08T07:28:33.155931Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: start the client [INFO] [stdout] 2026-04-08T07:28:33.155933Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: start the client [INFO] [stdout] 2026-04-08T07:28:33.160024Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:33.160245Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:33.160337Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:33.161066Z 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 428.452012ms... [INFO] [stdout] 2026-04-08T07:28:33.161238Z 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 531.660984ms... [INFO] [stdout] 2026-04-08T07:28:33.166813Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:33.167042Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:33.167182Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:33.168154Z 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 578.133164ms... [INFO] [stdout] 2026-04-08T07:28:33.168840Z 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.183929ms... [INFO] [stdout] 2026-04-08T07:28:33.590666Z 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 822.607128ms... [INFO] [stdout] 2026-04-08T07:28:33.696316Z 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 813.35575ms... [INFO] [stdout] 2026-04-08T07:28:33.748261Z 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 980.974359ms... [INFO] [stdout] 2026-04-08T07:28:33.763955Z 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 897.209458ms... [INFO] [stdout] 2026-04-08T07:28:34.157875Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: start the server [INFO] [stdout] 2026-04-08T07:28:34.160083Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:34.160339Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: start the server [INFO] [stdout] 2026-04-08T07:28:34.160482Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-04-08T07:28:34.162666Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:34.162963Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-04-08T07:28:34.414827Z  INFO connection{addr=127.0.0.1:47622}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:34.415140Z  INFO connection{addr=127.0.0.1:47622}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:34.415590Z  INFO connection{addr=127.0.0.1:47622}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:34.415712Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:34.512413Z  INFO connection{addr=127.0.0.1:47704}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:34.512739Z  INFO connection{addr=127.0.0.1:47704}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:34.513123Z  INFO connection{addr=127.0.0.1:47704}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:34.513225Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:34.663551Z  INFO connection{addr=127.0.0.1:41704}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:34.664042Z  INFO connection{addr=127.0.0.1:41704}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:34.666798Z  INFO connection{addr=127.0.0.1:41704}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:34.667130Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:34.731230Z  INFO connection{addr=127.0.0.1:41728}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:34.731835Z  INFO connection{addr=127.0.0.1:41728}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:34.732237Z  INFO connection{addr=127.0.0.1:41728}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:34.732538Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:36.659122Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:36.662042Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:36.664488Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:36.668107Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: shutdown the client [INFO] [stdout] 2026-04-08T07:28:36.669861Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:36.670236Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:36.670691Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:36.671037Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: restart the client [INFO] [stdout] 2026-04-08T07:28:36.674922Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:36.675230Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:36.675445Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:36.676435Z  INFO connection{addr=127.0.0.1:41754}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:36.676674Z  INFO connection{addr=127.0.0.1:41768}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:36.677431Z  WARN connection{addr=127.0.0.1:41754}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-04-08T07:28:36.677534Z  INFO connection{addr=127.0.0.1:41754}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:36.677819Z  WARN connection{addr=127.0.0.1:41768}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-04-08T07:28:36.677935Z  INFO connection{addr=127.0.0.1:41768}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:36.679053Z  INFO connection{addr=127.0.0.1:41728}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:36.679607Z  INFO connection{addr=127.0.0.1:41754}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:36.680543Z  INFO connection{addr=127.0.0.1:41704}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:36.681872Z  INFO connection{addr=127.0.0.1:41768}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:36.682230Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:36.682526Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:36.683778Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:36.684072Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.684317Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:36.684847Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.726719Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:36.764014Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: shutdown the client [INFO] [stdout] 2026-04-08T07:28:36.765852Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:36.766122Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:36.766325Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:36.766476Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: restart the client [INFO] [stdout] 2026-04-08T07:28:36.770797Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:36.771003Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:36.771236Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:36.772146Z  INFO connection{addr=127.0.0.1:47820}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:36.772486Z  INFO connection{addr=127.0.0.1:47822}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:36.772898Z  WARN connection{addr=127.0.0.1:47820}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-04-08T07:28:36.772989Z  INFO connection{addr=127.0.0.1:47820}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:36.773210Z  WARN connection{addr=127.0.0.1:47822}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-04-08T07:28:36.773293Z  INFO connection{addr=127.0.0.1:47822}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:36.773444Z  INFO connection{addr=127.0.0.1:47622}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:36.773650Z  INFO connection{addr=127.0.0.1:47622}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:36.774355Z  INFO connection{addr=127.0.0.1:47704}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:36.774714Z  INFO connection{addr=127.0.0.1:47704}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:36.775681Z  INFO connection{addr=127.0.0.1:47622}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:36.776374Z  INFO connection{addr=127.0.0.1:47820}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:36.776489Z  INFO connection{addr=127.0.0.1:47704}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:36.777015Z  INFO connection{addr=127.0.0.1:47822}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:36.778423Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:36.778961Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:36.780010Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.781062Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.781745Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.786124Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.786408Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.786603Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.786814Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.787037Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.787268Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.787477Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.790497Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.790767Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.791333Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.792218Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.792432Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:36.793082Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.674936Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:37.677631Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:37.679682Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: shutdown the server [INFO] [stdout] 2026-04-08T07:28:37.679860Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:37.680074Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:37.680137Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:37.680418Z  INFO connection{addr=127.0.0.1:41754}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:37.680715Z  INFO connection{addr=127.0.0.1:41768}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:37.682970Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: restart the server [INFO] [stdout] 2026-04-08T07:28:37.683230Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:37.683465Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.683749Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 495.148215ms... [INFO] [stdout] 2026-04-08T07:28:37.683960Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:37.684153Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.684363Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 413.858265ms... [INFO] [stdout] 2026-04-08T07:28:37.691031Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:37.691464Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-04-08T07:28:37.768921Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:37.815399Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:37.845333Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: shutdown the server [INFO] [stdout] 2026-04-08T07:28:37.845594Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:37.845922Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:37.846005Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:37.846196Z  INFO connection{addr=127.0.0.1:47820}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:37.846406Z  INFO connection{addr=127.0.0.1:47820}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:37.846596Z  INFO connection{addr=127.0.0.1:47822}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:37.846809Z  INFO connection{addr=127.0.0.1:47822}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:37.846997Z  INFO connection{addr=127.0.0.1:47820}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:37.847372Z  INFO connection{addr=127.0.0.1:47822}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:37.847993Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: restart the server [INFO] [stdout] 2026-04-08T07:28:37.848365Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 501.713374ms... [INFO] [stdout] 2026-04-08T07:28:37.848672Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 475.84044ms... [INFO] [stdout] 2026-04-08T07:28:37.848958Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.849215Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.849451Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.849697Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.849938Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.850132Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.850333Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.850537Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.850783Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.850984Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.851171Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.851351Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.851545Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.852075Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.852299Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.852530Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:37.858072Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:37.858456Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-04-08T07:28:38.100680Z  INFO connection{addr=127.0.0.1:41792}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:38.101016Z  INFO connection{addr=127.0.0.1:41792}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:38.101225Z  INFO connection{addr=127.0.0.1:41792}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:38.101414Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:38.182517Z  INFO connection{addr=127.0.0.1:41832}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:38.182885Z  INFO connection{addr=127.0.0.1:41832}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:38.183132Z  INFO connection{addr=127.0.0.1:41832}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:38.183339Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:38.329878Z  INFO connection{addr=127.0.0.1:51538}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:38.330199Z  INFO connection{addr=127.0.0.1:51538}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:38.330627Z  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-04-08T07:28:38.330727Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:38.353939Z  INFO connection{addr=127.0.0.1:51606}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:38.354308Z  INFO connection{addr=127.0.0.1:51606}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:38.354803Z  INFO connection{addr=127.0.0.1:51606}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:38.354913Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:40.185080Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-04-08T07:28:40.193435Z  INFO test{config_path="tests/for_udp/tcp_transport.toml" t=Udp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-04-08T07:28:40.193540Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:40.193672Z  INFO config_watcher{path="tests/for_udp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:40.193839Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:40.193857Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:40.194115Z  INFO connection{addr=127.0.0.1:41792}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:40.194340Z  INFO connection{addr=127.0.0.1:41832}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:40.194472Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:40.194593Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:40.194851Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: start the client [INFO] [stdout] 2026-04-08T07:28:40.195024Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:40.195197Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.195318Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:40.195439Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.197914Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:40.267727Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:40.267992Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:40.268608Z 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 494.582356ms... [INFO] [stdout] 2026-04-08T07:28:40.268832Z 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 459.262011ms... [INFO] [stdout] 2026-04-08T07:28:40.350192Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-04-08T07:28:40.440519Z  INFO test{config_path="tests/for_tcp/tcp_transport.toml" t=Tcp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-04-08T07:28:40.440821Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:40.441281Z  INFO config_watcher{path="tests/for_tcp/tcp_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:40.441488Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:40.441582Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:40.442035Z  INFO connection{addr=127.0.0.1:51538}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:40.442195Z  INFO connection{addr=127.0.0.1:51538}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:40.442324Z  INFO connection{addr=127.0.0.1:51606}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:40.442461Z  INFO connection{addr=127.0.0.1:51606}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:40.442608Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:40.442810Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:40.442966Z  INFO connection{addr=127.0.0.1:51538}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:40.443853Z  INFO connection{addr=127.0.0.1:51606}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:40.444311Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: start the client [INFO] [stdout] 2026-04-08T07:28:40.444797Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.444975Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.445123Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.445273Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.445546Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.446114Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.446287Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.446576Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.446867Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.447133Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.447411Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.447690Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.447975Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.448239Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.448511Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.448936Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:40.454601Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:40.512084Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:40.512764Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:40.514096Z 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 437.25713ms... [INFO] [stdout] 2026-04-08T07:28:40.514319Z 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.381809ms... [INFO] [stdout] 2026-04-08T07:28:40.730213Z 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.116041592s... [INFO] [stdout] 2026-04-08T07:28:40.764950Z 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 892.666755ms... [INFO] [stdout] 2026-04-08T07:28:40.953416Z 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 878.823595ms... [INFO] [stdout] 2026-04-08T07:28:40.966351Z 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.028329704s... [INFO] [stdout] 2026-04-08T07:28:41.195725Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: start the server [INFO] [stdout] 2026-04-08T07:28:41.197507Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:41.445653Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: start the server [INFO] [stdout] 2026-04-08T07:28:41.447546Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:41.647209Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-04-08T07:28:41.655495Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-04-08T07:28:41.665854Z  INFO connection{addr=127.0.0.1:35252}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:41.666239Z  INFO connection{addr=127.0.0.1:35252}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:41.666447Z  INFO connection{addr=127.0.0.1:35252}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:41.666685Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:41.838145Z  INFO connection{addr=127.0.0.1:51750}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:41.838596Z  INFO connection{addr=127.0.0.1:51750}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:41.839166Z  INFO connection{addr=127.0.0.1:51750}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:41.839303Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:41.852472Z  INFO connection{addr=127.0.0.1:35280}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:41.853024Z  INFO connection{addr=127.0.0.1:35280}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:41.853254Z  INFO connection{addr=127.0.0.1:35280}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:41.853493Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:42.001121Z  INFO connection{addr=127.0.0.1:51832}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:42.001574Z  INFO connection{addr=127.0.0.1:51832}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:42.002087Z  INFO connection{addr=127.0.0.1:51832}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:42.002212Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:43.700915Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:43.703580Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:43.705604Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: shutdown the client [INFO] [stdout] 2026-04-08T07:28:43.705694Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:43.705905Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:43.706101Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:43.706269Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: restart the client [INFO] [stdout] 2026-04-08T07:28:43.708793Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:43.748279Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:43.748490Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:43.753939Z  INFO connection{addr=127.0.0.1:35304}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:43.755966Z  WARN connection{addr=127.0.0.1:35304}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-04-08T07:28:43.756123Z  INFO connection{addr=127.0.0.1:35304}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:43.756654Z  INFO connection{addr=127.0.0.1:35252}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:43.756987Z  INFO connection{addr=127.0.0.1:35304}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:43.757278Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:43.757509Z  INFO connection{addr=127.0.0.1:35312}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:43.757854Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:43.758160Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:43.759493Z  WARN connection{addr=127.0.0.1:35312}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-04-08T07:28:43.759623Z  INFO connection{addr=127.0.0.1:35312}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:43.761142Z  INFO connection{addr=127.0.0.1:35280}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:43.761423Z  INFO connection{addr=127.0.0.1:35312}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:43.761735Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:43.763301Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:43.763624Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:43.947889Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:44.017951Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:44.071351Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: shutdown the client [INFO] [stdout] 2026-04-08T07:28:44.101932Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:44.102518Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:44.102744Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:44.102953Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: restart the client [INFO] [stdout] 2026-04-08T07:28:44.104179Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:44.173998Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:44.174468Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:44.183595Z  INFO connection{addr=127.0.0.1:51926}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:44.185817Z  WARN connection{addr=127.0.0.1:51926}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-04-08T07:28:44.185987Z  INFO connection{addr=127.0.0.1:51926}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:44.186428Z  INFO connection{addr=127.0.0.1:51832}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:44.186709Z  INFO connection{addr=127.0.0.1:51832}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:44.187288Z  INFO connection{addr=127.0.0.1:51832}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:44.189257Z  INFO connection{addr=127.0.0.1:51926}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:44.189534Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:44.190075Z  INFO connection{addr=127.0.0.1:51930}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:44.191072Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.191806Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.192112Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.192485Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.192881Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.193174Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.193453Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.193776Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.198220Z  WARN connection{addr=127.0.0.1:51930}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-04-08T07:28:44.198422Z  INFO connection{addr=127.0.0.1:51930}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:44.199967Z  INFO connection{addr=127.0.0.1:51750}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:44.200274Z  INFO connection{addr=127.0.0.1:51750}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:44.200853Z  INFO connection{addr=127.0.0.1:51750}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:44.201549Z  INFO connection{addr=127.0.0.1:51930}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:44.201835Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:44.203667Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.204038Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.204339Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.204627Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.205272Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.205812Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.206349Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.208189Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.708053Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:44.710797Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:44.713983Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: shutdown the server [INFO] [stdout] 2026-04-08T07:28:44.714102Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:44.714283Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:44.714316Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:44.716326Z  INFO connection{addr=127.0.0.1:35304}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:44.716646Z  INFO connection{addr=127.0.0.1:35312}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:44.716897Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: restart the server [INFO] [stdout] 2026-04-08T07:28:44.717122Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:44.717365Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.717664Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 563.595535ms... [INFO] [stdout] 2026-04-08T07:28:44.717830Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:44.718039Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:44.718299Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 468.26039ms... [INFO] [stdout] 2026-04-08T07:28:44.724046Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:44.778689Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-04-08T07:28:45.105013Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:45.151630Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:45.191612Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: shutdown the server [INFO] [stdout] 2026-04-08T07:28:45.192019Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:45.192238Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:45.192283Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:45.193729Z  INFO connection{addr=127.0.0.1:51930}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:45.193979Z  INFO connection{addr=127.0.0.1:51930}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:45.194131Z  INFO connection{addr=127.0.0.1:51926}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:45.194303Z  INFO connection{addr=127.0.0.1:51926}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:45.194450Z  INFO connection{addr=127.0.0.1:51930}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:45.194913Z  INFO connection{addr=127.0.0.1:51926}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:45.195339Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: restart the server [INFO] [stdout] 2026-04-08T07:28:45.196213Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 568.040372ms... [INFO] [stdout] 2026-04-08T07:28:45.196489Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 528.033535ms... [INFO] [stdout] 2026-04-08T07:28:45.196741Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.197002Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.197249Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.197468Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.197698Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.197952Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.198381Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.198625Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.198923Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.199173Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.199416Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.199674Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.199955Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.200225Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.200490Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.200725Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:45.201969Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:45.205530Z  INFO connection{addr=127.0.0.1:35356}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:45.205974Z  INFO connection{addr=127.0.0.1:35356}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:45.206196Z  INFO connection{addr=127.0.0.1:35356}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:45.206423Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:45.262484Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-04-08T07:28:45.320824Z  INFO connection{addr=127.0.0.1:35382}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:45.321357Z  INFO connection{addr=127.0.0.1:35382}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:45.321662Z  INFO connection{addr=127.0.0.1:35382}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:45.322000Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:45.732687Z  INFO connection{addr=127.0.0.1:52110}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:45.733186Z  INFO connection{addr=127.0.0.1:52110}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:45.733717Z  INFO connection{addr=127.0.0.1:52110}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:45.733866Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:45.774256Z  INFO connection{addr=127.0.0.1:52192}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:45.774668Z  INFO connection{addr=127.0.0.1:52192}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:45.775119Z  INFO connection{addr=127.0.0.1:52192}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:45.775280Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:47.222898Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-04-08T07:28:47.229585Z  INFO test{config_path="tests/for_udp/tls_transport.toml" t=Udp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-04-08T07:28:47.229781Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:47.229913Z  INFO config_watcher{path="tests/for_udp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:47.230055Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:47.230070Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:47.236135Z  INFO connection{addr=127.0.0.1:35382}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:47.236455Z  INFO connection{addr=127.0.0.1:35356}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:47.236654Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:47.236837Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:47.237072Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: start the client [INFO] [stdout] 2026-04-08T07:28:47.237280Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:47.237495Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.237650Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:47.237851Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.245274Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:47.245737Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:47.245858Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:47.246238Z 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 529.766657ms... [INFO] [stdout] 2026-04-08T07:28:47.246369Z 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 576.506027ms... [INFO] [stdout] 2026-04-08T07:28:47.696049Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-04-08T07:28:47.779398Z 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.104465569s... [INFO] [stdout] 2026-04-08T07:28:47.824422Z 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.187619704s... [INFO] [stdout] 2026-04-08T07:28:47.832237Z  INFO test{config_path="tests/for_tcp/tls_transport.toml" t=Tcp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-04-08T07:28:47.832570Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:47.832767Z  INFO config_watcher{path="tests/for_tcp/tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:47.833024Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:47.833093Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:47.834888Z  INFO connection{addr=127.0.0.1:52110}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:47.835127Z  INFO connection{addr=127.0.0.1:52110}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:47.835289Z  INFO connection{addr=127.0.0.1:52192}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:47.835484Z  INFO connection{addr=127.0.0.1:52192}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:47.835725Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:47.835992Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:47.836202Z  INFO connection{addr=127.0.0.1:52110}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:47.836628Z  INFO connection{addr=127.0.0.1:52192}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:47.837238Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: start the client [INFO] [stdout] 2026-04-08T07:28:47.837849Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.838160Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.838433Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.838694Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.838988Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.839267Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.839530Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.839823Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.840101Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.840379Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.840681Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.840958Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.841212Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.841463Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.841714Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.841985Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:47.843906Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:47.844396Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:47.844562Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:47.847411Z 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 524.591505ms... [INFO] [stdout] 2026-04-08T07:28:47.848960Z 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 495.576939ms... [INFO] [stdout] 2026-04-08T07:28:48.239047Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: start the server [INFO] [stdout] 2026-04-08T07:28:48.240594Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:48.240855Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-04-08T07:28:48.349392Z 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 1.015639681s... [INFO] [stdout] 2026-04-08T07:28:48.383372Z 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 856.113066ms... [INFO] [stdout] 2026-04-08T07:28:48.838039Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: start the server [INFO] [stdout] 2026-04-08T07:28:48.839419Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:48.839765Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-04-08T07:28:48.892395Z  INFO connection{addr=127.0.0.1:50880}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:48.893336Z  INFO connection{addr=127.0.0.1:50880}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:48.893662Z  INFO connection{addr=127.0.0.1:50880}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:48.894317Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:49.020593Z  INFO connection{addr=127.0.0.1:50900}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:49.021732Z  INFO connection{addr=127.0.0.1:50900}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:49.022025Z  INFO connection{addr=127.0.0.1:50900}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:49.022582Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:49.256137Z  INFO connection{addr=127.0.0.1:60500}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:49.257080Z  INFO connection{addr=127.0.0.1:60500}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:49.258553Z  INFO connection{addr=127.0.0.1:60500}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:49.258795Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:49.373001Z  INFO connection{addr=127.0.0.1:60584}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:49.374045Z  INFO connection{addr=127.0.0.1:60584}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:49.375505Z  INFO connection{addr=127.0.0.1:60584}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:49.375876Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:50.741082Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:50.750712Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:50.760437Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: shutdown the client [INFO] [stdout] 2026-04-08T07:28:50.760616Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:50.760934Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:50.761171Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:50.761390Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: restart the client [INFO] [stdout] 2026-04-08T07:28:50.763143Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:50.763612Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:50.763791Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:50.780340Z  INFO connection{addr=127.0.0.1:50922}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:50.786969Z  INFO connection{addr=127.0.0.1:50928}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:50.787497Z  WARN connection{addr=127.0.0.1:50922}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-04-08T07:28:50.787669Z  INFO connection{addr=127.0.0.1:50922}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:50.788317Z  INFO connection{addr=127.0.0.1:50880}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:50.788540Z  INFO connection{addr=127.0.0.1:50922}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:50.789126Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:50.789686Z  WARN connection{addr=127.0.0.1:50928}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-04-08T07:28:50.791907Z  INFO connection{addr=127.0.0.1:50928}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:50.792181Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:50.792384Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:50.792848Z  INFO connection{addr=127.0.0.1:50900}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:50.793088Z  INFO connection{addr=127.0.0.1:50928}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:50.793710Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:50.798363Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:50.798653Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.347852Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:51.601313Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:51.675824Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: shutdown the client [INFO] [stdout] 2026-04-08T07:28:51.676015Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:51.676269Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:51.676429Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:51.676581Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: restart the client [INFO] [stdout] 2026-04-08T07:28:51.678437Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:51.678892Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:51.679022Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:51.689245Z  INFO connection{addr=127.0.0.1:60696}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:51.691068Z  INFO connection{addr=127.0.0.1:60702}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:51.692436Z  WARN connection{addr=127.0.0.1:60696}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-04-08T07:28:51.692629Z  INFO connection{addr=127.0.0.1:60696}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:51.693132Z  INFO connection{addr=127.0.0.1:60584}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:51.693340Z  INFO connection{addr=127.0.0.1:60584}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:51.694468Z  INFO connection{addr=127.0.0.1:60584}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:51.694911Z  INFO connection{addr=127.0.0.1:60696}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:51.695190Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:51.696530Z  WARN connection{addr=127.0.0.1:60702}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-04-08T07:28:51.696739Z  INFO connection{addr=127.0.0.1:60702}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:51.697047Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.697233Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.697406Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.697582Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.697775Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.697950Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.698118Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.698292Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.698940Z  INFO connection{addr=127.0.0.1:60500}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:51.699110Z  INFO connection{addr=127.0.0.1:60500}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:51.700231Z  INFO connection{addr=127.0.0.1:60500}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:51.700866Z  INFO connection{addr=127.0.0.1:60702}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:51.701178Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:51.715617Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.716031Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.716305Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.716574Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.716850Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.717072Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.717288Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.717646Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.762968Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:51.775196Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:51.793023Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: shutdown the server [INFO] [stdout] 2026-04-08T07:28:51.793109Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:51.793240Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:51.793254Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:51.793471Z  INFO connection{addr=127.0.0.1:50922}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:51.793677Z  INFO connection{addr=127.0.0.1:50928}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:51.793909Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: restart the server [INFO] [stdout] 2026-04-08T07:28:51.794105Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:51.794302Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.796986Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 500.25743ms... [INFO] [stdout] 2026-04-08T07:28:51.797125Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:51.797264Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:51.797414Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 452.978781ms... [INFO] [stdout] 2026-04-08T07:28:51.801033Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:51.801418Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-04-08T07:28:52.259047Z  INFO connection{addr=127.0.0.1:50962}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:52.260889Z  INFO connection{addr=127.0.0.1:50962}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:52.261261Z  INFO connection{addr=127.0.0.1:50962}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:52.261970Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:52.310412Z  INFO connection{addr=127.0.0.1:50996}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:52.311510Z  INFO connection{addr=127.0.0.1:50996}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:52.311933Z  INFO connection{addr=127.0.0.1:50996}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:52.312611Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:52.678032Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:52.895532Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:52.982276Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: shutdown the server [INFO] [stdout] 2026-04-08T07:28:52.982462Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:52.982643Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:52.982689Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:52.982849Z  INFO connection{addr=127.0.0.1:60696}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:52.982997Z  INFO connection{addr=127.0.0.1:60696}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:52.983118Z  INFO connection{addr=127.0.0.1:60702}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:52.983228Z  INFO connection{addr=127.0.0.1:60702}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:52.983321Z  INFO connection{addr=127.0.0.1:60696}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:52.983577Z  INFO connection{addr=127.0.0.1:60702}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:52.983923Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: restart the server [INFO] [stdout] 2026-04-08T07:28:52.984219Z ERROR handle{service=echo}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 498.648188ms... [INFO] [stdout] 2026-04-08T07:28:52.984409Z ERROR handle{service=pingpong}: rathole::client: Failed to run the control channel: Failed to read cmd: early eof. Retry in 512.654432ms... [INFO] [stdout] 2026-04-08T07:28:52.984571Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.984738Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.984915Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.985077Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.985246Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.985413Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.985574Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.985859Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.986055Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.986235Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.986399Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.986576Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.986745Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.986925Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.987282Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.987460Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:52.988883Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:52.989158Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-04-08T07:28:53.492904Z  INFO connection{addr=127.0.0.1:60868}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:53.493775Z  INFO connection{addr=127.0.0.1:60868}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:53.495114Z  INFO connection{addr=127.0.0.1:60868}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:53.495322Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:53.553432Z  INFO connection{addr=127.0.0.1:60976}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:53.554415Z  INFO connection{addr=127.0.0.1:60976}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:53.555819Z  INFO connection{addr=127.0.0.1:60976}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:53.556092Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:54.295476Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-04-08T07:28:54.317007Z  INFO test{config_path="tests/for_udp/noise_transport.toml" t=Udp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-04-08T07:28:54.317196Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:54.317345Z  INFO config_watcher{path="tests/for_udp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:54.317530Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:54.317576Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:54.317884Z  INFO connection{addr=127.0.0.1:50996}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:54.318128Z  INFO connection{addr=127.0.0.1:50962}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:54.318278Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:54.318417Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:54.318611Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: start the client [INFO] [stdout] 2026-04-08T07:28:54.318842Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:54.319039Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:54.319200Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: unexpected end of file [INFO] [stdout] 2026-04-08T07:28:54.319363Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:54.320796Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:54.320974Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:54.321117Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:54.321701Z 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 562.153015ms... [INFO] [stdout] 2026-04-08T07:28:54.321910Z 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 526.81937ms... [INFO] [stdout] 2026-04-08T07:28:54.877473Z 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.145075511s... [INFO] [stdout] 2026-04-08T07:28:54.893895Z 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.078380662s... [INFO] [stdout] 2026-04-08T07:28:55.322959Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: start the server [INFO] [stdout] 2026-04-08T07:28:55.324979Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:55.325200Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-04-08T07:28:55.490904Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-04-08T07:28:55.975457Z  INFO connection{addr=127.0.0.1:51066}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:55.975886Z  INFO connection{addr=127.0.0.1:51066}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:55.976109Z  INFO connection{addr=127.0.0.1:51066}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:55.976359Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:56.028897Z  INFO connection{addr=127.0.0.1:51098}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:56.029500Z  INFO connection{addr=127.0.0.1:51098}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:56.029845Z  INFO connection{addr=127.0.0.1:51098}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:56.030307Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:56.119219Z  INFO test{config_path="tests/for_tcp/noise_transport.toml" t=Tcp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-04-08T07:28:56.119523Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:56.119712Z  INFO config_watcher{path="tests/for_tcp/noise_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:56.119920Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:56.120012Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:56.120226Z  INFO connection{addr=127.0.0.1:60976}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:56.120406Z  INFO connection{addr=127.0.0.1:60976}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:56.120550Z  INFO connection{addr=127.0.0.1:60868}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:56.120710Z  INFO connection{addr=127.0.0.1:60868}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:56.120930Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:56.121109Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:56.121275Z  INFO connection{addr=127.0.0.1:60976}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:56.121620Z  INFO connection{addr=127.0.0.1:60868}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:56.122119Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: start the client [INFO] [stdout] 2026-04-08T07:28:56.122554Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.122798Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.122980Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.123189Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.123393Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.123582Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.123803Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.123995Z  WARN handle{service=pingpong}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.124176Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.124369Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.124558Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.124770Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.124964Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.125152Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.125360Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.125935Z  WARN handle{service=echo}:run: rathole::client: Failed to run the data channel: Failed to read cmd: early eof [INFO] [stdout] 2026-04-08T07:28:56.130541Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:56.131236Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:56.131642Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:56.132835Z 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 497.749769ms... [INFO] [stdout] 2026-04-08T07:28:56.133217Z 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 479.934241ms... [INFO] [stdout] 2026-04-08T07:28:56.618927Z 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 984.578956ms... [INFO] [stdout] 2026-04-08T07:28:56.634010Z 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.178014887s... [INFO] [stdout] 2026-04-08T07:28:57.122895Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: start the server [INFO] [stdout] 2026-04-08T07:28:57.125800Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:57.126176Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-04-08T07:28:57.605983Z  INFO connection{addr=127.0.0.1:32892}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:57.606355Z  INFO connection{addr=127.0.0.1:32892}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:57.606781Z  INFO connection{addr=127.0.0.1:32892}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:57.606904Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:57.815088Z  INFO connection{addr=127.0.0.1:32974}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:57.815599Z  INFO connection{addr=127.0.0.1:32974}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:57.816136Z  INFO connection{addr=127.0.0.1:32974}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:57.816346Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:57.827617Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:57.835449Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:57.840641Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: shutdown the client [INFO] [stdout] 2026-04-08T07:28:57.840771Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:57.841005Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:57.841137Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:57.841280Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: restart the client [INFO] [stdout] 2026-04-08T07:28:57.859552Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:57.859724Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:57.859832Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:57.861461Z  INFO connection{addr=127.0.0.1:51134}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:57.861873Z  INFO connection{addr=127.0.0.1:51138}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:57.862098Z  WARN connection{addr=127.0.0.1:51134}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-04-08T07:28:57.862171Z  INFO connection{addr=127.0.0.1:51134}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:57.862581Z  INFO connection{addr=127.0.0.1:51066}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:57.871855Z  INFO connection{addr=127.0.0.1:51134}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:57.872362Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:57.872643Z  WARN connection{addr=127.0.0.1:51138}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-04-08T07:28:57.872728Z  INFO connection{addr=127.0.0.1:51138}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:57.874981Z  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-04-08T07:28:57.875212Z  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-04-08T07:28:57.875786Z  INFO connection{addr=127.0.0.1:51098}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:57.876000Z  INFO connection{addr=127.0.0.1:51138}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:57.880104Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:57.882743Z  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-04-08T07:28:57.883006Z  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-04-08T07:28:58.843063Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:58.852440Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:58.854595Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: shutdown the server [INFO] [stdout] 2026-04-08T07:28:58.854750Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:58.854971Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:28:58.855021Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:58.855336Z  INFO connection{addr=127.0.0.1:51138}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:58.855669Z  INFO connection{addr=127.0.0.1:51134}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:58.855899Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: restart the server [INFO] [stdout] 2026-04-08T07:28:58.856147Z  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-04-08T07:28:58.856423Z  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-04-08T07:28:58.856745Z 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 422.149457ms... [INFO] [stdout] 2026-04-08T07:28:58.856989Z  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-04-08T07:28:58.857346Z  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-04-08T07:28:58.857644Z 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 589.364534ms... [INFO] [stdout] 2026-04-08T07:28:58.859727Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:58.860039Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-04-08T07:28:59.282311Z  INFO connection{addr=127.0.0.1:43272}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:59.282869Z  INFO connection{addr=127.0.0.1:43272}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:59.283165Z  INFO connection{addr=127.0.0.1:43272}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:59.283485Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:59.449661Z  INFO connection{addr=127.0.0.1:43298}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:59.450098Z  INFO connection{addr=127.0.0.1:43298}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:59.450307Z  INFO connection{addr=127.0.0.1:43298}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:59.450525Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:59.638816Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:28:59.714746Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:28:59.747726Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: shutdown the client [INFO] [stdout] 2026-04-08T07:28:59.747953Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:28:59.748224Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:59.748438Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:59.748579Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: restart the client [INFO] [stdout] 2026-04-08T07:28:59.777963Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:28:59.778203Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:28:59.778358Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:28:59.780174Z  INFO connection{addr=127.0.0.1:36450}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:59.780600Z  INFO connection{addr=127.0.0.1:36460}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:28:59.780866Z  WARN connection{addr=127.0.0.1:36450}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-04-08T07:28:59.780969Z  INFO connection{addr=127.0.0.1:36450}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:28:59.781278Z  INFO connection{addr=127.0.0.1:32892}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:59.781450Z  INFO connection{addr=127.0.0.1:32892}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:59.781818Z  INFO connection{addr=127.0.0.1:32892}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:59.782203Z  INFO connection{addr=127.0.0.1:36450}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:28:59.782397Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:59.782738Z  WARN connection{addr=127.0.0.1:36460}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-04-08T07:28:59.782859Z  INFO connection{addr=127.0.0.1:36460}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:28:59.783172Z  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-04-08T07:28:59.783411Z  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-04-08T07:28:59.783895Z  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-04-08T07:28:59.784067Z  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-04-08T07:28:59.784250Z  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-04-08T07:28:59.784393Z  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-04-08T07:28:59.784533Z  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-04-08T07:28:59.784689Z  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-04-08T07:28:59.785563Z  INFO connection{addr=127.0.0.1:32974}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:28:59.785691Z  INFO connection{addr=127.0.0.1:32974}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:28:59.787556Z  INFO connection{addr=127.0.0.1:32974}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:28:59.787932Z  INFO connection{addr=127.0.0.1:36460}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:28:59.788123Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:28:59.789610Z  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-04-08T07:28:59.789804Z  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-04-08T07:28:59.789957Z  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-04-08T07:28:59.790099Z  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-04-08T07:28:59.790238Z  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-04-08T07:28:59.790379Z  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-04-08T07:28:59.790530Z  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-04-08T07:28:59.790736Z  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-04-08T07:29:00.750308Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:29:00.810794Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:29:00.841114Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: shutdown the server [INFO] [stdout] 2026-04-08T07:29:00.841459Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:00.841781Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:29:00.841929Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:00.842127Z  INFO connection{addr=127.0.0.1:36460}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:00.842392Z  INFO connection{addr=127.0.0.1:36460}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:29:00.842638Z  INFO connection{addr=127.0.0.1:36450}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:00.842892Z  INFO connection{addr=127.0.0.1:36450}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:29:00.843093Z  INFO connection{addr=127.0.0.1:36460}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:00.843465Z  INFO connection{addr=127.0.0.1:36450}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:00.843918Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: restart the server [INFO] [stdout] 2026-04-08T07:29:00.844342Z 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 532.256933ms... [INFO] [stdout] 2026-04-08T07:29:00.844602Z 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 573.100152ms... [INFO] [stdout] 2026-04-08T07:29:00.844883Z  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-04-08T07:29:00.845169Z  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-04-08T07:29:00.845440Z  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-04-08T07:29:00.845689Z  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-04-08T07:29:00.845953Z  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-04-08T07:29:00.846157Z  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-04-08T07:29:00.846334Z  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-04-08T07:29:00.846534Z  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-04-08T07:29:00.846771Z  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-04-08T07:29:00.846982Z  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-04-08T07:29:00.847178Z  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-04-08T07:29:00.847357Z  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-04-08T07:29:00.847524Z  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-04-08T07:29:00.847748Z  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-04-08T07:29:00.847970Z  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-04-08T07:29:00.848209Z  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-04-08T07:29:00.865966Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:29:00.866384Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-04-08T07:29:01.358579Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-04-08T07:29:01.365805Z  INFO test{config_path="tests/for_udp/websocket_transport.toml" t=Udp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-04-08T07:29:01.365916Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:01.366024Z  INFO config_watcher{path="tests/for_udp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:01.366173Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:29:01.366355Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:01.366741Z  INFO connection{addr=127.0.0.1:43298}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:01.369041Z  INFO connection{addr=127.0.0.1:43272}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:01.369271Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:01.369468Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:01.369789Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: start the client [INFO] [stdout] 2026-04-08T07:29:01.370074Z  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-04-08T07:29:01.370332Z  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-04-08T07:29:01.370547Z  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-04-08T07:29:01.370823Z  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-04-08T07:29:01.372604Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:29:01.380084Z  INFO connection{addr=127.0.0.1:36652}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:01.380451Z  INFO connection{addr=127.0.0.1:36652}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:29:01.381042Z  INFO connection{addr=127.0.0.1:36652}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:29:01.381202Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:01.421099Z  INFO connection{addr=127.0.0.1:36718}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:01.421750Z  INFO connection{addr=127.0.0.1:36718}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:29:01.422323Z  INFO connection{addr=127.0.0.1:36718}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:29:01.422994Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:01.425288Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:29:01.425924Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:29:01.427087Z 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 487.473059ms... [INFO] [stdout] 2026-04-08T07:29:01.427468Z 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 527.937378ms... [INFO] [stdout] 2026-04-08T07:29:01.920893Z 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 847.658199ms... [INFO] [stdout] 2026-04-08T07:29:01.959399Z 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 821.611426ms... [INFO] [stdout] 2026-04-08T07:29:02.371068Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: start the server [INFO] [stdout] 2026-04-08T07:29:02.377622Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:29:02.438071Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-04-08T07:29:02.781091Z  INFO connection{addr=127.0.0.1:43356}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:02.781566Z  INFO connection{addr=127.0.0.1:43356}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:29:02.781829Z  INFO connection{addr=127.0.0.1:43356}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:29:02.782058Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:02.788115Z  INFO connection{addr=127.0.0.1:43364}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:02.789977Z  INFO connection{addr=127.0.0.1:43364}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:29:02.790401Z  INFO connection{addr=127.0.0.1:43364}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:29:02.790648Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:03.345059Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-04-08T07:29:03.487693Z  INFO test{config_path="tests/for_tcp/websocket_transport.toml" t=Tcp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-04-08T07:29:03.488024Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:03.488182Z  INFO config_watcher{path="tests/for_tcp/websocket_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:03.488417Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:29:03.488543Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:03.488715Z  INFO connection{addr=127.0.0.1:36718}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:03.488894Z  INFO connection{addr=127.0.0.1:36718}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:29:03.489033Z  INFO connection{addr=127.0.0.1:36652}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:03.489168Z  INFO connection{addr=127.0.0.1:36652}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:29:03.489309Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:03.489483Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:03.489639Z  INFO connection{addr=127.0.0.1:36718}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:03.489973Z  INFO connection{addr=127.0.0.1:36652}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:03.490396Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: start the client [INFO] [stdout] 2026-04-08T07:29:03.491105Z  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-04-08T07:29:03.491330Z  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-04-08T07:29:03.492459Z  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-04-08T07:29:03.492694Z  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-04-08T07:29:03.492926Z  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-04-08T07:29:03.493122Z  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-04-08T07:29:03.493326Z  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-04-08T07:29:03.493541Z  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-04-08T07:29:03.493784Z  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-04-08T07:29:03.493984Z  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-04-08T07:29:03.494170Z  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-04-08T07:29:03.494352Z  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-04-08T07:29:03.494540Z  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-04-08T07:29:03.494718Z  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-04-08T07:29:03.494923Z  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-04-08T07:29:03.495100Z  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-04-08T07:29:03.500807Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:29:03.547036Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:29:03.547287Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:29:03.547984Z 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 573.463778ms... [INFO] [stdout] 2026-04-08T07:29:03.548527Z 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 416.24101ms... [INFO] [stdout] 2026-04-08T07:29:03.966545Z 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 958.335621ms... [INFO] [stdout] 2026-04-08T07:29:04.123524Z 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.014092217s... [INFO] [stdout] 2026-04-08T07:29:04.491038Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: start the server [INFO] [stdout] 2026-04-08T07:29:04.492523Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:29:04.556936Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-04-08T07:29:04.873042Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:29:04.876434Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:29:04.879169Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: shutdown the client [INFO] [stdout] 2026-04-08T07:29:04.879269Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:04.879506Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:04.879772Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:04.879995Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: restart the client [INFO] [stdout] 2026-04-08T07:29:04.881332Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:29:04.933129Z  INFO connection{addr=127.0.0.1:36898}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:04.933711Z  INFO connection{addr=127.0.0.1:36898}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:29:04.937490Z  INFO connection{addr=127.0.0.1:36898}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:29:04.937817Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:04.939431Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:29:04.939680Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:29:04.947821Z  INFO connection{addr=127.0.0.1:43402}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:04.950068Z  WARN connection{addr=127.0.0.1:43402}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-04-08T07:29:04.950228Z  INFO connection{addr=127.0.0.1:43402}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:29:04.952494Z  INFO connection{addr=127.0.0.1:43364}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:04.952853Z  INFO connection{addr=127.0.0.1:43402}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:29:04.953211Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:04.953843Z  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-04-08T07:29:04.954122Z  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-04-08T07:29:04.955452Z  INFO connection{addr=127.0.0.1:43416}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:04.958209Z  WARN connection{addr=127.0.0.1:43416}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-04-08T07:29:04.959840Z  INFO connection{addr=127.0.0.1:43416}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:29:04.960676Z  INFO connection{addr=127.0.0.1:43356}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:04.961232Z  INFO connection{addr=127.0.0.1:43416}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:29:04.962263Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:04.963213Z  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-04-08T07:29:04.963515Z  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-04-08T07:29:05.144104Z  INFO connection{addr=127.0.0.1:36988}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:05.144625Z  INFO connection{addr=127.0.0.1:36988}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:29:05.145162Z  INFO connection{addr=127.0.0.1:36988}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:29:05.145287Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:05.885916Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:29:05.889450Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:29:05.893640Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: shutdown the server [INFO] [stdout] 2026-04-08T07:29:05.893846Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:05.894193Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:29:05.894280Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:05.896921Z  INFO connection{addr=127.0.0.1:43416}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:05.897378Z  INFO connection{addr=127.0.0.1:43402}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:05.897705Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: restart the server [INFO] [stdout] 2026-04-08T07:29:05.898030Z  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-04-08T07:29:05.898362Z  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-04-08T07:29:05.898712Z 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 453.568393ms... [INFO] [stdout] 2026-04-08T07:29:05.898943Z  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-04-08T07:29:05.899211Z  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-04-08T07:29:05.899529Z 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 576.350718ms... [INFO] [stdout] 2026-04-08T07:29:05.904852Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:29:05.953369Z  INFO rathole::server: Listening at 0.0.0.0:2332 [INFO] [stdout] 2026-04-08T07:29:06.361019Z  INFO connection{addr=127.0.0.1:43452}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:06.361524Z  INFO connection{addr=127.0.0.1:43452}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:29:06.361787Z  INFO connection{addr=127.0.0.1:43452}:handle{service=pingpong}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:29:06.362058Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:06.482794Z  INFO connection{addr=127.0.0.1:43480}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:06.483391Z  INFO connection{addr=127.0.0.1:43480}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:29:06.483738Z  INFO connection{addr=127.0.0.1:43480}:handle{service=echo}:run_udp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:29:06.484152Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:06.992205Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:29:07.075640Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:29:07.129851Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: shutdown the client [INFO] [stdout] 2026-04-08T07:29:07.130102Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:07.131691Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:07.132595Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:07.133599Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: restart the client [INFO] [stdout] 2026-04-08T07:29:07.135821Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:29:07.190447Z  INFO handle{service=pingpong}: rathole::client: Starting c78862c4afddaa20fd3ff12e5e270480706499341ca5d1d7437ec9668556805b [INFO] [stdout] 2026-04-08T07:29:07.190640Z  INFO handle{service=echo}: rathole::client: Starting 092c79e8f80e559e404bcf660c48f3522b67aba9ff1484b0367e1a4ddef7431d [INFO] [stdout] 2026-04-08T07:29:07.199133Z  INFO connection{addr=127.0.0.1:37116}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:07.201930Z  WARN connection{addr=127.0.0.1:37116}: rathole::server: Dropping previous control channel for service pingpong [INFO] [stdout] 2026-04-08T07:29:07.202251Z  INFO connection{addr=127.0.0.1:37116}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:29:07.203023Z  INFO connection{addr=127.0.0.1:36988}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:07.203304Z  INFO connection{addr=127.0.0.1:36988}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:29:07.204039Z  INFO connection{addr=127.0.0.1:36988}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:07.205036Z  INFO connection{addr=127.0.0.1:37116}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:29:07.205560Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:07.207723Z  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-04-08T07:29:07.208130Z  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-04-08T07:29:07.208527Z  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-04-08T07:29:07.209025Z  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-04-08T07:29:07.209335Z  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-04-08T07:29:07.209644Z  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-04-08T07:29:07.210027Z  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-04-08T07:29:07.210289Z  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-04-08T07:29:07.215873Z  INFO connection{addr=127.0.0.1:37124}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:07.218746Z  WARN connection{addr=127.0.0.1:37124}: rathole::server: Dropping previous control channel for service echo [INFO] [stdout] 2026-04-08T07:29:07.218875Z  INFO connection{addr=127.0.0.1:37124}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:29:07.219343Z  INFO connection{addr=127.0.0.1:36898}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:07.219530Z  INFO connection{addr=127.0.0.1:36898}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:29:07.220134Z  INFO connection{addr=127.0.0.1:36898}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:07.220662Z  INFO connection{addr=127.0.0.1:37124}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:29:07.221126Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:07.225637Z  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-04-08T07:29:07.226551Z  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-04-08T07:29:07.226916Z  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-04-08T07:29:07.227161Z  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-04-08T07:29:07.227396Z  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-04-08T07:29:07.227640Z  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-04-08T07:29:07.227922Z  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-04-08T07:29:07.229475Z  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-04-08T07:29:08.140901Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: echo [INFO] [stdout] 2026-04-08T07:29:08.211908Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: pingpong [INFO] [stdout] 2026-04-08T07:29:08.266374Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: shutdown the server [INFO] [stdout] 2026-04-08T07:29:08.266604Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:08.266930Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:29:08.267045Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:08.269136Z  INFO connection{addr=127.0.0.1:37116}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:08.269427Z  INFO connection{addr=127.0.0.1:37116}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:29:08.269588Z  INFO connection{addr=127.0.0.1:37124}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:08.269808Z  INFO connection{addr=127.0.0.1:37124}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:29:08.269964Z  INFO connection{addr=127.0.0.1:37116}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:08.270432Z  INFO connection{addr=127.0.0.1:37124}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:08.271024Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: restart the server [INFO] [stdout] 2026-04-08T07:29:08.272000Z 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 509.030244ms... [INFO] [stdout] 2026-04-08T07:29:08.272333Z 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 589.516384ms... [INFO] [stdout] 2026-04-08T07:29:08.272685Z  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-04-08T07:29:08.273013Z  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-04-08T07:29:08.273307Z  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-04-08T07:29:08.273590Z  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-04-08T07:29:08.273911Z  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-04-08T07:29:08.274174Z  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-04-08T07:29:08.274444Z  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-04-08T07:29:08.274727Z  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-04-08T07:29:08.275068Z  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-04-08T07:29:08.275347Z  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-04-08T07:29:08.275618Z  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-04-08T07:29:08.275910Z  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-04-08T07:29:08.276177Z  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-04-08T07:29:08.276448Z  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-04-08T07:29:08.276747Z  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-04-08T07:29:08.277032Z  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-04-08T07:29:08.279024Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Start watching the config [INFO] [stdout] 2026-04-08T07:29:08.331741Z  INFO rathole::server: Listening at 0.0.0.0:2333 [INFO] [stdout] 2026-04-08T07:29:08.399058Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-04-08T07:29:08.414013Z  INFO test{config_path="tests/for_udp/websocket_tls_transport.toml" t=Udp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-04-08T07:29:08.414133Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:08.414262Z  INFO config_watcher{path="tests/for_udp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:08.414468Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:29:08.414523Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:08.416814Z  INFO connection{addr=127.0.0.1:43452}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:08.417246Z  INFO connection{addr=127.0.0.1:43480}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:08.417570Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:08.417830Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] test udp ... ok [INFO] [stdout] 2026-04-08T07:29:08.798048Z  INFO connection{addr=127.0.0.1:41672}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:08.798555Z  INFO connection{addr=127.0.0.1:41672}: rathole::server: Control channel established service=pingpong [INFO] [stdout] 2026-04-08T07:29:08.799075Z  INFO connection{addr=127.0.0.1:41672}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2335 [INFO] [stdout] 2026-04-08T07:29:08.799203Z  INFO handle{service=pingpong}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:08.868631Z  INFO connection{addr=127.0.0.1:41734}: rathole::server: Try to handshake a control channel [INFO] [stdout] 2026-04-08T07:29:08.869264Z  INFO connection{addr=127.0.0.1:41734}: rathole::server: Control channel established service=echo [INFO] [stdout] 2026-04-08T07:29:08.869987Z  INFO connection{addr=127.0.0.1:41734}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Listening at 0.0.0.0:2334 [INFO] [stdout] 2026-04-08T07:29:08.870213Z  INFO handle{service=echo}:run: rathole::client: Control channel established [INFO] [stdout] 2026-04-08T07:29:10.783084Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: lots of echo and pingpong [INFO] [stdout] 2026-04-08T07:29:10.953259Z  INFO test{config_path="tests/for_tcp/websocket_tls_transport.toml" t=Tcp}: integration_test: shutdown the server and the client [INFO] [stdout] 2026-04-08T07:29:10.953664Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:10.953877Z  INFO config_watcher{path="tests/for_tcp/websocket_tls_transport.toml"}: rathole::config_watcher: Config watcher exiting [INFO] [stdout] 2026-04-08T07:29:10.954197Z  INFO rathole::server: Shuting down gracefully... [INFO] [stdout] 2026-04-08T07:29:10.954266Z  INFO rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:10.955661Z  INFO connection{addr=127.0.0.1:41734}:handle{service=echo}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:10.955909Z  INFO connection{addr=127.0.0.1:41734}:handle{service=echo}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:29:10.956052Z  INFO connection{addr=127.0.0.1:41672}:handle{service=pingpong}:run: rathole::server: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:10.956273Z  INFO connection{addr=127.0.0.1:41672}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: TCPListener shutdown [INFO] [stdout] 2026-04-08T07:29:10.956404Z  INFO handle{service=pingpong}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:10.956637Z  INFO handle{service=echo}:run: rathole::client: Control channel shutdown [INFO] [stdout] 2026-04-08T07:29:10.957051Z  INFO connection{addr=127.0.0.1:41734}:handle{service=echo}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] 2026-04-08T07:29:10.957500Z  INFO connection{addr=127.0.0.1:41672}:handle{service=pingpong}:run_tcp_connection_pool: rathole::server: Shutdown [INFO] [stdout] test tcp ... ok [INFO] [stderr] Doc-tests rathole [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 37.81s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "89f8294e82e6390955ba4131f4bdecd5857040b54ef66fc426879066c7e9f1e2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "89f8294e82e6390955ba4131f4bdecd5857040b54ef66fc426879066c7e9f1e2", kill_on_drop: false }` [INFO] [stdout] 89f8294e82e6390955ba4131f4bdecd5857040b54ef66fc426879066c7e9f1e2