From 1ae16e707a6cb1c80d611b72e9e4599707332645 Mon Sep 17 00:00:00 2001 From: Remi Gacogne Date: Tue, 22 Jul 2025 11:19:19 +0200 Subject: [PATCH] dnsdist: Return early when a rule chain is empty Signed-off-by: Remi Gacogne --- pdns/dnsdistdist/dnsdist.cc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pdns/dnsdistdist/dnsdist.cc b/pdns/dnsdistdist/dnsdist.cc index e858d66ca..35e489979 100644 --- a/pdns/dnsdistdist/dnsdist.cc +++ b/pdns/dnsdistdist/dnsdist.cc @@ -443,6 +443,10 @@ static bool encryptResponse(PacketBuffer& response, size_t maximumSize, bool tcp bool applyRulesToResponse(const std::vector& respRuleActions, DNSResponse& dnsResponse) { + if (respRuleActions.empty()) { + return true; + } + DNSResponseAction::Action action = DNSResponseAction::Action::None; std::string ruleresult; for (const auto& rrule : respRuleActions) { @@ -983,6 +987,10 @@ bool processRulesResult(const DNSAction::Action& action, DNSQuestion& dnsQuestio static bool applyRulesChainToQuery(const std::vector& rules, DNSQuestion& dnsQuestion) { + if (rules.empty()) { + return true; + } + DNSAction::Action action = DNSAction::Action::None; string ruleresult; bool drop = false; -- 2.47.2