mirror of
https://github.com/therealaleph/MasterHttpRelayVPN-RUST.git
synced 2026-05-18 06:14:40 +03:00
1b22dce568
Ships PR #183. SOCKS5 UDP ASSOCIATE → tunnel-mux udp_open/udp_data ops → tunnel-node UDP sessions → real UDP egress. QUIC/HTTP3, DNS, and STUN now traverse the tunnel instead of falling back to TCP or leaking outside it. - 256-session-per-associate cap with FIFO eviction - 9 KB datagram size guard (DNS/STUN tiny, QUIC max ~1452, leaves IPv6 PMTUD headroom without burning Apps Script quota on rogue traffic) - Source-IP pinned to the control TCP peer; port locked to first parseable datagram (malformed datagrams from the right IP no longer DoS the legitimate flow) - Event-driven UDP drain reusing v1.5.0's long-poll knobs Backward compat: TunnelResponse.pkts is `Option<Vec<String>>` with serde default; v1.5.0 clients hitting v1.6.0 tunnel-nodes ignore the new field; v1.6.0 clients hitting v1.5.0 tunnel-nodes get UNSUPPORTED_OP on udp_open and the existing fallback path takes over (TCP-only). Apps Script CodeFull.gs is opaque to the new ops — no redeploy needed; just doc-comment update. 98 lib tests + 22 tunnel-node tests pass (was 92 + 17 before). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>