Tags: database64128/shadowsocks-go
Tags
v1.12.0 - Proxy Completeness 🏰 - Service - Added an option to allow IP fragmentation for specific use cases. - Implemented duplicate name checks for clients, DNS resolvers, and servers. - SOCKS5 - Added username/password authentication support. - Fixed incorrect reporting of some rare errors. - HTTP Proxy - Added Basic authentication support. - Added TLS options to enable HTTPS proxying, with client certificate and custom CA support. - Fixed handling of 100 Continue responses. - Fixed handling of hop-by-hop header fields. - Networking - Resolved an issue preventing "udp6" listeners from starting on Windows. - General - Added a `-version` flag to display version information.
v1.11.2 - Patch Release 🛠️ - Service: Fixed an issue where garbage bytes are sent when initial payload read times out. - Networking: Improved socket address and control message handling. - Networking: Increased UDP socket buffer size to 7 MiB for improved performance.
v1.11.0 - Eleven 🕚 - Service: Added TCP Fast Open (TFO) accept backlog and fallback options. TFO fallback is now enabled by default in the default client. - Service: Added support for configuring TCP_DEFER_ACCEPT and TCP_USER_TIMEOUT socket options on Linux. - HTTP Proxy: Improved handling of reused non-CONNECT connections. - HTTP Proxy: Avoid draining response body when the client disconnects. - HTTP Proxy: Fixed a regression in error propagation for non-CONNECT connections. - Logging: Adjusted default presets for increased efficiency (up to 900 ns/op faster). - API: The SSMv1 API has been moved from /v1 to /api/ssm/v1. - API: The pprof endpoint has been moved behind the secret path. - API: Added support for serving static files, which is useful for hosting a web UI alongside the API. - Prepared for upcoming changes in Go 1.23. Notably, TFO will not be available on Windows starting with Go 1.23, due to new restrictions by the Go toolchain, unless the build tag `tfogo_checklinkname0` is specified along with the linker flag `-checklinkname=0`. Release binaries will be built with these flags to ensure full functionality. - Various improvements and fixes.
v1.10.0 - Shortcake 🍰 - Upgraded to Go 1.22 - Service: Added "network" field to client configuration for choosing the preferred address family. - DNS: Improved handling of truncated responses. Truncated UDP DNS responses immediately trigger fallback to TCP without any warning messages. Truncated TCP DNS responses are accepted without causing lookup failures. - Other fixes and improvements in code.
v1.9.0 - Pathfinder 🧭 - Upgraded to Go 1.21 - Service: Added MPTCP support with option to explicitly enable or disable it. - API: Added option to enable pprof. - HTTP: Fixed server goroutine leak in fail path. - Other fixes and improvements in code.
v1.8.0 - Listen Up, Hands Down 👆 - Service: Support multiple listeners per server. Each listener has its own listen address and socket options. - Service: Allow independent TCP and UDP client endpoint addresses. - Service: Allow customizing initial payload wait timeout and buffer size. - Startup: UDP client endpoint address resolution is now deferred until first session, and will no longer cause startup failures. - Service: Relaxed NAT timeout requirements. The previous 60-second minimum NAT timeout is now only enforced on Shadowsocks 2022 servers. - Service: Use real listen addresses in logs. This reveals the actual assigned random port if no port number is specified in the listen address, or whether the listener is using a dual-stack socket if the IP is unspecified. - Logging: Use colored level printer. - DNS: Added system resolver, improved API and cleaned up message parsing code. - Shadowsocks 2022: Added a new option to allow segmented TCP fixed-length header. - Shadowsocks 2022: Refactored sliding window filter to support a customizable size. The default size has been reduced to 256.
v1.7.0 - Definitive Optimum 🪻 - Router: Switched to bit set for efficient source server filtering. - Router: Switched to port set and port range set for efficient source and destination port filtering. - Router: Port filtering rules can now be defined as a comma-separated list of ports and port ranges. - REST API: The returned user list and traffic stats are now sorted by username. - Networking: Refactored socket control functions. - Networking: Refactored UDP mmsg path to be allocation-free during use. - Networking: Opened up UDP mmsg path for NetBSD. - Networking: Extended PKTINFO support to macOS. - Networking: Added traffic class (DiffServ + ECN) support. - Networking: Added SO_USER_COOKIE support on FreeBSD. - All: Switched non-crypto RNG from math/rand to runtime.fastrand for performance.
PreviousNext