From: Remi Gacogne Date: Fri, 6 Jul 2018 12:26:36 +0000 (+0200) Subject: dnsdist: Implement NoneAction() X-Git-Tag: dnsdist-1.3.1~8^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F6775%2Fhead;p=thirdparty%2Fpdns.git dnsdist: Implement NoneAction() --- diff --git a/pdns/dnsdist-lua-actions.cc b/pdns/dnsdist-lua-actions.cc index 7df6aa8df6..ae4d534615 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 c4ab74103d..aac6b47423 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"}