1#[macro_use]
2extern crate anyhow;
3#[macro_use]
4extern crate log;
5#[macro_use]
6extern crate num_derive;
7
8#[path = "./common/addresses.rs"]
9pub mod addresses;
10#[path = "./common/constants.rs"]
11pub mod constants;
12#[path = "./common/credentials.rs"]
13pub mod credentials;
14#[path = "./common/interface.rs"]
15pub mod interface;
16pub mod socks5;
17pub mod socks6;
18#[path = "./common/util.rs"]
19pub mod util;
20
21pub use addresses::{Address, ProxyAddress};
22pub use credentials::Credentials;
23pub use interface::SocksHandler;
24pub use socks5::{Socks5Client, Socks5Handler};
25pub use socks6::{Socks6Client, Socks6Handler};
26pub use tokio::io::copy_bidirectional;
27pub use util::{get_original_dst, resolve_addr, try_read_initial_data};