[package]
name = "shadowsocks-rust"
version = "1.10.5"
authors = ["Shadowsocks Contributors"]
description = "shadowsocks is a fast tunnel proxy that helps you bypass firewalls."
repository = "https://github.com/shadowsocks/shadowsocks-rust"
readme = "README.md"
documentation = "https://docs.rs/shadowsocks"
keywords = ["shadowsocks", "proxy", "socks", "socks5", "firewall"]
license = "MIT"
edition = "2018"
[badges]
maintenance = { status = "passively-maintained" }
[[bin]]
name = "sslocal"
path = "bin/sslocal.rs"
required-features = ["local"]
[[bin]]
name = "ssserver"
path = "bin/ssserver.rs"
required-features = ["server"]
[[bin]]
name = "ssurl"
path = "bin/ssurl.rs"
required-features = ["utility"]
[[bin]]
name = "ssmanager"
path = "bin/ssmanager.rs"
required-features = ["manager"]
[workspace]
members = [
"crates/shadowsocks",
"crates/shadowsocks-service",
]
[profile.release]
lto = "fat"
codegen-units = 1
incremental = false
panic = "abort"
[features]
default = [
"logging",
"trust-dns",
"local",
"server",
"manager",
"utility",
"local-http",
"local-tunnel",
"local-socks4",
"multi-threaded",
]
local = ["shadowsocks-service/local"]
server = ["shadowsocks-service/server"]
manager = ["shadowsocks-service/manager"]
utility = []
trust-dns = ["shadowsocks-service/trust-dns"]
dns-over-tls = ["shadowsocks-service/dns-over-tls"]
dns-over-https = ["shadowsocks-service/dns-over-https"]
logging = ["log4rs"]
local-dns = ["local", "shadowsocks-service/local-dns"]
local-flow-stat = ["local", "shadowsocks-service/local-flow-stat"]
local-http = ["local", "shadowsocks-service/local-http"]
local-http-native-tls = ["local-http", "shadowsocks-service/local-http-native-tls"]
local-http-rustls = ["local-http", "shadowsocks-service/local-http-rustls"]
local-redir = ["local", "shadowsocks-service/local-redir"]
local-tunnel = ["local", "shadowsocks-service/local-tunnel"]
local-socks4 = ["local", "shadowsocks-service/local-socks4"]
jemalloc = ["jemallocator"]
tcmalloc-vendored = ["tcmalloc/bundled"]
multi-threaded = ["tokio/rt-multi-thread"]
stream-cipher = ["shadowsocks-service/stream-cipher"]
[dependencies]
log = "0.4"
log4rs = { version = "1.0", optional = true }
clap = { version = "2", features = ["wrap_help", "suggestions"] }
cfg-if = "1"
qrcode = { version = "0.12", default-features = false }
futures = "0.3"
tokio = { version = "1", features = ["rt", "signal"] }
mimalloc = { version = "0.1", optional = true }
tcmalloc = { version = "0.3", optional = true }
jemallocator = { version = "0.3", optional = true }
shadowsocks-service = { version = "1.10.4", path = "./crates/shadowsocks-service" }
[target.'cfg(unix)'.dependencies]
daemonize = "0.4"
[dev-dependencies]
byteorder = "1.3"
env_logger = "0.8"
byte_string = "1.0"
tokio = { version = "1", features = ["net", "time", "macros", "io-util"]}