]> git.ipfire.org Git - thirdparty/pdns.git/blobdiff - pdns/ueberbackend.hh
dnsdist: print stats from expungeByName
[thirdparty/pdns.git] / pdns / ueberbackend.hh
index 37ab30d8849003ef28f628d7e9f7b1f9120d22ed..658c43590fe8fc730d6eca4d5834ba984d6f250a 100644 (file)
@@ -61,6 +61,7 @@ public:
   static pthread_mutex_t instances_lock;
 
   static bool loadmodule(const string &name);
+  static bool loadModules(const vector<string>& modules, const string& path);
 
   static void go(void);
 
@@ -98,15 +99,17 @@ public:
 
   void lookup(const QType &, const DNSName &qdomain, DNSPacket *pkt_p=0,  int zoneId=-1);
 
-  bool getAuth(DNSPacket *p, SOAData *sd, const DNSName &target);
-  bool getSOA(const DNSName &domain, SOAData &sd, DNSPacket *p=0);
-  bool getSOAUncached(const DNSName &domain, SOAData &sd, DNSPacket *p=0);  // same, but ignores cache
+  /** Determines if we are authoritative for a zone, and at what level */
+  bool getAuth(const DNSName &target, const QType &qtype, SOAData* sd, bool cachedOk=true);
+  bool getSOA(const DNSName &domain, SOAData &sd);
+  /** Load SOA info from backends, ignoring the cache.*/
+  bool getSOAUncached(const DNSName &domain, SOAData &sd);
   bool get(DNSZoneRecord &r);
   void getAllDomains(vector<DomainInfo> *domains, bool include_disabled=false);
 
   void getUnfreshSlaveInfos(vector<DomainInfo>* domains);
   void getUpdatedMasters(vector<DomainInfo>* domains);
-  bool getDomainInfo(const DNSName &domain, DomainInfo &di);
+  bool getDomainInfo(const DNSName &domain, DomainInfo &di, bool getSerial=true);
   bool createDomain(const DNSName &domain);
   
   bool doesDNSSEC();