]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
dnsdist: DownstreamState::getName() should return a ref, not a temp 8842/head
authorRemi Gacogne <remi.gacogne@powerdns.com>
Wed, 19 Feb 2020 09:46:05 +0000 (10:46 +0100)
committerRemi Gacogne <remi.gacogne@powerdns.com>
Wed, 19 Feb 2020 09:46:05 +0000 (10:46 +0100)
pdns/dnsdist-lua-bindings.cc
pdns/dnsdist.hh

index f86f79140d94e5cac5b86057238bb13e2c179442..4c26647b075d35e22b06467aa72f712f82973d17 100644 (file)
@@ -111,8 +111,8 @@ void setupLuaBindings(bool client)
       }
       s.setAuto();
     });
-  g_lua.registerFunction("getName", &DownstreamState::getName);
-  g_lua.registerFunction("getNameWithAddr", &DownstreamState::getNameWithAddr);
+  g_lua.registerFunction<std::string(DownstreamState::*)()>("getName", [](const DownstreamState& s) { return s.getName(); });
+  g_lua.registerFunction<std::string(DownstreamState::*)()>("getNameWithAddr", [](const DownstreamState& s) { return s.getNameWithAddr(); });
   g_lua.registerMember("upStatus", &DownstreamState::upStatus);
   g_lua.registerMember<int (DownstreamState::*)>("weight",
     [](const DownstreamState& s) -> int {return s.weight;},
index 99f85ee0c02c10e763fc5a069dc62b705d632d16..b78f5001765dd0b9ee1660b23481cfba430d0524 100644 (file)
@@ -851,10 +851,10 @@ struct DownstreamState
   void setUp() { availability = Availability::Up; }
   void setDown() { availability = Availability::Down; }
   void setAuto() { availability = Availability::Auto; }
-  string getName() const {
+  const string& getName() const {
     return name;
   }
-  string getNameWithAddr() const {
+  const string& getNameWithAddr() const {
     return nameWithAddr;
   }
   void setName(const std::string& newName)