Cargo Features

[dependencies]
hickory-proto = { version = "0.25.1", default-features = false, features = ["std", "tls-aws-lc-rs", "https-aws-lc-rs", "quic-aws-lc-rs", "h3-aws-lc-rs", "tls-ring", "https-ring", "quic-ring", "h3-ring", "rustls-platform-verifier", "dnssec-aws-lc-rs", "dnssec-ring", "text-parsing", "tokio", "serde", "testing", "mdns", "no-std-rand", "wasm-bindgen", "backtrace", "pin-utils", "webpki-roots"] }
default = std, tokio

These default features are set whenever hickory-proto is added without default-features = false somewhere in the dependency tree.

std default __dnssec? __h3? __https? __quic? __tls? backtrace? mdns? rustls-platform-verifier? serde? testing? text-parsing? tokio

Enables ring, std and thread_rng of rand, env-filter, fmt and std of tracing-subscriber, std of url, std of thiserror and tracing and std of critical-section, data-encoding, futures-channel, futures-io, futures-util, and ipnet

critical-section:

Enable a critical-section implementation for platforms supporting std, based on std::sync::Mutex. If you enable this, the critical-section crate itself provides the implementation, you don't have to get another crate to to do it.

Affects hickory-proto::runtime, hickory-proto::tcp, hickory-proto::udp, dns_request::DnsRequestOptions.case_randomization, dns_response::DnsResponseStream, xfer::dns_multiplexer, xfer::DnsClientStream, xfer::StreamReceiver, xfer::BufDnsStreamHandle, xfer::DnsRequestSender, xfer::BufDnsRequestStreamHandle, xfer::OneshotDnsRequest, xfer::DnsResponseReceiver, update_message::create, update_message::append, update_message::compare_and_swap, update_message::delete_by_rdata, update_message::delete_rrset, update_message::delete_all, update_message::zone_transfer

tls-aws-lc-rs https-aws-lc-rs? quic-aws-lc-rs? = __tls

Enables aws-lc-rs of tokio-rustls

tokio-rustls:

Alias because Cargo features commonly use -

Affects rustls::default_provider

https-aws-lc-rs = __https, tls-aws-lc-rs
quic-aws-lc-rs h3-aws-lc-rs? = __quic, tls-aws-lc-rs

Enables rustls-aws-lc-rs of quinn

quinn:

Enable rustls with the aws-lc-rs crypto provider

h3-aws-lc-rs = __h3, quic-aws-lc-rs
tls-ring https-ring? quic-ring? = __tls

Enables ring of tokio-rustls

Affects rustls::default_provider

https-ring = __https, tls-ring
quic-ring h3-ring? = __quic, tls-ring

Enables rustls-ring of quinn

quinn:

Enable rustls with the ring crypto provider

h3-ring = __h3, quic-ring
rustls-platform-verifier = std

Enables rustls-platform-verifier

dnssec-aws-lc-rs = __dnssec

Enables aws-lc-sys and ring-io of aws-lc-rs

Affects hickory-proto::dnssec

dnssec-ring = __dnssec

Enables ring

Affects hickory-proto::dnssec

text-parsing = std

Affects serialize::txt

tokio default __tls? = std

Enables net, rt, rt-multi-thread and time of tokio

Affects runtime::iocompat, hickory-proto::quic

serde = std

Enables serde, serde of url

testing = std
__tls tls-aws-lc-rs? tls-ring? = std, tokio

Enables bytes, rustls, and tokio-rustls

Affects hickory-proto::rustls

__dnssec dnssec-aws-lc-rs? dnssec-ring? = std

Enables bitflags, rustls-pki-types, and time

Affects resource::RecordParts.proof, rr_set::RecordsAndRrsigsIter, txt::trust_anchor

__h3 h3-aws-lc-rs? h3-ring? = std

Enables h3, h3-quinn, and http

Affects hickory-proto::h3, hickory-proto::http

__https https-aws-lc-rs? https-ring? = std

Enables bytes, h2, and http

Affects hickory-proto::h2, hickory-proto::http

__quic quic-aws-lc-rs? quic-ring? = std

Enables bytes, pin-project-lite, and quinn

Affects runtime::QuicSocketBinder, hickory-proto::quic

mdns = std

enables experimental the mDNS (multicast) feature

Enables all of socket2

Affects hickory-proto::multicast, query::Query.mdns_unicast_response, resource::RecordParts.mdns_cache_flush

no-std-rand

enables a custom random function backed by a no_std compatible mutex

Enables critical-section

Affects update_message::create, update_message::append, update_message::compare_and_swap, update_message::delete_by_rdata, update_message::delete_rrset, update_message::delete_all, update_message::zone_transfer, dns_handle::DnsHandle.lookup

wasm-bindgen

Enables js-sys and wasm-bindgen

backtrace = std

Enables backtrace

Affects error::ENABLE_BACKTRACE, error::ProtoError.backtrack

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

futures-io std
pin-utils implicit feature

Enables pin-utils

pin-utils:

Utilities for pinning

socket2 mdns?
webpki-roots implicit feature

Enables webpki-roots

webpki-roots:

Mozilla's CA root certificates for use with webpki