]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
auth lmdb: implement alsoNotifies, fixes #12256 12267/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:22:51 +0000 (14:22 +0100)
(cherry picked from commit b0e178a7fae71dca241f08b4faa861130a150a76)

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

index 62d4e29e29bf8c54b55cd16b25e1e70fa81b8013..227a3b9b64fbea7f782b84a31f0d2558561feb20 100644 (file)
@@ -1770,6 +1770,13 @@ bool LMDBBackend::getTSIGKeys(std::vector<struct TSIGKey>& keys)
   return false;
 }
 
+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 99244a9ef86f626ed5e5dede5f1b9e6a8bc63573..2279595e7a940b62a21d8bb5876b8bb541f1ec28 100644 (file)
@@ -101,6 +101,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;
   void setStale(uint32_t domain_id) override;