mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-03-21 11:41:51 +00:00
When this crate is compiled by itself, these features are required. This doesn't show up in CI because there we compile the entire workspace and some crate somewhere already activates these features then.
89 lines
3.0 KiB
TOML
89 lines
3.0 KiB
TOML
[package]
|
|
name = "firezone-bin-shared"
|
|
version = "0.1.0"
|
|
edition = { workspace = true }
|
|
description = "Firezone-specific modules shared between binaries."
|
|
license = { workspace = true }
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[dependencies]
|
|
anyhow = { workspace = true }
|
|
atomicwrites = { workspace = true }
|
|
axum = { workspace = true, features = ["http1", "tokio"] }
|
|
clap = { workspace = true, features = ["derive", "env"] }
|
|
dns-types = { workspace = true }
|
|
firezone-logging = { workspace = true }
|
|
futures = { workspace = true, features = ["std", "async-await"] }
|
|
gat-lending-iterator = { workspace = true }
|
|
hex-literal = { workspace = true }
|
|
ip-packet = { workspace = true }
|
|
ip_network = { workspace = true, features = ["serde"] }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
serde_json = { workspace = true }
|
|
smbios-lib = { workspace = true }
|
|
socket-factory = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
tokio = { workspace = true, features = ["io-util", "net", "rt", "sync", "process", "signal"] }
|
|
tracing = { workspace = true }
|
|
tun = { workspace = true }
|
|
uuid = { workspace = true, features = ["v4"] }
|
|
|
|
[dev-dependencies]
|
|
bufferpool = { workspace = true }
|
|
bytes = { workspace = true }
|
|
tokio = { workspace = true, features = ["macros", "rt-multi-thread"] }
|
|
|
|
[target.'cfg(target_os = "linux")'.dependencies]
|
|
dirs = { workspace = true }
|
|
atomicwrites = { workspace = true }
|
|
flume = { workspace = true }
|
|
libc = { workspace = true }
|
|
netlink-packet-core = { version = "0.7" }
|
|
netlink-packet-route = { version = "0.19" }
|
|
nix = { workspace = true, features = ["socket"] }
|
|
resolv-conf = { workspace = true }
|
|
rtnetlink = { workspace = true }
|
|
zbus = { workspace = true } # Can't use `zbus`'s `tokio` feature here, or it will break toast popups all the way over in `gui-client`.
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
known-folders = { workspace = true }
|
|
ring = "0.17"
|
|
uuid = { workspace = true, features = ["v4"] }
|
|
windows-core = { workspace = true }
|
|
windows-implement = { workspace = true }
|
|
wintun = "0.5.1"
|
|
winreg = { workspace = true }
|
|
tokio-util = { workspace = true }
|
|
ipconfig = "0.3.2"
|
|
itertools = { workspace = true }
|
|
|
|
[target.'cfg(windows)'.dependencies.windows]
|
|
workspace = true
|
|
features = [
|
|
# For implementing COM interfaces
|
|
"Win32_Foundation",
|
|
# For listening for network change events
|
|
"Win32_Networking_NetworkListManager",
|
|
"Win32_NetworkManagement_IpHelper",
|
|
"Win32_NetworkManagement_Ndis",
|
|
"Win32_Networking_WinSock",
|
|
"Win32_Security",
|
|
"Win32_System_Com",
|
|
# Needed to listen for system DNS changes
|
|
"Win32_System_Registry",
|
|
"Win32_System_Threading",
|
|
"Win32_System_SystemInformation", # For uptime
|
|
"Win32_System_GroupPolicy", # For NRPT when GPO is used
|
|
]
|
|
|
|
[target.'cfg(windows)'.dev-dependencies]
|
|
ip-packet = { workspace = true }
|
|
tokio = { workspace = true, features = ["net", "time"] }
|
|
|
|
[target.'cfg(target_os = "linux")'.dev-dependencies]
|
|
mutants = "0.0.3" # Needed to mark functions as exempt from `cargo-mutants` testing
|
|
tempfile = { workspace = true }
|
|
|
|
[lints]
|
|
workspace = true
|