https://github.com/sticnarf/tokio-socks
Asynchronous SOCKS proxy support for Rust.
https://github.com/sticnarf/tokio-socks
Last synced: about 1 year ago
JSON representation
Asynchronous SOCKS proxy support for Rust.
- Host: GitHub
- URL: https://github.com/sticnarf/tokio-socks
- Owner: sticnarf
- License: mit
- Created: 2018-11-19T14:11:31.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2025-02-19T05:24:18.000Z (over 1 year ago)
- Last Synced: 2025-05-10T15:41:05.056Z (about 1 year ago)
- Language: Rust
- Homepage:
- Size: 132 KB
- Stars: 85
- Watchers: 2
- Forks: 40
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# tokio-socks
[](https://github.com/sticnarf/tokio-socks/actions)
[](https://crates.io/crates/tokio-socks)
[](https://docs.rs/tokio-socks)
Asynchronous SOCKS proxy support for Rust.
## Features
- [x] `CONNECT` command
- [x] `BIND` command
- [ ] `ASSOCIATE` command
- [x] Username/password authentication
- [ ] GSSAPI authentication
- [ ] Asynchronous DNS resolution
- [X] Chain proxies ([see example](examples/chainproxy.rs))
- [X] SOCKS4
## Compatibility with Other Async Runtimes
By default, the `tokio` feature is enabled, as the crate name suggests.
Users can opt out `tokio` by setting `default-features = false`. The `*_with_socket` functions accept types implementing the `AsyncSocket` trait.
The crate provides `io::Compat` that implements `AsyncSocket` for `futures-io` types (requiring the `futures-io` feature).
## License
This project is licensed under the MIT License - see the [LICENSE](/LICENSE) file for details.
## Acknowledgments
* [sfackler/rust-socks](https://github.com/sfackler/rust-socks)