From bc084a31ad2f82346761aa33d29aae19010ec5f8 Mon Sep 17 00:00:00 2001 From: Remi Gacogne Date: Fri, 6 Jul 2018 14:26:36 +0200 Subject: [PATCH] dnsdist: Implement NoneAction() --- pdns/dnsdist-lua-actions.cc | 16 ++++++++++++++++ regression-tests.dnsdist/test_Advanced.py | 1 + 2 files changed, 17 insertions(+) diff --git a/pdns/dnsdist-lua-actions.cc b/pdns/dnsdist-lua-actions.cc index 7df6aa8df..ae4d53461 100644 --- a/pdns/dnsdist-lua-actions.cc +++ b/pdns/dnsdist-lua-actions.cc @@ -57,6 +57,18 @@ public: } }; +class NoneAction : public DNSAction +{ +public: + DNSAction::Action operator()(DNSQuestion* dq, string* ruleresult) const override + { + return Action::None; + } + string toString() const override + { + return "no op"; + } +}; class QPSAction : public DNSAction { @@ -1061,6 +1073,10 @@ void setupLuaActions() return std::shared_ptr(new AllowAction); }); + g_lua.writeFunction("NoneAction", []() { + return std::shared_ptr(new NoneAction); + }); + g_lua.writeFunction("DelayAction", [](int msec) { return std::shared_ptr(new DelayAction(msec)); }); diff --git a/regression-tests.dnsdist/test_Advanced.py b/regression-tests.dnsdist/test_Advanced.py index c4ab74103..aac6b4742 100644 --- a/regression-tests.dnsdist/test_Advanced.py +++ b/regression-tests.dnsdist/test_Advanced.py @@ -10,6 +10,7 @@ from dnsdisttests import DNSDistTest class TestAdvancedAllow(DNSDistTest): _config_template = """ + addAction(AllRule(), NoneAction()) addAction(makeRule("allowed.advanced.tests.powerdns.com."), AllowAction()) addAction(AllRule(), DropAction()) newServer{address="127.0.0.1:%s"} -- 2.40.0