[package]
name = "rcp-tools-remote"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true
description = "Internal library for RCP tools - remote copy protocol and networking (not intended for direct use)"
readme = "../README.md"
documentation = "https://docs.rs/rcp-tools-remote"
keywords = ["internal", "remote", "tcp"]
categories = ["development-tools"]

[lints]
workspace = true

[package.metadata.docs.rs]
cargo-args = ["--config", "build.rustflags=[\"--cfg\", \"tokio_unstable\"]"]
rustdoc-args = ["--cfg", "tokio_unstable"]

[lib]
name = "remote"

[dependencies]
anyhow = "1.0"
async-channel = "2.5"
bytesize = "2.3"
async-recursion = "1.1"
base64 = "0.22"
bitcode = { version = "0.6", features = ["serde"] }
bytes = "1.11"
chrono = "0.4"
common = { workspace = true }
enum-map = "2.7"
futures = "0.3"
hex = "0.4"
humantime = "2.3"
if-addrs = "0.15"
openssh = "0.11"
rand = "0.10"
rcgen = "0.14"
rustls = { version = "0.23", default-features = false, features = ["ring", "std", "tls12"] }
serde = { version = "1.0", features = ["derive"] }
sha2 = "0.11"
socket2 = "0.6"
strum = { version = "0.28", features = ["derive"] }
tokio = { version = "1.52", features = ["full", "parking_lot", "tracing"] }
tokio-rustls = "0.26"
tokio-util = "0.7"
tracing = "0.1"
