Commit Graph

  • cd97e5e746 fix(hop): skip priority short-circuit when multiple nodes share the same priority ginuerzh 2026-06-26 22:53:17 +08:00
  • c1d954d689 fix(handler/auto): sniff SOCKS4/SOCKS5 with 1-byte peek before 5-byte Sniff() v0.12.5 ginuerzh 2026-06-26 20:17:49 +08:00
  • d4e9450bad fix(connector/relay): handle empty address in bind to fix UDP ASSOCIATE PahaKush 2026-06-26 20:48:47 +09:00
  • b777bcb81a feat(listener/unix): add mode metadata to chmod unix socket file v0.12.4 ginuerzh 2026-06-25 16:04:04 +08:00
  • 39580f04ca fix(handler/socks5): RFC 1928 compliance — method negotiation, BND.ADDR, UDP ordering, and safe type assertions ginuerzh 2026-06-25 15:41:15 +08:00
  • b01f5d065f refactor(handler/sni): extract helpers, add SnifferBuilder, comprehensive tests ginuerzh 2026-06-25 14:51:13 +08:00
  • 8fd5200bf1 fix(net): defer DNS resolution to final dialer to preserve domain in proxy chain ginuerzh 2026-06-25 11:02:36 +08:00
  • ec4791485c feat(routing): add Network matcher for per-protocol node selection ginuerzh 2026-06-24 17:38:08 +08:00
  • c06ba17916 fix(dialer): skip SO_BINDTODEVICE when interface is specified as IP address v0.12.3 ginuerzh 2026-06-23 21:43:54 +08:00
  • a32ffd5608 fix(sniffing): pass bypass option to sniffer HandleHTTP/HandleTLS calls ginuerzh 2026-06-23 20:54:26 +08:00
  • ffa7ceaed7 feat(tls): persist auto-generated CA certificate to $HOME/.gost/ ginuerzh 2026-06-23 20:29:57 +08:00
  • ea3ca94e53 fix(handler): move auth before request validation so probe resistance works (#875) ginuerzh 2026-06-23 19:57:45 +08:00
  • 5d6b00c3a6 Revert "chore(deps): bump go-gost/x to v0.12.2" ginuerzh 2026-06-22 21:46:28 +08:00
  • 0637486025 chore(deps): bump go-gost/x to v0.12.2 ginuerzh 2026-06-22 21:45:28 +08:00
  • 99a0f7323d feat(listener): add SO_REUSEPORT support for TCP listeners (#654) v0.12.2 ginuerzh 2026-06-22 21:42:00 +08:00
  • 4057ac54b8 fix(listener): configure all TUN addresses for dual-stack IPv6 on Windows ginuerzh 2026-06-22 19:43:22 +08:00
  • 6a0ce8914e test(handler): add unit tests for SOCKS5 networkAddr helper ginuerzh 2026-06-22 19:21:09 +08:00
  • 03f4b1291e fix(handler): use addr-family-specific network for SOCKS5 BIND (#621) ginuerzh 2026-06-22 19:18:46 +08:00
  • 2e16457467 fix(config): warn when TLS options are set on a plaintext listener (#108) ginuerzh 2026-06-22 14:29:41 +08:00
  • a1d7da4fec fix(listener): exit process when the stdio connection ends ginuerzh 2026-06-22 13:07:10 +08:00
  • 0522ae8155 fix(net): use pure-Go DNS fallback to prevent thread exhaustion v0.12.1 ginuerzh 2026-06-21 22:34:43 +08:00
  • 55a246869e fix(metrics): add cross-platform process metrics collector for non-Linux systems ginuerzh 2026-06-21 21:55:27 +08:00
  • 3ec3362ac4 fix(handler): forward TLS connections in auto handler to chain router ginuerzh 2026-06-21 21:19:29 +08:00
  • 3f01456480 fix(metrics): skip connection wrapping when metrics are disabled ginuerzh 2026-06-21 20:34:41 +08:00
  • 9ea10763e4 fix(listener): add panic recovery in TUN/TAP listenLoop for wintun crashes ginuerzh 2026-06-21 16:47:12 +08:00
  • e814852ca1 fix(sniffing): re-dial upstream on HTTP Host change + surface no-SNI errors ginuerzh 2026-06-21 16:37:47 +08:00
  • a102f9c6cf chore: bump go-gost/relay v0.6.0 → v0.6.1 for forward-compatible unknown feature handling ginuerzh 2026-06-21 16:07:12 +08:00
  • 9ccf402ed1 feat(listener): add stdio listener for SSH ProxyCommand support ginuerzh 2026-06-21 15:39:52 +08:00
  • 61eb3e2a3b feat(socks5): add udp.resolveDomain option for clients incompatible with ATYP=Domain ginuerzh 2026-06-21 15:12:53 +08:00
  • 92002fa35e fix(listener): route WS/WSS HTTP server errors through GOST logger ginuerzh 2026-06-21 13:47:51 +08:00
  • a424148018 chore: bump go-gost/core v0.4.1 → v0.4.2 for recorder Metadata field ginuerzh 2026-06-21 13:27:46 +08:00
  • d4d823df45 fix(recorder): forward per-service recorder metadata to plugin recorders (#412) ginuerzh 2026-06-21 13:25:27 +08:00
  • c45d27113e fix(dialer): evict dead SSHD sessions before reuse to prevent channel-open failure (#382) ginuerzh 2026-06-21 13:02:10 +08:00
  • 9fab332772 fix(dialer): prevent hang on HTTP+ICMP by enabling QUIC keepalive by default ginuerzh 2026-06-21 10:09:34 +08:00
  • 37bc81576c fix(tun): prevent leaked goroutines in bidirectional copy on transport failure v0.12.0 ginuerzh 2026-06-20 22:10:09 +08:00
  • 504c56f3c3 feat(router): add 'auto' interface for source-in source-out on multi-homed hosts ginuerzh 2026-06-20 21:30:28 +08:00
  • ae92f5aee6 fix(dialer): skip SO_BINDTODEVICE for empty-addr UDP relay sockets ginuerzh 2026-06-20 21:13:49 +08:00
  • 48f31513c7 feat(hosts): add catch-all host mapping with '.' pattern ginuerzh 2026-06-20 20:47:10 +08:00
  • 548471717a fix(dialer): detect dead QUIC sessions in ICMP/QUIC dialer caches ginuerzh 2026-06-20 20:25:18 +08:00
  • e583f5b538 feat(parser): support HTTP(S) URL config sources with -C flag ginuerzh 2026-06-20 20:11:43 +08:00
  • 9c585e2de8 feat(parser): support multiple -C config files, merged left-to-right ginuerzh 2026-06-20 18:56:08 +08:00
  • 34549e0e98 fix(redirect): add IPv6 TPROXY support for TCP redirect listener ginuerzh 2026-06-20 18:20:44 +08:00
  • 684a0ddf65 feat(dns): use system nameservers from /etc/resolv.conf as fallback ginuerzh 2026-06-20 15:54:39 +08:00
  • 9fcd7d6890 feat(dialer): add utls dialer for TLS ClientHello fingerprint simulation ginuerzh 2026-06-20 15:43:25 +08:00
  • 66f502b153 fix(router): skip system route setup for TUN @internal router ginuerzh 2026-06-20 15:15:31 +08:00
  • 1d34d4543a fix(masque): default enableDatagrams to true on HTTP/3 listener and fix CONNECT-UDP error handling ginuerzh 2026-06-20 15:01:14 +08:00
  • 296d87a597 fix(quic): preserve user-configured ALPN instead of hardcoding NextProtos ginuerzh 2026-06-20 14:58:19 +08:00
  • c29517be4d fix(quota): add UnwrapConn to quotaConn wrapper for handler type assertions ginuerzh 2026-06-20 14:45:46 +08:00
  • b23553d37a feat: add quota limiter and quota API (#107) Usishchev Yury 2026-06-20 08:44:42 +02:00
  • b7d807b464 fix(wrapper): prevent nil-pointer dereference in WrapUDPConn chain when stats is nil ginuerzh 2026-06-20 13:52:09 +08:00
  • dc31d5c15f fix(dialer): add switchNetns stubs for all non-Linux platforms v0.11.1 ginuerzh 2026-06-18 14:33:02 +08:00
  • a86b5ab66b feat(ss): support none/dummy cipher via no-op AEAD implementation v0.11.0 ginuerzh 2026-06-17 22:18:23 +08:00
  • 183252f6ae Merge branch 'master' of github.com:go-gost/x ginuerzh 2026-06-17 21:56:52 +08:00
  • 301dbc56d0 fix(listener): keep *net.UDPConn visible to quic-go for GSO/GRO BBQ 2026-06-17 21:55:36 +08:00
  • 219dd51548 refactor(logger): replace logrus with stdlib log/slog ginuerzh 2026-06-17 21:51:06 +08:00
  • ca582a147f fix: set StateReady after temporary accept error retry ginuerzh 2026-06-17 21:35:49 +08:00
  • c5b62d41ae fix: set StateReady after temporary accept error retry ginuerzh 2026-06-17 21:28:31 +08:00
  • 81dc9331b8 fix(dialer): split netns into platform file to support android cross-compile ginuerzh 2026-06-15 16:50:44 +08:00
  • 3b3eaa609a fix(listener/pht): set X-Accel-Buffering to fix hang behind Nginx (issue #721) ginuerzh 2026-06-14 14:15:22 +08:00
  • 9b4a320a9f fix(listener/tun): parse routes from URL query string and bare CIDR (issue #735) ginuerzh 2026-06-14 10:04:10 +08:00
  • ba3e1cbe09 fix(config/loader): close old services before binding new ports on reload (issue #754) ginuerzh 2026-06-14 01:40:50 +08:00
  • fd17c3e18d feat(observer/stats): track UDP connection counts in WrapUDPConn ginuerzh 2026-06-14 01:07:41 +08:00
  • 62265b424a fix(handler/socks): bind UDP associate relay socket to BND.ADDR source IP (issue #763) ginuerzh 2026-06-13 22:59:42 +08:00
  • 18c1d6063d fix(dialer/ssh): evict dead session when OpenChannel fails (issue #792) ginuerzh 2026-06-13 19:16:10 +08:00
  • 49ceda6cc2 feat(wrapper): add UnwrapConn to remaining TCP conn wrappers ginuerzh 2026-06-13 14:43:49 +08:00
  • bc44baba55 fix(handler/sshd): unwrap limiter wrappers to fix wrong connection type (issue #867) ginuerzh 2026-06-13 14:29:51 +08:00
  • 8b0806bad4 feat(listener/runix): support remote UDS forwarding (#102) Yuan Tong 2026-06-13 13:39:14 +08:00
  • 9f610fd163 feat service: introduce labels for logs/recorder (#104) Denis Galeev 2026-06-13 08:05:14 +03:00
  • eaeac2763e Bypass with network (#101) Kebin Liu 2026-06-13 12:36:09 +08:00
  • caa82f2861 fix(dialer): skip SO_BINDTODEVICE for loopback interface (issue #785) ginuerzh 2026-06-08 21:36:33 +08:00
  • 078cdbcb81 fix(listener/tap): support custom TAP adapter name on Windows (issue #772) ginuerzh 2026-06-08 20:05:57 +08:00
  • 28e5922fce docs(handler/masque): add comprehensive comments for MASQUE proxy handler ginuerzh 2026-06-07 14:29:18 +08:00
  • 3f671abfb6 fix(ssu): prevent goroutine/connection leak in UDP session cache ginuerzh 2026-06-07 12:44:28 +08:00
  • e45d9a8cc8 feat: add stateless UDP forwarding mode (#853) ginuerzh 2026-06-05 23:26:03 +08:00
  • 5e3280d166 fix(handler/socks5): accumulate UDP traffic metrics into recorder (issue #45) ginuerzh 2026-06-05 21:16:16 +08:00
  • 4d4690b535 fix(handler/serial,sni): 5 code-review fixes - xnet.Pipe errors, (nil,nil) warning, readTimeout comment, defer deadline, clean close ginuerzh 2026-06-05 21:09:10 +08:00
  • f09a7a69b3 fix(sniffing): return early on empty SNI to avoid 'missing port in address' errors (#645) ginuerzh 2026-06-05 20:27:27 +08:00
  • 066f6813b2 fix(handler/sni): add sniff deadline, log sniff errors, nil Router guard ginuerzh 2026-06-05 11:18:26 +08:00
  • c6d3238b15 docs(handler/serial): add comprehensive English comments to all files ginuerzh 2026-06-04 23:38:04 +08:00
  • 6810e50c2c fix(handler/serial): record-after-write ordering, nil Router guards, consistent ReadTimeout ginuerzh 2026-06-04 23:19:15 +08:00
  • e45328d1bb fix(handler/router): 3 bugs fixed + comprehensive data-flow documentation ginuerzh 2026-06-04 23:01:12 +08:00
  • e6c9952ad4 test(handler/router): fix review findings - error matching, version test, cache assertion, entrypoint sync ginuerzh 2026-06-04 15:09:38 +08:00
  • 1a1851fe03 test(handler/router): fix pipe-based tests data race and pipe blocking issues ginuerzh 2026-06-04 09:04:57 +08:00
  • a4d45fa278 test(handler/router): add entrypoint_test.go (handleEntrypoint) ginuerzh 2026-06-04 08:55:47 +08:00
  • 7e9d14bb41 test(handler/router): add associate_test.go (handleAssociate, handlePacket, getRoute, getAddrforRoute, sdRenew) ginuerzh 2026-06-04 08:46:34 +08:00
  • ca83acc323 test(handler/router): add handler_test.go (NewHandler, Init, Handle, Close) ginuerzh 2026-06-04 08:32:56 +08:00
  • 901131d0ed test(handler/router): add conn_test.go (packetConn, lockWriter) ginuerzh 2026-06-04 01:40:36 +08:00
  • 105f7e32d0 test(handler/router): add observe_test.go (checkRateLimit, observeStats) ginuerzh 2026-06-03 23:47:54 +08:00
  • 32056092f5 test(handler/router): add router_test.go (Connector, Router, ConnectorPool, parseRouterID) ginuerzh 2026-06-03 23:42:19 +08:00
  • 9db0f07721 test(handler/router): add metadata_test.go for parseMetadata ginuerzh 2026-06-03 23:40:08 +08:00
  • b48ef7e363 test(handler/router): add helpers_test.go with mocks and test infrastructure ginuerzh 2026-06-03 23:38:31 +08:00
  • 5608b5fa67 fix(handler/router): add break to DelConnector after successful delete ginuerzh 2026-06-03 23:36:20 +08:00
  • ef83d839db refactor(handler/router): extract observe.go (observeStats, checkRateLimit) from handler.go ginuerzh 2026-06-03 23:35:19 +08:00
  • 31cf571a6a refactor(handler/router): extract conn.go (packetConn, lockWriter) from associate.go ginuerzh 2026-06-03 23:33:27 +08:00
  • b4f39b4bcb chore(deps): bump quic-go to 0.59.1 (security patch) ginuerzh 2026-06-05 20:45:03 +08:00
  • 69acf08560 Fix logger init before use it (#100) Kebin Liu 2026-06-05 20:41:50 +08:00
  • a1582d9711 chore(deps): bump github.com/quic-go/quic-go from 0.59.0 to 0.59.1 dependabot[bot] 2026-06-03 21:16:50 +00:00
  • a1fddedcc3 fix(handler/relay): remove remaining Chinese comments missed in conversion v0.10.10 ginuerzh 2026-06-03 23:09:04 +08:00
  • d5fd62aa47 docs(handler/relay): convert all comments to English ginuerzh 2026-06-03 23:05:08 +08:00
  • 95874c53f5 fix: add status field to service list/detail APIs, unify observeStats retry pattern, fix router bugs ginuerzh 2026-06-03 22:12:08 +08:00