[package] name = "bgpfu-netconf" version.workspace = true edition.workspace = true rust-version.workspace = true authors.workspace = true description.workspace = true license.workspace = true repository.workspace = true readme.workspace = true keywords.workspace = true categories.workspace = true [lib] name = "netconf" [features] default = ["ssh", "tls"] ssh = ["dep:russh", "dep:russh-keys"] tls = [ "dep:tokio-rustls", "dep:rustls-pki-types", "tokio/sync", "tokio/io-util", "tokio/macros", "tokio/net", ] junos = [ "dep:chrono", "dep:paste", "tokio/process", ] [dependencies] async-trait.workspace = true bytes.workspace = true iri-string.workspace = true memchr.workspace = true quick-xml.workspace = true thiserror.workspace = true tokio.workspace = true tracing.workspace = true uuid.workspace = true chrono = {workspace = true, optional = true} paste = { workspace = true, optional = true } russh = { workspace = true, optional = true } russh-keys = { workspace = true, optional = true } rustls-pki-types = { workspace = true, optional = true } tokio-rustls = { workspace = true, optional = true } [dev-dependencies] anyhow.workspace = true clap.workspace = true clap-verbosity-flag.workspace = true rustls-pemfile.workspace = true tracing-log.workspace = true tracing-subscriber.workspace = true version-sync.workspace = true tokio = { workspace = true, features = ["rt-multi-thread"] } [[example]] name = "ssh" required-features = ["ssh"] [[example]] name = "tls" required-features = ["tls"] [[example]] name = "ephemeral" required-features = ["tls", "junos"]