From 4cf2b5983bf5a09ce07a23ae001747b6a115cc5b Mon Sep 17 00:00:00 2001 From: Peter Cai Date: Sun, 4 Apr 2021 13:29:11 +0800 Subject: [PATCH] server: set NXDOMAIN properly --- src/server.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/server.rs b/src/server.rs index 953365b..1eb4ffa 100644 --- a/src/server.rs +++ b/src/server.rs @@ -1,5 +1,6 @@ use crate::client::*; use async_static::async_static; +use domain::base::iana::Rcode; use domain::base::message::Message; use domain::base::message_builder::MessageBuilder; use domain::base::question::Question; @@ -196,6 +197,10 @@ impl Server { header.set_qr(true); // Query Response = true header.set_aa(false); // Not Authoritative header.set_ra(true); // Recursion Available + if records.len() == 0 { + // Set NXDOMAIN if no record is found + header.set_rcode(Rcode::NXDomain); + } // Set up the answer section let mut answer_builder = message_builder.answer();