]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
auth lmdb: implement alsoNotifies, fixes #12256 12266/head
authorPeter van Dijk <peter.van.dijk@powerdns.com>
Mon, 5 Dec 2022 12:26:36 +0000 (13:26 +0100)
committerPeter van Dijk <peter.van.dijk@powerdns.com>
Mon, 5 Dec 2022 13:30:08 +0000 (14:30 +0100)
(cherry picked from commit b0e178a7fae71dca241f08b4faa861130a150a76)

modules/lmdbbackend/lmdbbackend.cc
modules/lmdbbackend/lmdbbackend.hh

index 797aab3866b6a0f20ab83b220a919f6e70b2987d..64e608dd59c23c714a2736bda9ba75749840e1d7 100644 (file)
@@ -1862,6 +1862,13 @@ bool LMDBBackend::getTSIGKeys(std::vector<struct TSIGKey>& keys)
   return true;
 }
 
+void LMDBBackend::alsoNotifies(const DNSName& domain, set<string>* ips)
+{
+  std::vector<std::string> meta;
+  getDomainMetadata(domain, "ALSO-NOTIFY", meta);
+  ips->insert(meta.begin(), meta.end());
+}
+
 class LMDBFactory : public BackendFactory
 {
 public:
index c1d29a864f88ea72fa1830248413245708b542e2..e82267ffdf71d56663e8c61a17263e182e29e007 100644 (file)
@@ -113,6 +113,7 @@ public:
     }
     return false;
   }
+  void alsoNotifies(const DNSName& domain, set<string>* ips) override;
 
   bool setDomainMetadata(const DNSName& name, const std::string& kind, const std::vector<std::string>& meta) override;
   bool setAccount(const DNSName& domain, const std::string& account) override;