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`
* 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
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