[[bench]]
name = "lib"
path = "benches/lib.rs"
[[bench]]
name = "lower_name_benches"
path = "benches/lower_name_benches.rs"
[[bench]]
name = "name_benches"
path = "benches/name_benches.rs"
[dependencies.async-recursion]
version = "1.0.0"
[dependencies.async-trait]
version = "0.1.43"
[dependencies.aws-lc-rs]
default-features = false
features = ["prebuilt-nasm"]
optional = true
version = "1.12.3"
[dependencies.backtrace]
optional = true
version = "0.3.50"
[dependencies.bitflags]
optional = true
version = "2.4.1"
[dependencies.bytes]
optional = true
version = "1"
[dependencies.cfg-if]
version = "1"
[dependencies.critical-section]
optional = true
version = "1.1.1"
[dependencies.data-encoding]
default-features = false
features = ["alloc"]
version = "2.2.0"
[dependencies.enum-as-inner]
version = "0.6"
[dependencies.futures-channel]
default-features = false
features = ["alloc"]
version = "0.3.5"
[dependencies.futures-io]
default-features = false
optional = true
version = "0.3.5"
[dependencies.futures-util]
default-features = false
features = ["alloc"]
version = "0.3.5"
[dependencies.h2]
features = ["stream"]
optional = true
version = "0.4.0"
[dependencies.h3]
optional = true
version = "0.0.7"
[dependencies.h3-quinn]
optional = true
version = "0.0.9"
[dependencies.http]
optional = true
version = "1.1"
[dependencies.idna]
default-features = false
features = ["alloc", "compiled_data"]
version = "1.0.3"
[dependencies.ipnet]
default-features = false
version = "2.3.0"
[dependencies.js-sys]
optional = true
version = "0.3.44"
[dependencies.once_cell]
default-features = false
features = ["critical-section", "critical-section"]
version = "1.20.0"
[dependencies.pin-project-lite]
optional = true
version = "0.2"
[dependencies.pin-utils]
optional = true
version = "0.1.0"
[dependencies.quinn]
default-features = false
features = ["log", "runtime-tokio"]
optional = true
version = "0.11.2"
[dependencies.rand]
default-features = false
features = ["alloc", "std_rng"]
version = "0.9"
[dependencies.ring]
features = ["std"]
optional = true
version = "0.17"
[dependencies.rustls]
default-features = false
features = ["logging", "std", "tls12"]
optional = true
version = "0.23.23"
[dependencies.rustls-pki-types]
optional = true
version = "1.10"
[dependencies.rustls-platform-verifier]
optional = true
version = "0.5"
[dependencies.serde]
features = ["derive"]
optional = true
version = "1.0"
[dependencies.socket2]
optional = true
version = "0.5"
[dependencies.thiserror]
default-features = false
version = "2"
[dependencies.time]
optional = true
version = "0.3"
[dependencies.tinyvec]
features = ["alloc"]
version = "1.1.1"
[dependencies.tokio]
features = ["io-util", "macros"]
optional = true
version = "1.21"
[dependencies.tokio-rustls]
default-features = false
features = ["early-data"]
optional = true
version = "0.26"
[dependencies.tracing]
default-features = false
version = "0.1.30"
[dependencies.url]
default-features = false
version = "2.5.4"
[dependencies.wasm-bindgen-crate]
optional = true
package = "wasm-bindgen"
version = "0.2.58"
[dependencies.webpki-roots]
optional = true
version = "0.26"
[dev-dependencies.futures-executor]
default-features = false
features = ["std"]
version = "0.3.5"
[dev-dependencies.tokio]
features = ["rt", "time", "macros"]
version = "1.21"
[dev-dependencies.tracing-subscriber]
default-features = false
version = "0.3"
[features]
__dnssec = ["dep:bitflags", "dep:rustls-pki-types", "dep:time", "std"]
__h3 = ["dep:h3", "dep:h3-quinn", "dep:http", "std"]
__https = ["dep:bytes", "dep:h2", "dep:http", "std"]
__quic = ["dep:bytes", "dep:pin-project-lite", "dep:quinn", "std"]
__tls = ["dep:bytes", "dep:rustls", "dep:tokio-rustls", "std", "tokio"]
backtrace = ["dep:backtrace", "std"]
default = ["std", "tokio"]
dnssec-aws-lc-rs = ["dep:aws-lc-rs", "aws-lc-rs/aws-lc-sys", "aws-lc-rs/ring-io", "__dnssec"]
dnssec-ring = ["dep:ring", "__dnssec"]
h3-aws-lc-rs = ["quic-aws-lc-rs", "__h3"]
h3-ring = ["quic-ring", "__h3"]
https-aws-lc-rs = ["tls-aws-lc-rs", "__https"]
https-ring = ["tls-ring", "__https"]
mdns = ["socket2/all", "std"]
no-std-rand = ["dep:critical-section"]
quic-aws-lc-rs = ["quinn/rustls-aws-lc-rs", "tls-aws-lc-rs", "__quic"]
quic-ring = ["quinn/rustls-ring", "tls-ring", "__quic"]
rustls-platform-verifier = ["dep:rustls-platform-verifier", "std"]
serde = ["dep:serde", "std", "url/serde"]
std = ["critical-section/std", "data-encoding/std", "futures-channel/std", "futures-io/std", "futures-util/std", "ipnet/std", "rand/std", "rand/thread_rng", "ring/std", "thiserror/std", "tracing-subscriber/env-filter", "tracing-subscriber/fmt", "tracing-subscriber/std", "tracing/std", "url/std"]
testing = ["std"]
text-parsing = ["std"]
tls-aws-lc-rs = ["tokio-rustls/aws-lc-rs", "__tls"]
tls-ring = ["tokio-rustls/ring", "__tls"]
tokio = ["dep:tokio", "std", "tokio/net", "tokio/rt", "tokio/time", "tokio/rt-multi-thread"]
wasm-bindgen = ["dep:wasm-bindgen-crate", "dep:js-sys"]
[lib]
name = "hickory_proto"
path = "src/lib.rs"
[lints.rust.unexpected_cfgs]
check-cfg = ["cfg(nightly)"]
level = "warn"
priority = 0
[package]
authors = ["The contributors to Hickory DNS"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["network-programming"]
description = """
Hickory DNS is a safe and secure DNS library. This is the foundational DNS protocol library for all Hickory DNS projects.
"""
documentation = "https://docs.rs/hickory-proto"
edition = "2021"
homepage = "https://hickory-dns.org/"
keywords = ["DNS", "BIND", "dig", "named", "dnssec"]
license = "MIT OR Apache-2.0"
name = "hickory-proto"
readme = "README.md"
repository = "https://github.com/hickory-dns/hickory-dns"
rust-version = "1.71.1"
version = "0.25.1"
[package.metadata.cargo-all-features]
denylist = ["__tls", "__https", "__quic", "__h3", "__dnssec"]
max_combination_size = 2
skip_optional_dependencies = true
[package.metadata.docs.rs]
all-features = true
default-target = "x86_64-unknown-linux-gnu"
rustdoc-args = ["--cfg", "docsrs"]
targets = ["x86_64-apple-darwin", "x86_64-pc-windows-msvc"]
[[test]]
name = "integration"
path = "tests/integration/main.rs"