[package]
edition = "2021"
rust-version = "1.75"
name = "ssh-agent-lib"
version = "0.5.2"
authors = [
"Wiktor Kwapisiewicz <wiktor@metacode.biz>",
"Arthur Gautier <arthur.gautier@arista.com>",
"James Spencer <github@jcspencer.net>",
]
build = false
exclude = [".github"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A collection of types for writing custom SSH agents"
readme = "README.md"
keywords = [
"ssh",
"agent",
"authentication",
"openssh",
"async",
]
categories = [
"authentication",
"cryptography",
"encoding",
"network-programming",
"parsing",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/wiktor-k/ssh-agent-lib"
[features]
agent = [
"futures",
"log",
"tokio",
"async-trait",
"codec",
"service-binding",
]
codec = ["tokio-util"]
default = ["agent"]
[lib]
name = "ssh_agent_lib"
path = "src/lib.rs"
[[example]]
name = "agent-socket-info"
path = "examples/agent-socket-info.rs"
[[example]]
name = "extensions"
path = "examples/extensions.rs"
[[example]]
name = "key-storage"
path = "examples/key-storage.rs"
[[example]]
name = "proto-dumper"
path = "examples/proto-dumper.rs"
[[example]]
name = "random-key"
path = "examples/random-key.rs"
[[example]]
name = "ssh-agent-client"
path = "examples/ssh-agent-client.rs"
[[example]]
name = "ssh-agent-client-blocking"
path = "examples/ssh-agent-client-blocking.rs"
[[test]]
name = "roundtrip"
path = "tests/roundtrip/main.rs"
[dependencies.async-trait]
version = "0.1"
optional = true
[dependencies.byteorder]
version = "1"
[dependencies.futures]
version = "0.3"
optional = true
[dependencies.log]
version = "0.4"
optional = true
[dependencies.secrecy]
version = "0.10"
[dependencies.service-binding]
version = "^3"
optional = true
[dependencies.signature]
version = "2"
features = ["alloc"]
[dependencies.ssh-encoding]
version = "0.2"
[dependencies.ssh-key]
version = "0.6"
features = [
"crypto",
"alloc",
]
[dependencies.subtle]
version = "2"
default-features = false
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt",
"net",
"time",
]
optional = true
[dependencies.tokio-util]
version = "0.7"
features = ["codec"]
optional = true
[dev-dependencies.clap]
version = "4.5.60"
features = ["derive"]
[dev-dependencies.const-str]
version = "0.5.7"
[dev-dependencies.env_logger]
version = "0.11.9"
[dev-dependencies.hex-literal]
version = "0.4.1"
[dev-dependencies.p256]
version = "0.13.2"
[dev-dependencies.rand]
version = "0.8"
[dev-dependencies.rsa]
version = "0.9.10"
features = [
"sha2",
"sha1",
]
[dev-dependencies.rstest]
version = "0.26.1"
[dev-dependencies.secrecy]
version = "0.10.3"
[dev-dependencies.sha1]
version = "0.10.6"
features = ["oid"]
default-features = false
[dev-dependencies.ssh-key]
version = "0.6.7"
features = [
"p256",
"rsa",
]
[dev-dependencies.testresult]
version = "0.4.1"
[dev-dependencies.tokio]
version = "1"
features = [
"macros",
"rt-multi-thread",
"sync",
]
[target.'cfg(target_os = "windows")'.dev-dependencies.interprocess]
version = "2.4.0"