[package]
edition = "2024"
rust-version = "1.88"
name = "rash-ssh"
version = "0.1.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust Auto SSH — start an ssh session or tunnel, monitor it, and restart it when it dies or stops passing traffic"
readme = "README.md"
keywords = [
"ssh",
"tunnel",
"autossh",
"supervisor",
]
categories = [
"command-line-utilities",
"network-programming",
]
license = "MIT"
repository = "https://github.com/tralireza/rash"
[features]
default = []
test-harness = []
[lib]
name = "rash"
path = "src/lib.rs"
[[bin]]
name = "fake-ssh"
path = "tests/bin/fake_ssh.rs"
required-features = ["test-harness"]
[[bin]]
name = "rash"
path = "src/main.rs"
[[test]]
name = "cli_split"
path = "tests/cli_split.rs"
[[test]]
name = "config_resolve"
path = "tests/config_resolve.rs"
[[test]]
name = "e2e"
path = "tests/e2e.rs"
[[test]]
name = "monitor"
path = "tests/monitor.rs"
[[test]]
name = "pidfile"
path = "tests/pidfile.rs"
[[test]]
name = "policy"
path = "tests/policy.rs"
[dependencies.libc]
version = "0.2"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.tokio]
version = "1"
features = [
"rt",
"macros",
"process",
"net",
"signal",
"time",
"io-util",
]
[dependencies.toml]
version = "0.9"
[dev-dependencies.serde_json]
version = "1"
[lints.clippy]
undocumented_unsafe_blocks = "warn"
[lints.rust]
unsafe_op_in_unsafe_fn = "deny"
[profile.release]
strip = "debuginfo"