forked from hickory-dns/hickory-dns
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCargo.toml
136 lines (116 loc) · 4.3 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
[package]
name = "hickory-resolver"
# A short blurb about the package. This is not rendered in any format when
# uploaded to crates.io (aka this is not markdown)
description = """
Hickory DNS is a safe and secure DNS library. This Resolver library uses the Client library to perform all DNS queries. The Resolver is intended to be a high-level library for any DNS record resolution see Resolver and AsyncResolver for supported resolution types. The Client can be used for other queries.
"""
# These URLs point to more information about the repository
documentation = "https://docs.rs/hickory-resolver"
# 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
[features]
default = ["system-config", "tokio-runtime"]
backtrace = ["dep:backtrace", "hickory-proto/backtrace"]
dns-over-native-tls = [
"dns-over-tls",
"dep:tokio-native-tls",
"hickory-proto/dns-over-native-tls",
]
# DNS over TLS with OpenSSL currently needs a good way to set default CAs, use rustls or native-tls
dns-over-openssl = [
"dns-over-tls",
"hickory-proto/dns-over-openssl",
"dep:tokio-openssl",
]
dns-over-rustls = [
"dns-over-tls",
"dep:rustls",
"dep:tokio-rustls",
"hickory-proto/dns-over-rustls",
]
dns-over-tls = ["tokio-runtime"]
# This requires some TLS library, currently only rustls is supported
dns-over-https-rustls = [
"hickory-proto/dns-over-https-rustls",
"dns-over-rustls",
]
dns-over-quic = ["dep:quinn", "dns-over-rustls", "hickory-proto/dns-over-quic"]
dns-over-h3 = ["dep:quinn", "dns-over-rustls", "hickory-proto/dns-over-h3"]
webpki-roots = ["dep:webpki-roots", "hickory-proto/webpki-roots"]
native-certs = ["dep:rustls-native-certs", "hickory-proto/native-certs"]
dnssec-openssl = ["dnssec", "hickory-proto/dnssec-openssl"]
dnssec-ring = ["dnssec", "hickory-proto/dnssec-ring"]
dnssec = []
serde = ["dep:serde", "hickory-proto/serde"]
system-config = ["dep:ipconfig", "dep:resolv-conf"]
testing = []
tokio-runtime = ["tokio/rt", "hickory-proto/tokio-runtime"]
[lib]
name = "hickory_resolver"
path = "src/lib.rs"
[dependencies]
backtrace = { version = "0.3.50", optional = true }
cfg-if.workspace = true
futures-util = { workspace = true, default-features = false, features = [
"std",
] }
moka = { workspace = true, features = ["sync"] }
once_cell.workspace = true
parking_lot.workspace = true
quinn = { workspace = true, optional = true, features = [
"log",
"runtime-tokio",
"rustls",
] }
rand.workspace = true
resolv-conf = { workspace = true, optional = true, features = ["system"] }
rustls = { workspace = true, optional = true }
rustls-native-certs = { workspace = true, optional = true }
serde = { workspace = true, features = ["derive", "rc"], optional = true }
smallvec.workspace = true
thiserror.workspace = true
tracing.workspace = true
tokio = { workspace = true, optional = true }
tokio-native-tls = { workspace = true, optional = true }
tokio-openssl = { workspace = true, optional = true }
tokio-rustls = { workspace = true, optional = true }
hickory-proto = { workspace = true, default-features = false }
webpki-roots = { workspace = true, optional = true }
[target.'cfg(windows)'.dependencies]
ipconfig = { workspace = true, optional = true }
[dev-dependencies]
futures-executor = { workspace = true, default-features = false, features = ["std"] }
test-support.workspace = true
tokio = { workspace = true, features = ["macros", "test-util"] }
toml.workspace = true
tracing-subscriber.workspace = true
[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"]
[[example]]
name = "custom_provider"
required-features = ["tokio-runtime"]
[[example]]
name = "flush_cache"
required-features = ["tokio-runtime", "system-config"]
[[example]]
name = "global_resolver"
required-features = ["tokio-runtime", "system-config"]
[[example]]
name = "multithreaded_runtime"
required-features = ["tokio-runtime", "system-config"]
[lints]
workspace = true