[package]
name = "fkm-proxy"
version = "0.3.0"
edition = "2024"
license = "MIT"
description = "Fkm proxy client & server"
repository = "https://github.com/FKMTime/fkm-proxy"
[[bin]]
name = "fkm-proxy-client"
path = "src/client/main.rs"
[[bin]]
name = "fkm-proxy-server"
path = "src/server/main.rs"
[dependencies]
anyhow = "1.0.102"
kanal = "0.1.1"
thiserror = "2.0.18"
tokio = { version = "1.52.1", features = ["io-util", "net", "fs", "sync", "signal", "time", "macros", "rt-multi-thread"] }
tokio-rustls = { version = "0.26.4", features = ["ring", "logging", "tls12"], default-features = false }
clap = { version = "4.6.1", features = ["derive", "env"] }
dotenvy = "0.15.7"
rcgen = "0.14.7"
tracing = "0.1.44"
tracing-subscriber = "0.3.23"
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.149"
mime_guess = "2.0.5"
rustls-pemfile = "2.2.0"
rustls = { version = "0.23.38", default-features = false, features = ["std"] }
qls-proto-utils = "0.2.0"
http = "1.4.0"
chrono = "0.4.44"
html-escape = "0.2.13"
quinn = { version = "0.11.9", features = ["rustls"] }
russh = { version = "0.60.0", default-features = false, features = ["flate2", "ring"] }
pty-process = { version = "0.5.3", features = ["async"] }
tokio-pipe = "0.2.12"
rand = "0.10.1"
bytes = "1.11.1"
ring = "0.17.14"
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
panic = "abort"
strip = true