[[bin]]
name = "ombrac-client"
path = "bin/main.rs"
required-features = ["binary"]
[build-dependencies.cbindgen]
default-features = false
version = "0.29"
[dependencies.arc-swap]
default-features = false
version = "1.8"
[dependencies.bincode]
default-features = false
version = "2"
[dependencies.blake3]
default-features = false
version = "1"
[dependencies.bytes]
default-features = false
version = "1"
[dependencies.clap]
default-features = false
features = ["std", "derive", "color", "help", "usage", "error-context", "suggestions"]
version = "4"
[dependencies.dashmap]
default-features = false
optional = true
version = "6"
[dependencies.futures]
default-features = false
version = "0.3"
[dependencies.hickory-proto]
default-features = false
optional = true
version = "0.25"
[dependencies.http]
default-features = false
optional = true
version = "1"
[dependencies.http-body-util]
default-features = false
optional = true
version = "0.1"
[dependencies.hyper]
default-features = false
features = ["client", "server", "http1"]
optional = true
version = "1"
[dependencies.hyper-util]
default-features = false
features = ["tokio"]
optional = true
version = "0.1"
[dependencies.ipnet]
default-features = false
features = ["json"]
optional = true
version = "2.11"
[dependencies.moka]
default-features = false
features = ["future"]
optional = true
version = "0.12"
[dependencies.ombrac]
default-features = false
version = "0.7.1"
[dependencies.ombrac-macros]
default-features = false
version = "0.7.1"
[dependencies.ombrac-netstack]
default-features = false
optional = true
version = "0.7.1"
[dependencies.ombrac-transport]
default-features = false
features = ["quic"]
version = "0.7.1"
[dependencies.serde]
default-features = false
features = ["derive"]
version = "1"
[dependencies.serde_json]
version = "1"
[dependencies.socks-lib]
default-features = false
optional = true
version = "0.1"
[dependencies.thiserror]
default-features = false
version = "2"
[dependencies.tokio]
default-features = false
features = ["rt-multi-thread", "net", "macros", "signal", "sync"]
version = "1"
[dependencies.tokio-util]
default-features = false
features = ["codec"]
version = "0.7"
[dependencies.tracing]
default-features = false
optional = true
version = "0.1"
[dependencies.tracing-appender]
default-features = false
optional = true
version = "0.2"
[dependencies.tracing-subscriber]
default-features = false
features = ["ansi", "env-filter", "registry"]
optional = true
version = "0.3"
[dependencies.tun-rs]
default-features = false
features = ["async_tokio", "async_framed"]
optional = true
version = "2.7"
[dependencies.twox-hash]
default-features = false
features = ["xxhash64"]
optional = true
version = "2"
[dev-dependencies.tokio]
default-features = false
features = ["full"]
version = "1"
[features]
binary = ["tracing", "datagram", "dep:tracing-appender", "dep:tracing-subscriber", "endpoint-socks", "endpoint-http", "endpoint-tun"]
datagram = ["ombrac-transport/datagram", "dep:dashmap"]
default = ["tracing"]
endpoint-default = ["endpoint-socks"]
endpoint-http = ["http", "hyper", "hyper-util", "http-body-util"]
endpoint-socks = ["socks-lib"]
endpoint-tun = ["dep:moka", "dep:ipnet", "dep:tun-rs", "dep:dashmap", "dep:twox-hash", "dep:hickory-proto", "ombrac-netstack"]
ffi = ["tracing", "datagram", "dep:tracing-appender", "dep:tracing-subscriber", "endpoint-socks", "endpoint-http", "endpoint-tun"]
full = ["tracing", "datagram", "dep:tracing-appender", "dep:tracing-subscriber", "endpoint-socks", "endpoint-http", "endpoint-tun"]
tracing = ["dep:tracing", "ombrac-macros/tracing", "ombrac-netstack/tracing", "ombrac-transport/tracing"]
[lib]
crate-type = ["staticlib", "cdylib", "rlib"]
name = "ombrac_client"
path = "src/lib.rs"
[lints.rust.unexpected_cfgs]
check-cfg = ["cfg(nightly)"]
level = "warn"
priority = 0
[package]
authors = ["Contributors"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = "build.rs"
description = "Safe, fast, small TCP over QUIC tunnel using Rust"
edition = "2024"
keywords = ["proxy", "firewall", "tcp", "quic"]
license = "Apache-2.0"
name = "ombrac-client"
readme = "README.md"
repository = "https://github.com/ombrac/ombrac"
resolver = "2"
version = "0.7.1"