diff --git a/packages/conformance-tests/src/resolver/dnssec/rfc4035/section_3/section_3_2.rs b/packages/conformance-tests/src/resolver/dnssec/rfc4035/section_3/section_3_2.rs index f7c0f0df..7d2bd623 100644 --- a/packages/conformance-tests/src/resolver/dnssec/rfc4035/section_3/section_3_2.rs +++ b/packages/conformance-tests/src/resolver/dnssec/rfc4035/section_3/section_3_2.rs @@ -1,3 +1,5 @@ +mod section_3_2_2; + use dns_test::{ client::{Client, DigSettings}, name_server::NameServer, diff --git a/packages/conformance-tests/src/resolver/dnssec/rfc4035/section_3/section_3_2/section_3_2_2.rs b/packages/conformance-tests/src/resolver/dnssec/rfc4035/section_3/section_3_2/section_3_2_2.rs new file mode 100644 index 00000000..de88b4e4 --- /dev/null +++ b/packages/conformance-tests/src/resolver/dnssec/rfc4035/section_3/section_3_2/section_3_2_2.rs @@ -0,0 +1,23 @@ +use dns_test::{ + client::{Client, DigSettings}, + name_server::NameServer, + record::RecordType, + zone_file::Root, + Network, Resolver, Result, FQDN, +}; + +#[test] +fn copies_cd_bit_from_query_to_response() -> Result<()> { + let network = &Network::new()?; + let ns = NameServer::new(&dns_test::PEER, FQDN::ROOT, network)?.start()?; + let resolver = Resolver::new(network, Root::new(ns.fqdn().clone(), ns.ipv4_addr())) + .start(&dns_test::SUBJECT)?; + + let client = Client::new(network)?; + let settings = *DigSettings::default().checking_disabled().recurse(); + let ans = client.dig(settings, resolver.ipv4_addr(), RecordType::SOA, &FQDN::ROOT)?; + + assert!(ans.flags.checking_disabled); + + Ok(()) +}