From 12eeb01d86245ec2f16dae9e1495c38abaed17e3 Mon Sep 17 00:00:00 2001 From: Pieter Lexis Date: Wed, 14 Jan 2026 12:43:52 +0100 Subject: [PATCH] feat(dnsdist): Add `getServerID` function --- pdns/dnsdistdist/dnsdist-console-completion.cc | 1 + pdns/dnsdistdist/dnsdist-lua-bindings.cc | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/pdns/dnsdistdist/dnsdist-console-completion.cc b/pdns/dnsdistdist/dnsdist-console-completion.cc index 2424808e10..8cd9d4853c 100644 --- a/pdns/dnsdistdist/dnsdist-console-completion.cc +++ b/pdns/dnsdistdist/dnsdist-console-completion.cc @@ -382,6 +382,7 @@ static std::vector s_consoleKeywor {"chashed", false, "", "Consistent hashed ('sticky') distribution over available servers, also based on the server 'weight' parameter"}, {"wrandom", false, "", "Weighted random over available servers, based on the server 'weight' parameter"}, {"setServerID", true, "name", "Set the internal Server ID to this value"}, + {"getServerID", true, "", "Get the internal Server ID as a string"}, }; #if defined(HAVE_LIBEDIT) diff --git a/pdns/dnsdistdist/dnsdist-lua-bindings.cc b/pdns/dnsdistdist/dnsdist-lua-bindings.cc index 279135f4b5..11dab9752d 100644 --- a/pdns/dnsdistdist/dnsdist-lua-bindings.cc +++ b/pdns/dnsdistdist/dnsdist-lua-bindings.cc @@ -21,6 +21,7 @@ */ #include "bpf-filter.hh" #include "config.h" +#include "dnsdist-configuration.hh" #include "dnsdist.hh" #include "dnsdist-async.hh" #include "dnsdist-dynblocks.hh" @@ -1102,6 +1103,10 @@ void setupLuaBindings(LuaContext& luaCtx, bool client, bool configCheck) newThread.detach(); }); + luaCtx.writeFunction("getServerID", []() -> std::string { + return dnsdist::configuration::getCurrentRuntimeConfiguration().d_server_id; + }); + luaCtx.writeFunction("refreshRuntimeConfiguration", []() { dnsdist::configuration::refreshLocalRuntimeConfiguration(); }); -- 2.47.3