[package]
edition = "2021"
rust-version = "1.71.1"
name = "nsproxy-hickory-server"
version = "0.25.4"
authors = ["The contributors to Hickory DNS"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = """
Hickory DNS is a safe and secure DNS server with DNSSEC support. The DNSSEC
support allows for live signing of all records, but it does not currently
support records signed offline. The server supports dynamic DNS with SIG(0) or
TSIG authenticated requests. Hickory DNS is based on the Tokio and Futures
libraries, which means it should be easy to integrate into other software that
also uses those libraries.
"""
homepage = "https://hickory-dns.org/"
documentation = "https://docs.rs/hickory-server"
readme = "README.md"
keywords = [
"dns",
"dnssec",
]
categories = ["network-programming"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/hickory-dns/hickory-dns"
[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",
]
[package.metadata.cargo-all-features]
skip_optional_dependencies = true
max_combination_size = 2
denylist = [
"__tls",
"__https",
"__quic",
"__h3",
"__dnssec",
]
[features]
__dnssec = []
__h3 = [
"dep:h3",
"dep:h3-quinn",
"__quic",
]
__https = [
"dep:h2",
"dep:http",
"__tls",
]
__quic = ["__tls"]
__tls = [
"dep:rustls",
"dep:tokio-rustls",
]
backtrace = ["nsproxy-hickory-proto/backtrace"]
blocklist = ["resolver"]
dnssec-aws-lc-rs = [
"nsproxy-hickory-proto/dnssec-aws-lc-rs",
"nsproxy-hickory-recursor?/dnssec-aws-lc-rs",
"nsproxy-hickory-resolver?/dnssec-aws-lc-rs",
"serde/rc",
"__dnssec",
]
dnssec-ring = [
"nsproxy-hickory-proto/dnssec-ring",
"nsproxy-hickory-recursor?/dnssec-ring",
"nsproxy-hickory-resolver?/dnssec-ring",
"serde/rc",
"__dnssec",
]
h3-aws-lc-rs = [
"nsproxy-hickory-proto/h3-aws-lc-rs",
"nsproxy-hickory-resolver?/h3-aws-lc-rs",
"quic-aws-lc-rs",
"__h3",
]
h3-ring = [
"nsproxy-hickory-proto/h3-ring",
"nsproxy-hickory-resolver?/h3-ring",
"quic-ring",
"__h3",
]
https-aws-lc-rs = [
"nsproxy-hickory-proto/https-aws-lc-rs",
"nsproxy-hickory-resolver?/https-aws-lc-rs",
"tls-aws-lc-rs",
"__https",
]
https-ring = [
"nsproxy-hickory-proto/https-ring",
"nsproxy-hickory-resolver?/https-ring",
"tls-ring",
"__https",
]
metrics = ["dep:metrics"]
quic-aws-lc-rs = [
"nsproxy-hickory-proto/quic-aws-lc-rs",
"nsproxy-hickory-resolver?/quic-aws-lc-rs",
"tls-aws-lc-rs",
"__quic",
]
quic-ring = [
"nsproxy-hickory-proto/quic-ring",
"nsproxy-hickory-resolver?/quic-ring",
"tls-ring",
"__quic",
]
recursor = [
"dep:nsproxy-hickory-recursor",
"dep:nsproxy-hickory-resolver",
]
resolver = ["dep:nsproxy-hickory-resolver"]
rustls-platform-verifier = ["nsproxy-hickory-resolver?/rustls-platform-verifier"]
sqlite = ["rusqlite"]
testing = []
tls-aws-lc-rs = [
"nsproxy-hickory-proto/tls-aws-lc-rs",
"nsproxy-hickory-resolver?/tls-aws-lc-rs",
"__tls",
]
tls-ring = [
"nsproxy-hickory-proto/tls-ring",
"nsproxy-hickory-resolver?/tls-ring",
"__tls",
]
toml = ["dep:toml"]
webpki-roots = ["nsproxy-hickory-resolver?/webpki-roots"]
[lib]
name = "hickory_server"
path = "src/lib.rs"
[dependencies.async-trait]
version = "0.1.43"
[dependencies.bytes]
version = "1"
[dependencies.cfg-if]
version = "1"
[dependencies.data-encoding]
version = "2.2.0"
default-features = false
[dependencies.enum-as-inner]
version = "0.6"
[dependencies.futures-util]
version = "0.3.5"
features = ["std"]
default-features = false
[dependencies.h2]
version = "0.4.0"
features = ["stream"]
optional = true
[dependencies.h3]
version = "0.0.7"
optional = true
[dependencies.h3-quinn]
version = "0.0.9"
optional = true
[dependencies.http]
version = "1.1"
optional = true
[dependencies.ipnet]
version = "2.3.0"
features = [
"serde",
"std",
]
default-features = false
[dependencies.metrics]
version = "0.24.1"
optional = true
[dependencies.nsproxy-hickory-proto]
version = "0.25"
features = [
"std",
"serde",
"text-parsing",
"tokio",
]
default-features = false
[dependencies.nsproxy-hickory-recursor]
version = "0.25"
features = ["serde"]
optional = true
default-features = false
[dependencies.nsproxy-hickory-resolver]
version = "0.25"
features = [
"serde",
"system-config",
"tokio",
]
optional = true
default-features = false
[dependencies.prefix-trie]
version = "0.7"
[dependencies.rusqlite]
version = "0.35"
features = [
"bundled",
"time",
]
optional = true
[dependencies.rustls]
version = "0.23.23"
features = [
"logging",
"std",
"tls12",
]
optional = true
default-features = false
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.thiserror]
version = "2"
default-features = false
[dependencies.time]
version = "0.3"
[dependencies.tokio]
version = "1.21"
features = [
"macros",
"net",
"sync",
]
[dependencies.tokio-rustls]
version = "0.26"
optional = true
default-features = false
[dependencies.tokio-util]
version = "0.7.9"
[dependencies.toml]
version = "0.8.14"
optional = true
[dependencies.tracing]
version = "0.1.30"
default-features = false
[dev-dependencies.futures-executor]
version = "0.3.5"
features = ["std"]
default-features = false
[dev-dependencies.tokio]
version = "1.21"
features = [
"macros",
"rt",
]
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"fmt",
"std",
]
default-features = false
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(nightly)"]