Files
firezone/rust/client-ffi/Cargo.toml
Thomas Eizinger b7dc897eea refactor(rust): introduce libs/ directory (#10964)
The current Rust workspace isn't as consistent as it could be. To make
navigation a bit easier, we move a few crates around. Generally, we
follow the idea that entry-points should be at the top-level. `rust/`
now looks like this (directories only):

```
.
├── cli             # Firezone CLI
├── client-ffi      # Entry point for Apple & Android
├── gateway         # Gateway
├── gui-client      # GUI client
├── headless-client # Headless client
├── libs            # Library crates
├── relay           # Relay
├── target          # Compile artifacts
├── tests           # Crates for testing
└── tools           # Local tools
```

To further enforce this structure, we also drop the `firezone-` prefix
from all crates that are not top-level binary crates.
2025-11-25 10:59:11 +00:00

49 lines
1.4 KiB
TOML

[package]
name = "client-ffi"
version = "0.1.0"
edition = { workspace = true }
license = { workspace = true }
[lib]
name = "connlib"
crate-type = ["lib", "cdylib", "staticlib"]
doc = false
[dependencies]
anyhow = { workspace = true }
backoff = { workspace = true }
client-shared = { workspace = true }
connlib-model = { workspace = true }
dns-types = { workspace = true }
flume = { workspace = true }
futures = { workspace = true }
ip-packet = { workspace = true }
ip_network = { workspace = true }
libc = { workspace = true }
log = { workspace = true }
logging = { workspace = true }
phoenix-channel = { workspace = true }
rustls = { workspace = true }
secrecy = { workspace = true }
serde_json = { workspace = true }
socket-factory = { workspace = true }
telemetry = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true, features = ["rt-multi-thread", "sync"] }
tokio-util = { workspace = true }
tracing = { workspace = true, features = ["std", "attributes"] }
tracing-appender = { workspace = true }
tracing-subscriber = { workspace = true }
tun = { workspace = true }
uniffi = { workspace = true }
url = { workspace = true }
[target.'cfg(any(target_os = "ios", target_os = "macos"))'.dependencies]
oslog = { version = "0.2.0", default-features = false }
[target.'cfg(target_os = "android")'.dependencies]
android_log-sys = "0.3.2"
[lints]
workspace = true