From 4fdf04c4943f608f4754edd4863c44b2cee7d09a Mon Sep 17 00:00:00 2001 From: Remi Gacogne Date: Tue, 19 Mar 2024 14:44:16 +0100 Subject: [PATCH] dnsdist: Improve consistency of the Lua types used in our configuration --- pdns/dnsdistdist/dnsdist-lua-inspection.cc | 2 +- pdns/dnsdistdist/dnsdist-lua-rules.cc | 6 +++--- pdns/dnsdistdist/dnsdist-lua.cc | 12 ++++++------ 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/pdns/dnsdistdist/dnsdist-lua-inspection.cc b/pdns/dnsdistdist/dnsdist-lua-inspection.cc index 245e68d8c5..d9ac137f45 100644 --- a/pdns/dnsdistdist/dnsdist-lua-inspection.cc +++ b/pdns/dnsdistdist/dnsdist-lua-inspection.cc @@ -495,7 +495,7 @@ void setupLuaInspection(LuaContext& luaCtx) } totalEntries += rings.back().size(); } - vector>> ret; + vector>> ret; ret.reserve(totalEntries); for (const auto& ring : rings) { for (const auto& entry : ring) { diff --git a/pdns/dnsdistdist/dnsdist-lua-rules.cc b/pdns/dnsdistdist/dnsdist-lua-rules.cc index a4d7adbcfd..2abe6f1359 100644 --- a/pdns/dnsdistdist/dnsdist-lua-rules.cc +++ b/pdns/dnsdistdist/dnsdist-lua-rules.cc @@ -262,7 +262,7 @@ static LuaArray toLuaArray(std::vector&& rules) } template -static boost::optional getRuleFromSelector(const std::vector& rules, const boost::variant& selector) +static boost::optional getRuleFromSelector(const std::vector& rules, const boost::variant& selector) { if (const auto* str = boost::get(&selector)) { /* let's see if this a UUID */ @@ -283,7 +283,7 @@ static boost::optional getRuleFromSelector(const std::vector& rules, const } } } - else if (const auto* pos = boost::get(&selector)) { + else if (const auto* pos = boost::get(&selector)) { /* this will throw a std::out_of_range exception if the supplied position is out of bounds, this is fine */ return rules.at(*pos); @@ -346,7 +346,7 @@ void setupLuaRules(LuaContext& luaCtx) luaCtx.writeFunction("mv" + chain.prefix + "ResponseRule", [&chain](unsigned int from, unsigned int dest) { mvRule(&chain.holder, from, dest); }); - luaCtx.writeFunction("get" + chain.prefix + "ResponseRule", [&chain](const boost::variant& selector) -> boost::optional { + luaCtx.writeFunction("get" + chain.prefix + "ResponseRule", [&chain](const boost::variant& selector) -> boost::optional { auto rules = chain.holder.getLocal(); return getRuleFromSelector(*rules, selector); }); diff --git a/pdns/dnsdistdist/dnsdist-lua.cc b/pdns/dnsdistdist/dnsdist-lua.cc index 2e3a93c5a7..f139efcf03 100644 --- a/pdns/dnsdistdist/dnsdist-lua.cc +++ b/pdns/dnsdistdist/dnsdist-lua.cc @@ -1042,7 +1042,7 @@ static void setupLuaConfig(LuaContext& luaCtx, bool client, bool configCheck) return *poolServers; }); - luaCtx.writeFunction("getServer", [client](boost::variant identifier) { + luaCtx.writeFunction("getServer", [client](boost::variant identifier) { if (client) { return std::make_shared(ComboAddress()); } @@ -1055,7 +1055,7 @@ static void setupLuaConfig(LuaContext& luaCtx, bool client, bool configCheck) } } } - else if (auto* pos = boost::get(&identifier)) { + else if (auto* pos = boost::get(&identifier)) { return states.at(*pos); } @@ -2466,7 +2466,7 @@ static void setupLuaConfig(LuaContext& luaCtx, bool client, bool configCheck) return result; }); - luaCtx.writeFunction("addDOHLocal", [client](const std::string& addr, boost::optional, LuaArray, LuaArray>>> certFiles, boost::optional>> keyFiles, boost::optional> urls, boost::optional vars) { + luaCtx.writeFunction("addDOHLocal", [client](const std::string& addr, boost::optional, LuaArray, LuaArray>>> certFiles, boost::optional> keyFiles, boost::optional> urls, boost::optional vars) { if (client) { return; } @@ -2632,7 +2632,7 @@ static void setupLuaConfig(LuaContext& luaCtx, bool client, bool configCheck) }); // NOLINTNEXTLINE(performance-unnecessary-value-param): somehow clang-tidy gets confused about the fact vars could be const while it cannot - luaCtx.writeFunction("addDOH3Local", [client](const std::string& addr, const boost::variant, LuaArray, LuaArray>>& certFiles, const boost::variant>& keyFiles, boost::optional vars) { + luaCtx.writeFunction("addDOH3Local", [client](const std::string& addr, const boost::variant, LuaArray, LuaArray>>& certFiles, const LuaTypeOrArrayOf& keyFiles, boost::optional vars) { if (client) { return; } @@ -2707,7 +2707,7 @@ static void setupLuaConfig(LuaContext& luaCtx, bool client, bool configCheck) }); // NOLINTNEXTLINE(performance-unnecessary-value-param): somehow clang-tidy gets confused about the fact vars could be const while it cannot - luaCtx.writeFunction("addDOQLocal", [client](const std::string& addr, const boost::variant, LuaArray, LuaArray>>& certFiles, const boost::variant>& keyFiles, boost::optional vars) { + luaCtx.writeFunction("addDOQLocal", [client](const std::string& addr, const boost::variant, LuaArray, LuaArray>>& certFiles, const LuaTypeOrArrayOf& keyFiles, boost::optional vars) { if (client) { return; } @@ -2991,7 +2991,7 @@ static void setupLuaConfig(LuaContext& luaCtx, bool client, bool configCheck) } }); - luaCtx.registerFunction::*)(boost::variant, LuaArray, LuaArray>> certFiles, boost::variant> keyFiles)>("loadNewCertificatesAndKeys", [](const std::shared_ptr& frontend, const boost::variant, LuaArray, LuaArray>>& certFiles, const boost::variant>& keyFiles) { + luaCtx.registerFunction::*)(boost::variant, LuaArray, LuaArray>> certFiles, LuaTypeOrArrayOf keyFiles)>("loadNewCertificatesAndKeys", [](const std::shared_ptr& frontend, const boost::variant, LuaArray, LuaArray>>& certFiles, const LuaTypeOrArrayOf& keyFiles) { #ifdef HAVE_DNS_OVER_HTTPS if (frontend != nullptr) { if (loadTLSCertificateAndKeys("DOHFrontend::loadNewCertificatesAndKeys", frontend->d_tlsContext.d_tlsConfig.d_certKeyPairs, certFiles, keyFiles)) { -- 2.47.2