From 7cfdb9698670b5b864d9fcf65fa1a552a1bc3cf2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 8 Apr 2026 16:21:32 +0500 Subject: [PATCH] chore(deps): bump hickory-resolver from 0.26.0-alpha.1 to 0.26.0-beta.3 (#55) * chore(deps): bump hickory-resolver from 0.26.0-alpha.1 to 0.26.0-beta.3 Bumps [hickory-resolver](https://github.com/hickory-dns/hickory-dns) from 0.26.0-alpha.1 to 0.26.0-beta.3. - [Release notes](https://github.com/hickory-dns/hickory-dns/releases) - [Changelog](https://github.com/hickory-dns/hickory-dns/blob/main/CHANGELOG.md) - [Commits](https://github.com/hickory-dns/hickory-dns/compare/v0.26.0-alpha.1...v0.26.0-beta.3) --- updated-dependencies: - dependency-name: hickory-resolver dependency-version: 0.26.0-beta.3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * fix: implement new version --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Lowder --- Cargo.lock | 225 ++++++++++++++++++++++++++++++++------- querying/Cargo.toml | 2 +- querying/src/resolver.rs | 22 ++-- website/src/main.rs | 2 - 4 files changed, 198 insertions(+), 53 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5e51eef..8515509 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -264,6 +264,17 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" +[[package]] +name = "chacha20" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f8d983286843e49675a4b7a2d174efe136dc93a18d69130dd18198a6c167601" +dependencies = [ + "cfg-if", + "cpufeatures 0.3.0", + "rand_core 0.10.0", +] + [[package]] name = "chrono" version = "0.4.44" @@ -346,6 +357,16 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] + [[package]] name = "concurrent-queue" version = "2.5.0" @@ -410,6 +431,15 @@ dependencies = [ "libc", ] +[[package]] +name = "cpufeatures" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201" +dependencies = [ + "libc", +] + [[package]] name = "crc" version = "3.4.0" @@ -632,18 +662,6 @@ dependencies = [ "cfg-if", ] -[[package]] -name = "enum-as-inner" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "env_filter" version = "1.0.0" @@ -976,6 +994,7 @@ dependencies = [ "cfg-if", "libc", "r-efi 6.0.0", + "rand_core 0.10.0", "wasip2", "wasip3", ] @@ -1093,26 +1112,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] -name = "hickory-proto" -version = "0.26.0-alpha.1" +name = "hickory-net" +version = "0.26.0-beta.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a62d7684f766b0f96344be88c023f9b6650039aea09d526b4974cce302eb61b1" +checksum = "acbafe58dd6a1bfa058c9c3dd3372c54665a1935e504a25783cdcf9bf14b21d6" dependencies = [ "async-trait", "bytes", "cfg-if", "data-encoding", - "enum-as-inner", "futures-channel", "futures-io", "futures-util", "h2 0.4.12", + "hickory-proto", "http 1.4.0", "idna", "ipnet", - "once_cell", - "rand 0.9.2", - "ring", + "jni", + "rand 0.10.0", "rustls", "thiserror", "tinyvec", @@ -1120,31 +1138,56 @@ dependencies = [ "tokio-rustls", "tracing", "url", - "webpki-roots 0.26.11", + "webpki-roots", +] + +[[package]] +name = "hickory-proto" +version = "0.26.0-beta.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7ddac4552e5be0deead6df196824a5964b0797302569ef4686b75d32efad052" +dependencies = [ + "data-encoding", + "idna", + "ipnet", + "jni", + "once_cell", + "prefix-trie 0.8.2", + "rand 0.10.0", + "ring", + "thiserror", + "tinyvec", + "tracing", + "url", ] [[package]] name = "hickory-resolver" -version = "0.26.0-alpha.1" +version = "0.26.0-beta.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbab5e26a7f82341145ba1fbd1f1858d0490624fcc46270db2d3c4a101f763f4" +checksum = "a751e330e7cdf445892d6ce47cb4666a8b127834d2e42cee4db15713b9a27780" dependencies = [ "cfg-if", "futures-util", + "hickory-net", "hickory-proto", "ipconfig", + "ipnet", + "jni", "moka", + "ndk-context", "once_cell", "parking_lot", - "rand 0.9.2", + "rand 0.10.0", "resolv-conf", "rustls", "smallvec", + "system-configuration 0.7.0", "thiserror", "tokio", "tokio-rustls", "tracing", - "webpki-roots 0.26.11", + "webpki-roots", ] [[package]] @@ -1310,7 +1353,7 @@ dependencies = [ "tokio", "tokio-rustls", "tower-service", - "webpki-roots 1.0.4", + "webpki-roots", ] [[package]] @@ -1348,7 +1391,7 @@ dependencies = [ "percent-encoding", "pin-project-lite", "socket2 0.6.1", - "system-configuration", + "system-configuration 0.6.1", "tokio", "tower-service", "tracing", @@ -1571,6 +1614,9 @@ name = "ipnet" version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2" +dependencies = [ + "serde", +] [[package]] name = "ipnet-trie" @@ -1579,7 +1625,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0bfa31eccd160220ed5765820b282754ec7e9b36a8f6ea65e08fc0c31c9058cc" dependencies = [ "ipnet", - "prefix-trie", + "prefix-trie 0.6.0", ] [[package]] @@ -1645,6 +1691,55 @@ dependencies = [ "syn", ] +[[package]] +name = "jni" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5efd9a482cf3a427f00d6b35f14332adc7902ce91efb778580e180ff90fa3498" +dependencies = [ + "cfg-if", + "combine", + "jni-macros", + "jni-sys", + "log", + "simd_cesu8", + "thiserror", + "walkdir", + "windows-link", +] + +[[package]] +name = "jni-macros" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a00109accc170f0bdb141fed3e393c565b6f5e072365c3bd58f5b062591560a3" +dependencies = [ + "proc-macro2", + "quote", + "rustc_version", + "simd_cesu8", + "syn", +] + +[[package]] +name = "jni-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] + +[[package]] +name = "jni-sys-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" +dependencies = [ + "quote", + "syn", +] + [[package]] name = "js-sys" version = "0.3.82" @@ -1911,6 +2006,12 @@ dependencies = [ "tempfile", ] +[[package]] +name = "ndk-context" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" + [[package]] name = "normpath" version = "1.5.0" @@ -2321,6 +2422,17 @@ dependencies = [ "num-traits", ] +[[package]] +name = "prefix-trie" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23370be78b7e5bcbb0cab4a02047eb040279a693c78daad04c2c5f1c24a83503" +dependencies = [ + "either", + "ipnet", + "num-traits", +] + [[package]] name = "prettyplease" version = "0.2.37" @@ -2474,6 +2586,17 @@ dependencies = [ "rand_core 0.9.3", ] +[[package]] +name = "rand" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc266eb313df6c5c09c1c7b1fbe2510961e5bcd3add930c1e31f7ed9da0feff8" +dependencies = [ + "chacha20", + "getrandom 0.4.2", + "rand_core 0.10.0", +] + [[package]] name = "rand_chacha" version = "0.3.1" @@ -2512,6 +2635,12 @@ dependencies = [ "getrandom 0.3.4", ] +[[package]] +name = "rand_core" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c8d0fd677905edcbeedbf2edb6494d676f0e98d54d5cf9bda0b061cb8fb8aba" + [[package]] name = "rayon" version = "1.11.0" @@ -2662,7 +2791,7 @@ dependencies = [ "wasm-bindgen-futures", "wasm-streams", "web-sys", - "webpki-roots 1.0.4", + "webpki-roots", ] [[package]] @@ -3046,7 +3175,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "digest", ] @@ -3057,7 +3186,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "digest", ] @@ -3101,6 +3230,22 @@ version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" +[[package]] +name = "simd_cesu8" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94f90157bb87cddf702797c5dadfa0be7d266cdf49e22da2fcaa32eff75b2c33" +dependencies = [ + "rustc_version", + "simdutf8", +] + +[[package]] +name = "simdutf8" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" + [[package]] name = "siphasher" version = "1.0.1" @@ -3456,6 +3601,17 @@ dependencies = [ "system-configuration-sys", ] +[[package]] +name = "system-configuration" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a13f3d0daba03132c0aa9767f98351b3488edc2c100cda2d2ec2b04f3d8d3c8b" +dependencies = [ + "bitflags 2.10.0", + "core-foundation", + "system-configuration-sys", +] + [[package]] name = "system-configuration-sys" version = "0.6.0" @@ -4153,15 +4309,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "webpki-roots" -version = "0.26.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9" -dependencies = [ - "webpki-roots 1.0.4", -] - [[package]] name = "webpki-roots" version = "1.0.4" diff --git a/querying/Cargo.toml b/querying/Cargo.toml index 1ec9c11..1625b84 100644 --- a/querying/Cargo.toml +++ b/querying/Cargo.toml @@ -14,7 +14,7 @@ reqwest = { workspace = true } csv = "1.4.0" maxminddb = "0.27.3" log = { workspace = true } -hickory-resolver = { version = "0.26.0-alpha.1", features = ["tokio", "webpki-roots", "https-ring"] } +hickory-resolver = { version = "0.26.0-beta.3", features = ["tokio", "webpki-roots", "https-ring"] } thiserror = "2.0.18" url = "2.5.8" indicatif = "0.18.4" diff --git a/querying/src/resolver.rs b/querying/src/resolver.rs index cdeb9f7..662e9a6 100644 --- a/querying/src/resolver.rs +++ b/querying/src/resolver.rs @@ -1,6 +1,7 @@ use hickory_resolver::config::{LookupIpStrategy, ResolverConfig, ResolverOpts}; -use hickory_resolver::name_server::TokioConnectionProvider; -use hickory_resolver::proto::ProtoErrorKind; +use hickory_resolver::net::{DnsError, NetError}; +use hickory_resolver::net::runtime::TokioRuntimeProvider; +use hickory_resolver::proto::ProtoError; use std::io::{Error, ErrorKind}; use std::net::IpAddr; use std::sync::Arc; @@ -9,7 +10,7 @@ use thiserror::Error; use crate::asn::{AsnCache, AsnError}; pub struct Resolver { - resolver: hickory_resolver::Resolver, + resolver: hickory_resolver::Resolver, pub asn_cache: Arc, } @@ -41,12 +42,12 @@ impl From for ResolveError { impl Resolver { pub async fn new() -> Resolver { - let config = ResolverConfig::quad9_https(); + let config = ResolverConfig::https(&hickory_resolver::config::QUAD9); let mut opts = ResolverOpts::default(); opts.ip_strategy = LookupIpStrategy::Ipv4AndIpv6; - let resolver = hickory_resolver::Resolver::builder_with_config(config, TokioConnectionProvider::default()) + let resolver = hickory_resolver::Resolver::builder_with_config(config, TokioRuntimeProvider::default()) .with_options(opts) - .build(); + .build().expect("build resolver"); Resolver { resolver, asn_cache: Arc::new(AsnCache::new()), @@ -55,13 +56,12 @@ impl Resolver { pub async fn lookup_ips(&self, domain: &str) -> Result, ResolveError> { Ok(self.resolver.lookup_ip(domain).await - .map_err(|e| match e.kind() { - ProtoErrorKind::NoRecordsFound(..) => ResolveError::NxDomain, - ProtoErrorKind::Msg(msg) + .map_err(|e| match e { + NetError::Dns(DnsError::NoRecordsFound(..)) => ResolveError::NxDomain, + NetError::Proto(ProtoError::Msg(msg)) if msg.contains("Malformed label") || msg.contains("invalid characters") => ResolveError::NxDomain, _ => ResolveError::Other(Error::new(ErrorKind::Other, e)) - })? - .into_iter().collect()) + })?.iter().collect()) } } diff --git a/website/src/main.rs b/website/src/main.rs index e67a6bf..f8c2b73 100644 --- a/website/src/main.rs +++ b/website/src/main.rs @@ -6,7 +6,6 @@ mod whitelist; use crate::db::{check_whitelist, save_query, WhitelistedEntry}; use log::{error, info, warn, LevelFilter}; -use querying::resolver::Resolver; use querying::target::Target; use querying::{Check, CheckError, CheckVerdict, Checker}; use rocket::fairing::AdHoc; @@ -315,7 +314,6 @@ async fn rocket() -> _ { .expect("Failed to create database pool"); rocket::build() - .manage(Resolver::new().await) .manage(checker) .manage(pool) .attach(AdHoc::try_on_ignite("SQLx Migrations", run_migrations))