Releases: MengJiangProject/redproxy-rs
Releases · MengJiangProject/redproxy-rs
v0.10.0
🚀 Major Feature Release - SOCKS BIND Support & More!
This release brings significant new protocol support, security enhancements, and architectural improvements to redproxy-rs.
🔧 SOCKS BIND Support
- Complete SOCKS4/5 BIND implementation (#218, #420)
- Direct TCP BIND operations with configurable bind addresses
- SOCKS proxy BIND with upstream server support
- Timeout protection to prevent resource exhaustion attacks
- NAT address override functionality for complex network scenarios
- Comprehensive test coverage including timeout validation
🌐 HTTP/HTTPS Enhancements
- RFC 9298 Proxying UDP in HTTP protocol support (#406)
- HTTP authentication support for connectors and listeners (#405)
- Enhanced WebSocket detection with proper header parsing
- HTTP forward proxy implementation with WebSocket support (#404)
- HTTP loop prevention system with configurable hop limits
🔒 SSH Tunnel Support
- Full SSH tunneling for both listeners and connectors
- Key-based authentication support
- Production-ready implementation
🛡️ Security & Performance
- Graceful shutdown system with SIGTERM/SIGINT/CTRL+C handling
- Zero-copy buffer optimizations and Linux splice() syscall support
- Memory safety improvements - eliminated all panic!() and unwrap() calls
- Resource protection with configurable timeouts for BIND operations
🧪 Testing & Development
- Comprehensive Docker-based test suite with matrix protocol validation
- Nix development environment with direnv support
- Enhanced CI/CD pipeline with automated testing
- Improved build and cross-compilation support
🏗️ Architecture Modernization
- Updated to Rust Edition 2024 with modern language features
- Migrated to standard library solutions (OnceLock vs lazy_static)
- Improved error handling with anyhow
- Better dependency management and library migrations
📦 What's Changed
- feat: implement SOCKS BIND command support - addresses #218 by @bearice in #420
- feat: add comprehensive integration test suite with CI integration
- feat: implement comprehensive HTTP proxy loop prevention
- feat: add SSH tunnel support for listeners and connectors
- feat: implement production-ready graceful shutdown system
- feat: Implement RFC 9298 Proxying UDP in HTTP protocol by @bearice in #406
- feat: Add HTTP authentication support for connectors and listeners by @bearice in #405
- feat: Rework HTTP forward proxy implementation with WebSocket support by @bearice in #404
Full Changelog: v0.9.0...v0.10.0
This release represents a major milestone with significant new protocol support, security hardening, and architectural improvements for production deployments.
v0.9.0
v0.8.1
v0.8.0
v0.7.0
- ca0f5f7 [copy] dont update state on errors
- 6742006 remove unnessuary callbacks
- 998dddc remove debug prints
- 359799c [feat] zero value should disable timeouts
- d674d5b [feat] add idle timeout
- 171bb1e add two status to indicate half closed streams
- 0747958 [feat] exprimental support of fwmark on linux
- 37e1d19 update log levels for accepting errors
- c9fe14f milu: add short circuit evaluation
- f4d40f9 better os-dep handlling
v0.6.0
- bd148cf fixes missing connector in script_ext
- 265c662 rename auth_cmd => cmd
- 050ceac [feat] add auth_cmd cache
- 9eb1594 check userdb first, then auth_cmd
- c80d158 add username into extra map
- 5181af3 tls: accepts both pkcs1 and pkcs8 private keys in PEM format
- 6983e96 update example config
- 9368dfc [feat] add auth_cmd to socks listener
v0.5.6
v0.5.5
v0.5.4
v0.5.3
- 01ffab7 bump version 0.5.3
- e64da3b tproxy: supports IPv6
- 8b16aa1 fixes nix error not a ioerror
- 42f7c3a Bump nix from 0.22.1 to 0.23.0
- a173076 Bump prometheus from 0.12.0 to 0.13.0
- 2d68bde Bump serde_json from 1.0.67 to 1.0.68
- f7a2977 Bump axum from 0.2.3 to 0.2.5
- af83403 Bump serde_yaml from 0.8.20 to 0.8.21
- 6693524 keep alive not working on windows, disable it for now