Commit Graph

84 Commits

Author SHA1 Message Date
zarazaex69 5bb8178e50 feat(smux): replace internal/mux with smux over KCP
Replace the hand-rolled multiplexer (internal/mux) with xtaci/smux v2
running on top of the existing KCP-reliable vp8channel transport.

- Add internal/muxconn: io.ReadWriteCloser adapter bridging link.Link
  (message-oriented) into the byte-stream smux expects; applies AEAD
  on every write and inverts it on every received message
- Rewrite client: smux.Client session over muxconn; OpenStream per
  SOCKS5 connection; reconnect handler tears down and rebuilds session
- Rewrite server: smux.Server session; AcceptStream loop dispatches
  each stream to a proxy handler; tolerates session bounces on reconnect
- Delete internal/mux: all sequence/reorder/buffer logic is now
  handled by smux + KCP
2026-05-03 00:45:58 +03:00
zarazaex69 602c8a7b0d refactor: remove telemetry and metrics collection 2026-05-02 14:39:49 +03:00
zarazaex69 1101528cf6 refactor: add comprehensive diagnostics and flow control to data pumping 2026-05-02 02:18:45 +03:00
zarazaex69 ad7c9a5c3e feat: add tile as videochannel visual codec via -video-codec tile 2026-04-30 06:55:34 +03:00
zarazaex69 9025ba9b81 refactor: remove byte tracking from pumpToMux 2026-04-30 00:20:18 +03:00
zarazaex69 b83b334472 Remove periodic progress logging in pumpToMux 2026-04-28 19:18:23 +03:00
zarazaex69 689441a7f4 Add configurable QR error correction level for video transpor 2026-04-27 18:53:39 +03:00
zarazaex69 a2d1b95ffa feat: add support for 'b' visual codec in videochannel 2026-04-22 21:26:50 +03:00
zarazaex69 6379fa527e feat: add vp8-fps and vp8-batch settings for vp8channel throughput tuning 2026-04-22 17:17:08 +03:00
zarazaex69 af34cdbd8e feat: add video-qr-size configuration for videochannel transport 2026-04-21 22:32:01 +03:00
zarazaex69 f6cfaf8081 refactor: implement explicit shutdown logic for client connections and server stream pumps 2026-04-21 02:30:18 +03:00
zarazaex69 73fb1227d9 feat: implement strict configuration validation and remove default values for required CLI flags 2026-04-21 02:12:54 +03:00
zarazaex69 513e2bdd9d feat: refactor client connection handling and error management 2026-04-21 01:51:48 +03:00
zarazaex69 9e09975165 feat: implement video channel transport 2026-04-21 01:32:17 +03:00
zarazaex69 2cad1b0e87 refactor: align tunnel runtime terminology 2026-04-20 20:20:02 +03:00
zarazaex69 ea249091c4 refactor: make link selectable at runtime 2026-04-20 20:18:23 +03:00
zarazaex69 9bd9503daa refactor: add direct link layer 2026-04-20 20:13:49 +03:00
zarazaex69 fffb90e321 refactor: introduce transport layer 2026-04-20 20:05:23 +03:00
zarazaex69 a0b6ef0f35 refactor(server): replace log.Printf with logger and clean up 2026-04-20 05:27:35 +03:00
zarazaex69 35994565c6 refactor(provider): fix golangci 2026-04-14 02:26:28 +03:00
zarazaex69 acf0bad227 style(server,mobile): format function signatures and add provider name 2026-04-14 02:12:27 +03:00
zarazaex69 6e6265799a feat(provider): abstract provider interface and add jazz support 2026-04-14 01:10:57 +03:00
zarazaex69 1509f28e23 fix(reconnect): guard mux operations behind data channel validity check 2026-04-14 00:24:22 +03:00
zarazaex69 0aa73f72ef fix(peer): remove unused reconnect callback from data channel close handler 2026-04-14 00:19:02 +03:00
zarazaex69 f43bea1680 fix(server): remove unused peer reconnect callback 2026-04-13 15:35:32 +03:00
zarazaex69 17e8e52e43 refactor: simplify and clean up logging messages 2026-04-12 23:56:51 +03:00
zarazaex69 d3ee8101f6 refactor: suppress safe gosec warnings and fix revive 2026-04-12 23:43:14 +03:00
zarazaex69 89e17d334f refactor: fix last perfsprint and revive issues 2026-04-12 23:42:53 +03:00
zarazaex69 66363974e1 refactor: address final revive and complexity issues 2026-04-12 23:42:06 +03:00
zarazaex69 222a2de5c5 refactor: suppress remaining revive warnings 2026-04-12 23:40:19 +03:00
zarazaex69 a31a7a53ea refactor: final polish of linter issues 2026-04-12 23:39:50 +03:00
zarazaex69 d0fdf0f91d refactor: final golangci-lint fixes (complexity, unused, whitespace, etc.) 2026-04-12 23:39:03 +03:00
zarazaex69 b89fdd45cc refactor: fix revive exported return and Run comment 2026-04-12 23:34:06 +03:00
zarazaex69 e153ad2cb0 refactor: bulk fix golangci-lint issues (perfsprint, revive, errcheck, gosec, etc.) 2026-04-12 23:33:45 +03:00
zarazaex69 15795c0da1 refactor: pass context to NewPeer 2026-04-12 23:29:52 +03:00
zarazaex69 5a1a0c5453 refactor(logger): rename logger methods to Verbosef/Debugf 2026-04-12 23:29:27 +03:00
zarazaex69 85572722c4 refactor(server): fix linter issues and refactor complexity 2026-04-12 23:25:29 +03:00
zarazaex69 8026d9cf7a refactor: remove dual channel (duo) mode functionality 2026-04-12 23:11:42 +03:00
zarazaex69 cbb1f0f2fe feat(server): add active client tracking and conditional reconnection 2026-04-12 16:25:00 +03:00
Qtozdec a30aeedb26 Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	internal/server/server.go
2026-04-11 15:18:35 +03:00
Kot-nikot c1a30b677b Implement SOCKS5 proxy support in Server
Added SOCKS5 proxy support to the server, including new fields for proxy address and port in the Server struct. Updated the Run function and related methods to handle proxy connections.
2026-04-11 09:43:13 +03:00
Qtozdec 2067635ecb Fix olcRTC reconnect loop handling 2026-04-10 23:41:59 +03:00
Qtozdec 913cabe222 Add mux control frames 2026-04-10 16:26:15 +03:00
Qtozdec ca0191d0de Improve Telemost session behavior 2026-04-10 16:03:42 +03:00
zarazaex69 2a670e505e perf(server,peer): Adjust queue thresholds and improve buffer monitoring 2026-04-10 14:59:49 +03:00
zarazaex69 a758b6fb2d perf(client,mux,server,peer): Remove verbose logging and optimize buffer thresholds 2026-04-10 14:54:21 +03:00
zarazaex69 a35cbd947b feat(server): Add DNS caching and centralized resolver configuration 2026-04-09 21:04:05 +03:00
zarazaex69 ec26cce3dd feat(client,server,peer): Add backpressure handling and optimize buffer thresholds 2026-04-09 20:49:23 +03:00
zarazaex69 90ffe72e10 feat(server,peer): Improve queue and buffer management with timeouts 2026-04-09 20:40:02 +03:00
zarazaex69 7b889ae5ee feat(client): Add detailed timing and diagnostic logging for SOCKS5 connections 2026-04-09 20:34:50 +03:00