burrow/burrow/Cargo.toml
2024-05-12 00:08:20 +08:00

81 lines
2.1 KiB
TOML

[package]
name = "burrow"
version = "0.1.0"
edition = "2021"
description = "Burrow is an open source tool for burrowing through firewalls, built by teenagers at Hack Club."
license = "GPL-3.0-or-later"
[lib]
crate-type = ["lib", "staticlib"]
[dependencies]
anyhow = "1.0"
tokio = { version = "1.21", features = [
"rt",
"macros",
"sync",
"io-util",
"rt-multi-thread",
"time",
"tracing",
] }
tun = { version = "0.1", path = "../tun", features = ["serde", "tokio"] }
clap = { version = "4.4", features = ["derive"] }
tracing = "0.1"
tracing-log = "0.1"
tracing-oslog = { git = "https://github.com/Stormshield-robinc/tracing-oslog" }
tracing-subscriber = { version = "0.3" , features = ["std", "env-filter"] }
log = "0.4"
serde = { version = "1", features = ["derive"] }
serde_json = "1.0"
blake2 = "0.10"
chacha20poly1305 = "0.10"
rand = "0.8"
rand_core = "0.6"
aead = "0.5"
x25519-dalek = { version = "2.0", features = [
"reusable_secrets",
"static_secrets",
] }
ring = "0.17"
parking_lot = "0.12"
hmac = "0.12"
base64 = "0.21"
fehler = "1.0"
ip_network_table = "0.2"
ip_network = "0.4"
async-channel = "2.1"
schemars = "0.8"
futures = "0.3.28"
once_cell = "1.19"
console-subscriber = { version = "0.2.0", optional = true }
console = "0.15.8"
toml = "0.8.12"
[dependencies.rusqlite]
version = "0.31.0"
[target.'cfg(target_os = "linux")'.dependencies]
caps = "0.5"
libsystemd = "0.7"
tracing-journald = "0.3"
[target.'cfg(target_vendor = "apple")'.dependencies]
nix = { version = "0.27" }
rusqlite = { version = "0.31.0", features = ["bundled"] }
[dev-dependencies]
insta = { version = "1.32", features = ["yaml"] }
[package.metadata.generate-rpm]
assets = [
{ source = "target/release/burrow", dest = "/usr/bin/burrow", mode = "755" },
{ source = "systemd/burrow.service", dest = "/etc/systemd/system/burrow.service", mode = "644" },
{ source = "systemd/burrow.socket", dest = "/etc/systemd/system/burrow.socket", mode = "644" },
]
post_install_script = "../package/rpm/post_install"
pre_uninstall_script = "../package/rpm/pre_uninstall"
[features]
tokio-console = ["dep:console-subscriber"]
bundled = ["rusqlite/bundled"]