1231 Commits

Author SHA1 Message Date
zhangjingqiang
b0c0566483 update to use ring 0.17 2023-10-25 13:33:36 +02:00
Benjamin Fry
408d0baca0 Prepare 0.24 release with branding change to Hickory DNS (#2054)
* update all READMEs with notices about the name change

* update changelog for 0.24

* bump crate versions to 0.24

* update version notice information

* update readmes to back reference trust-dns

* rename all crates to hickory counterparts

* replace all Trust-DNS references in code and comments with Hickory DNS

* rename all Trust-DNS references to Hickory DNS in non-code

* rename all trust-dns-resolver references to hickory-resolver

* rename all trust-dns-client references to hickory-client

* rename all trust-dns-proto references to hickory-proto

* rename all trust-dns-server references to hickory-server

* rename all trust-dns-compatibility references to hickory-compatability

* rename all trust-dns-integration references to hickory-integration

* rename all trust-dns-util references to hickory-util

* Update MIT licenses to reference Hickory DNS

* update all trust-dns references to hickory-dns

* update all bluejekyll github references to hickorydns org

* Update name in Changelog

* make sure hickory-dns logs during tests

* add changelogs for recent main additions

* fix references to trust-dns and hickory in architecture

* update a few trust-dns references in READMEs

* fixup some dangling trust_dns references

* replace fka with formerly in change log

* replace all hickoydns org references to hickory-dns

* replace all http links with https

* update logos

* update hickorydns to hickory-dns for all other org references

* fix Notices of Trust-DNS to Hickory in each Readme
2023-10-13 18:39:28 -07:00
Benjamin Fry
dac1009503 remove notices of move to Hickory since this is already Hickory. 2023-10-13 19:26:06 -04:00
Benjamin Fry
65c5327ef6 Prepare 0.23.1 (#2056)
* update versions to 0.23.1

* update readmes for forward reference to 0.24 and Hickory DNS
2023-10-13 19:26:06 -04:00
Carlos López
c9cc5c9dd0 proto/rr: do not deserialize ClientSubnets with invalid prefixes
When serializing a ClientSubnet, if the source prefix is larger than
the address itself, we return an error. However, when deserializing
the same type we will happily take an invalid prefix. Fix this
consistency issue by rejecting invalid prefixes during
deserialization.
2023-10-12 11:53:58 +02:00
Keele
45bd92f4ac Fixes caching bug when CNAME leads to negative response 2023-10-07 12:58:15 -07:00
Benjamin Fry
c9a2ce42cb cleanliness updates for rustc 1.73 2023-10-06 14:57:10 -07:00
daxpedda
a846914b11 Parallelize concurrent requests 2023-10-06 09:12:32 -07:00
daxpedda
09a12da340 Document ALPN insertion behavior 2023-10-06 09:12:32 -07:00
daxpedda
f10faa3516 Rename HTTPS implementation to H2 2023-10-06 09:12:32 -07:00
daxpedda
ebb098de38 Remove incorrect warning in HTTP/3 stream handling 2023-10-06 09:12:32 -07:00
daxpedda
52194bf88c Remove unnecessary whitespace 2023-10-06 09:12:32 -07:00
daxpedda
9009792d05 Recursor implementation 2023-10-06 09:12:32 -07:00
daxpedda
f52ff659b2 Server implementation 2023-10-06 09:12:32 -07:00
daxpedda
12a73cd6e0 Resolver implementation 2023-10-06 09:12:32 -07:00
dAxpeDDa
c2fefc9421 Proto server implementation 2023-10-06 09:12:32 -07:00
dAxpeDDa
e34770c113 Proto client implementation 2023-10-06 09:12:32 -07:00
小明
7c78e740ef Optimized shutdown_gracefully() (#2041) 2023-10-05 10:00:11 +02:00
Dirkjan Ochtman
3268444793 Use consistent error type for read_system_conf() 2023-10-04 12:41:28 -07:00
Dirkjan Ochtman
ee530bf749 proto: make the lexer an implementation detail of the parser 2023-09-29 09:41:01 -07:00
Dirkjan Ochtman
77e06525c1 proto: handle includes in the parser 2023-09-29 09:41:01 -07:00
Dirkjan Ochtman
4b334aee36 proto: store state in Parser 2023-09-29 09:41:01 -07:00
Dirkjan Ochtman
fa879e1810 proto: make sure a Parser is used only once 2023-09-29 09:41:01 -07:00
daxpedda
dc0d800967 Fix DoQ default configuration 2023-09-29 12:48:09 +02:00
Yaroslav Rosomakho
615c5b4eae Spawn data processing in a separate tokio task to avoid deadlock if the Data frame is not yet received. 2023-09-26 13:30:15 -07:00
Dirkjan Ochtman
871e1d4639 Bump MSRV to 1.67 (for time) 2023-09-26 08:28:39 -07:00
Dirkjan Ochtman
1fef1e888f Avoid deprecated rustls API 2023-09-26 08:28:39 -07:00
Dirkjan Ochtman
72d398eea6 server: switch to basic-toml 2023-09-26 08:28:39 -07:00
Dirkjan Ochtman
10d2ffcb04 Clean up unused dependencies 2023-09-26 08:28:39 -07:00
Dirkjan Ochtman
2e1c67c2f5 server: make TOML dependency optional 2023-09-26 08:28:39 -07:00
Dirkjan Ochtman
5ba8afaf5f server: simplify Config TOML API 2023-09-26 08:28:39 -07:00
Benjamin Fry
90edda6b05 cleanup infallible DNSClass usage 2023-09-20 08:08:50 -07:00
Benjamin Fry
aa9ebb729e track the RecordType on RData::Unknown instead of u16 2023-09-20 08:08:50 -07:00
Benjamin Fry
c8a063120c make DNSClass parsing infallible 2023-09-20 08:08:50 -07:00
Benjamin Fry
da2135493a add awkward deserialization of message test 2023-09-20 08:08:50 -07:00
Benjamin Fry
970614e0a9 move Message tests into inner module 2023-09-20 08:08:50 -07:00
daxpedda
a6a7b2c9ba Address review 2023-09-19 16:31:33 -07:00
daxpedda
cf26eb52db Remove Copy from ResolverOpts 2023-09-19 16:31:33 -07:00
Logan Praneis
64280f475e fix: Prevent task reaping from blocking
Previously, the `reap_tasks` function could cause a tokio task to spinloop, preventing it from being cancelled.

This is because `FutureExt::now_or_never` returns an Option<T> where T is the inner future's resolution type.
If `join_set.join_next()` returned None, indicating there are no longer tasks to join, the `FutureExt::now_or_never` would return `Some(None)`.

However, the `is_some()` spinloop in this function would see the `Some(None)` and busy loop calling `FutureExt::now_or_never`.
This causes the tokio task to fail to be cancelled properly as it never yields to the executor.

The fix here is to use `Option::flatten` to transform the nested Option.
Now, the call to `reap_tasks` will only loop when the inner `join_set.join_next` returns `Some(..)`, indicating that a task is already complete.
When there are no tasks complete, or when the `JoinSet` is empty and returns `None`, the `reap_tasks` function will immediately yield.
2023-09-15 12:29:25 +02:00
Yuwei Ba
329c316008 Update crates/proto/src/xfer/dnssec_dns_handle.rs 2023-09-07 14:41:42 +02:00
Yuwei B
2aba76dc17 cargo fix 2023-09-07 14:41:42 +02:00
Yuwei B
1df7537192 make it no mut 2023-09-07 14:41:42 +02:00
Basileus
fe7bd363a7 Forward serde-config feature to the proto crate 2023-09-06 07:16:03 +02:00
daxpedda
8e38497142 Fix CI 2023-08-31 14:26:39 -07:00
daxpedda
262c1eb2b0 Use required-features for examples 2023-08-31 14:26:39 -07:00
daxpedda
588875ad48 Fold error into DnsExchangeConnect Future 2023-08-31 14:26:39 -07:00
dAxpeDDa
0515bf54a2 Add webpki-roots and native-certs features 2023-08-31 14:26:39 -07:00
daxpedda
3436a36244 Remove unused rustls-webpki dependency 2023-08-31 14:26:39 -07:00
yaotthaha
06fdd603a7 server: fix rustls server config error 2023-08-31 10:10:48 -07:00
yaotthaha
47e8a78dc0 server: add register with rustls server config 2023-08-31 10:10:48 -07:00