commit 2cf560f78905b6f035e5eb06dfeae712d2346370
parent 769cb642185672c6028e5169628823cbdffcf718
Author: Oliver Lowe <o@olowe.co>
Date: Sat, 18 Dec 2021 18:22:10 +1100
cmd/recursor: test resolving a wrongly delegated domain
Diffstat:
1 file changed, 27 insertions(+), 0 deletions(-)
diff --git a/cmd/recursor/recursor_test.go b/cmd/recursor/recursor_test.go
@@ -117,3 +117,30 @@ func TestNXDomain(t *testing.T) {
}
t.Logf("wanted: %+v got %+v", wanted, got)
}
+
+func TestRefused(t *testing.T) {
+ var wanted, got dnsmessage.Message
+ var err error
+ wanted, err = dns.Exchange(tquery, quad9)
+ if err != nil {
+ fmt.Fprintf(os.Stderr, "skipping %s: %v\n", t.Name(), err)
+ t.Skip("query internet DNS:", err)
+ }
+ q := tquery
+ q.Questions[0].Name = dnsmessage.MustNewName("kjyq.com.")
+ wanted, err = dns.Exchange(q, "8.8.4.4:domain")
+ if err != nil {
+ t.Fatal(err)
+ }
+ // try twice: first for fresh response, second for cached response
+ for i := 0; i <= 1; i++ {
+ got, err = dns.Exchange(q, testAddr)
+ if err != nil {
+ t.Fatal(err)
+ }
+ if wanted.Header != got.Header {
+ t.Error("mismatched headers")
+ }
+ }
+ t.Logf("wanted: %+v got %+v", wanted, got)
+}