[package] name = "rathole" version = "0.2.0" edition = "2021" authors = ["Yujia Qiao "] description = "A reverse proxy for NAT traversal" license = "Apache-2.0" repository = "https://github.com/rapiz1/rathole" readme = "README.md" [features] default = ["tls", "server", "client", "noise", "notify"] server = [] client = [] tls = ["tokio-native-tls"] noise = ["snowstorm", "base64"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [profile.release] lto = true [profile.bench] debug = 1 [profile.minimal] inherits = "release" opt-level = "z" lto = true codegen-units = 1 panic = "abort" [dependencies] tokio = { version = "1", features = ["full"] } bytes = { version = "1", features = ["serde"] } clap = { version = "3.0.0-rc.7", features = ["derive"] } toml = "0.5" serde = { version = "1.0", features = ["derive"] } anyhow = "1.0" sha2 = "0.10" bincode = "1" lazy_static = "1.4.0" hex = "0.4" rand = "0.8.0" backoff = { version="0.3.0", features=["tokio"] } tracing = "0.1" tracing-subscriber = "0.2" socket2 = "0.4" fdlimit = "0.2.1" tokio-native-tls = { version = "0.3.0", optional = true } async-trait = "0.1.52" snowstorm = { git = "https://github.com/black-binary/snowstorm", rev = "1887755", optional = true } base64 = { version = "0.13.0", optional = true } notify = { version = "5.0.0-pre.13", optional = true }