[package] name = "trust-dns-client" # A short blurb about the package. This is not rendered in any format when # uploaded to crates.io (aka this is not markdown) description = """ Trust-DNS is a safe and secure DNS library. This is the Client library with DNSSEC support. DNSSEC with NSEC validation for negative records, is complete. The client supports dynamic DNS with SIG0 authenticated requests, implementing easy to use high level funtions. Trust-DNS is based on the Tokio and Futures libraries, which means it should be easily integrated into other software that also use those libraries. """ # These URLs point to more information about the repository documentation = "https://docs.rs/trust-dns" # This points to a file in the repository (relative to this Cargo.toml). The # contents of this file are stored and indexed in the registry. readme = "README.md" version.workspace = true authors.workspace = true edition.workspace = true rust-version.workspace = true homepage.workspace = true repository.workspace = true keywords.workspace = true categories.workspace = true license.workspace = true [badges] #github-actions = { repository = "bluejekyll/trust-dns", branch = "main", workflow = "test" } codecov = { repository = "bluejekyll/trust-dns", branch = "main", service = "github" } maintenance = { status = "actively-developed" } [features] backtrace = ["trust-dns-proto/backtrace"] dns-over-https-openssl = ["dns-over-https", "dns-over-openssl"] dns-over-https-rustls = ["dns-over-https", "dns-over-rustls", "rustls", "trust-dns-proto/dns-over-https-rustls"] dns-over-https = ["trust-dns-proto/dns-over-https"] dns-over-quic = ["dns-over-rustls", "trust-dns-proto/dns-over-quic"] dns-over-native-tls = ["dns-over-tls", "trust-dns-proto/dns-over-native-tls"] dns-over-openssl = ["dns-over-tls", "dnssec-openssl"] dns-over-rustls = ["dns-over-tls", "dnssec-ring", "trust-dns-proto/dns-over-rustls"] dns-over-tls = [] dnssec-openssl = ["dnssec", "trust-dns-proto/dnssec-openssl"] dnssec-ring = ["dnssec", "trust-dns-proto/dnssec-ring"] dnssec = ["trust-dns-proto/dnssec"] serde-config = ["serde"] # enables experimental the mDNS (multicast) feature mdns = ["trust-dns-proto/mdns"] [lib] name = "trust_dns_client" path = "src/lib.rs" [dependencies] cfg-if.workspace = true data-encoding.workspace = true futures-channel = { workspace = true, default-features = false, features = ["std"] } futures-util = { workspace = true, default-features = false, features = ["std"] } once_cell.workspace = true radix_trie.workspace = true rand.workspace = true rustls = { workspace = true, optional = true } serde = { workspace = true, features = ["derive"], optional = true } thiserror.workspace = true tracing.workspace = true tokio = { workspace = true, features = ["rt", "net"] } trust-dns-proto = { workspace = true, features = ["text-parsing", "tokio-runtime"] } webpki = { workspace = true, optional = true } [dev-dependencies] futures = { workspace = true, default-features = false, features = ["std", "executor"] } openssl = { workspace = true, features = ["v102", "v110"], optional = false } tokio = { workspace = true, features = ["rt", "macros"] } tracing-subscriber = { workspace = true, features = ["std", "fmt", "env-filter"] } [package.metadata.docs.rs] all-features = true default-target = "x86_64-unknown-linux-gnu" targets = ["x86_64-apple-darwin", "x86_64-pc-windows-msvc"] rustdoc-args = ["--cfg", "docsrs"]