Commit Graph

348 Commits

Author SHA1 Message Date
Jorge Aparicio
ed192864f3 refactor the Resource data structure
the `rr_type` field has been removed. this eliminates the possibility of
setting `rdata` to a type that does not match `rr_type`. as a
consequence, the `set_record_type` has also been removed

the `record_type` of the `Resource` is now derived from what's stored in
the `rdata` field

`rdata` is no longer an `Option`. `rdata = None` was being used to
represent update records. an `Update` variant has been added to the
`RData` enum. this variant is used to represent update records, which
have RDLENGTH set to 0.

the `Resource::{default,new}` constructors have been removed. they felt
error prone as in most cases one wants to set the `rdata` and `name`
fields since they have no sensible defaults. all uses of those
constructors now use the pre-existing `from_rdata` constructor

the `Resource::with` constructor has also been removed. it was pretty
similar to `from_rdata` but initialized `rr_type` and not `rdata`. all
uses of `Record::with` has been changed to `from_rdata`
2024-06-10 20:00:48 -07:00
situ2001
eb79382a36 fix: update ip of example.com 2024-04-20 13:08:29 -07:00
Benjamin Fry
14f4f0a4b6 add a test for Secure records 2024-03-02 11:43:52 -05:00
Benjamin Fry
e2c82f6991 change internal usage from set_rr_type to set_record_type 2024-03-02 11:43:52 -05:00
Benjamin Fry
8154de2b89 fix cleanliness for 1.76 2024-02-11 12:41:03 -05:00
Benjamin Fry
456a306f3a fix typos in Access usage 2024-02-06 11:23:12 -05:00
Benjamin Fry
d6a927aba8 add deny networks config option and examples 2024-02-06 11:23:12 -05:00
Benjamin Fry
f141667a0b add config option for allow_networks 2024-02-06 11:23:12 -05:00
Marcus Butler
b414fe8d78 Recursor: make nameserver and record cache sizes configurable 2024-01-01 16:57:39 -05:00
Benjamin Fry
be4d16893f update certs 2023-12-04 09:11:53 -05:00
Benjamin Fry
d07ef69962 Remove generic Error from DnsHandle 2023-11-26 15:00:32 -05: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
c9a2ce42cb cleanliness updates for rustc 1.73 2023-10-06 14:57:10 -07:00
daxpedda
f10faa3516 Rename HTTPS implementation to H2 2023-10-06 09:12:32 -07:00
daxpedda
fabbefa3f2 Integration tests implementation 2023-10-06 09:12:32 -07:00
Dirkjan Ochtman
1fef1e888f Avoid deprecated rustls API 2023-09-26 08:28:39 -07:00
Dirkjan Ochtman
10d2ffcb04 Clean up unused dependencies 2023-09-26 08:28:39 -07:00
Benjamin Fry
704e9a8a0f update certs for server https/quic tests 2023-09-26 08:28:39 -07:00
daxpedda
cf26eb52db Remove Copy from ResolverOpts 2023-09-19 16:31:33 -07: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
daxpedda
8e38497142 Fix CI 2023-08-31 14:26:39 -07:00
Zhang Jingqiang
3f9a68c15e use new version of webpki 2023-08-02 08:03:33 +02:00
Nathan Mittler
578ce5a497 Adding graceful shutdown to server.
Fixes #1976.
2023-08-01 10:11:21 -07:00
Nathan Mittler
0a1306ba8f Fix truncation for UDP
This fixes a couple of issues for UDP on both the client and server:

* Previously, the UdpClientStream was using a fixed `2048` for the size of the receive buffer. This can cause problems on interfaces with a larger MTU. #1096 adjusted this value on the server side to 4096 (the maximum as recommended by RFC6891). This PR sets a constant that is shared by the UDP client and server. Additionally, the client uses EDNS in the request to further trim down the buffer size.
* The Server previously was not setting a maximum for the `BinEncoder`, which defaults to `u16::MAX` (i.e. effectively no truncation for UDP). This PR sets an appropriate maximum for the `BinEncoder` based on the response EDNS and protocol being used.

Fixes: #1973
2023-06-27 10:00:45 -07:00
XOR-op
293bd93783 test(WIP): fix integration test 2023-06-06 12:12:09 -07:00
XOR-op
b58a8585a6 chore: rename {Abstract} back 2023-06-06 12:12:09 -07:00
Benjamin Fry
4d3b5a228b
compatibility crate should not publish 2023-06-02 15:04:29 -07:00
Benjamin Fry
2d352ae66a fixups for Rust 1.70 2023-06-01 17:39:08 -07:00
Dirkjan Ochtman
217974c054 server: drop response messages 2023-06-01 17:39:08 -07:00
dAxpeDDa
a10b0b1a64 Replace lazy_static with once_cell 2023-05-24 21:52:09 +02:00
Benjamin Fry
c455bcd056 use workspace for all common package details 2023-05-10 22:55:38 +02:00
Benjamin Fry
3a099742fa cleanup workspace features 2023-05-10 22:55:38 +02:00
Benjamin Fry
f7383806a8 update version to 0.23-alpha.1 2023-05-10 22:55:38 +02:00
Benjamin Fry
24f678cdf5 fully combin filter and filter_map into single operation 2023-03-24 08:47:59 -07:00
Benjamin Fry
4a1c4fe2d1 use new Types for A and AAAA record types 2023-03-24 08:47:59 -07:00
Benjamin Fry
6652fa561d Change RecordData::try_borrow to return Option 2023-03-24 08:47:59 -07:00
Benjamin Fry
fbead51221 cleanup uses and copyrights 2023-03-24 08:47:59 -07:00
Benjamin Fry
9e56c123c2 fix RRSIG and SIG usage with new RecordData types 2023-03-24 08:47:59 -07:00
Benjamin Fry
0f21992811 implement RecordData for most DNSSEC RData types 2023-03-24 08:47:59 -07:00
Benjamin Fry
3919e66d9f give all Name wrapped RecordTypes new type wrappers 2023-03-24 08:47:59 -07:00
Benjamin Fry
f92b808612 Make Record carry type for internal RecordData 2023-03-24 08:47:59 -07:00
YISH
a0a4acb7cf Update MSRV to 1.64 2023-03-20 11:36:21 -07:00
YISH
590b47a3f2 Introduce central crate version management 2023-03-20 11:36:21 -07:00
Dirkjan Ochtman
72f2a07c90 Remove unnecessary imports 2023-03-20 08:49:12 -07:00
Dirkjan Ochtman
343eeb806e Upgrade to 2021 edition 2023-03-20 08:49:12 -07:00
YISH
404b2b9ddd Implement ECS reading and writing 2023-03-19 10:27:38 -07:00
XOR-op
560189c435 fix: remove GAT 2023-03-04 11:03:13 -08:00
XOR-op
2d94faf1ba change interface 2023-03-04 11:03:13 -08:00
XOR-op
3410e9e95a fix compile errors 2023-03-04 11:03:13 -08:00