Available on crate feature
experimental-api
only.Expand description
Implement a simple SOCKS proxy that relays connections over Tor.
A proxy is launched with run_socks_proxy()
, which listens for new
connections and then runs
Structs
- Information used to implement a SOCKS connection.
- A Key used to isolate connections.
Enums
- The meaning of a SOCKS authentication field, according to our conventions.
Constants
- Payload to return when an HTTP connection arrive on a Socks port
Functions
- Return true if a given IoError, when received from accept, is a fatal error.
- Copy all the data from
reader
intowriter
until we encounter an EOF or an error. - Given a just-received TCP connection
S
on a SOCKS port, handle the SOCKS handshake and relay the connection over the Tor network. - Given the authentication object from a socks connection, determine what it’s telling us to do.
- Reply a Socks error based on an arti-client Error and close the stream. Returns the error provided in parameter
- Launch a SOCKS proxy to listen on a given localhost port, and run indefinitely.
- Find out which kind of address family we can/should use for a given
SocksRequest
. - write_all the data to the writer & close the writer if write_all is successful.
- write_all the data to the writer & flush the writer if write_all is successful.
Type Aliases
- Type alias for the isolation information associated with a given SOCKS connection before SOCKS is negotiated.