]> granicus.if.org Git - pdns/commitdiff
correct overloading of feedRecord
authorChristian Hofstaedtler <christian@hofstaedtler.name>
Sun, 20 Oct 2013 22:55:16 +0000 (00:55 +0200)
committerChristian Hofstaedtler <christian@hofstaedtler.name>
Tue, 5 Nov 2013 09:04:16 +0000 (10:04 +0100)
G++ 4.8 does not warn about this, but clearly an overload with the
wrong signature will not work when called through a base class pointer.
(clang++ 3.3 produces a diagnostic.)

modules/luabackend/luabackend.hh
modules/luabackend/slave.cc
modules/opendbxbackend/odbxbackend.cc
modules/opendbxbackend/odbxbackend.hh
modules/oraclebackend/oraclebackend.cc
modules/oraclebackend/oraclebackend.hh
pdns/docs/pdns.xml

index 204a7b3f3e1ad7f78e54e4e0ee124768450de419..f9eb31c4fd28217f8ef33141c4b5ad8175d2404f 100644 (file)
@@ -56,7 +56,7 @@ public:
     bool startTransaction(const string &qname, int id);
     bool commitTransaction();
     bool abortTransaction();
-    bool feedRecord(const DNSResourceRecord &rr);
+    bool feedRecord(const DNSResourceRecord &rr, string *ordername=0);
 
 
 //  SUPERMASTER BACKEND
index e967a9b6d3c3843b81714ed15139007b7ed901f3..729286cb015bfcf43c4935263e3051508622d57b 100644 (file)
@@ -26,7 +26,7 @@
    virtual bool startTransaction(const string &qname, int id);
    virtual bool commitTransaction();
    virtual bool abortTransaction();
-   virtual bool feedRecord(const DNSResourceRecord &rr);
+   virtual bool feedRecord(const DNSResourceRecord &rr, string* ordername=0);
 
    virtual bool getDomainInfo(const string &domain, DomainInfo &di);
    virtual bool isMaster(const string &name, const string &ip);
@@ -129,7 +129,7 @@ bool LUABackend::abortTransaction() {
     return ok;
 }
 
-bool LUABackend::feedRecord(const DNSResourceRecord &rr) {
+bool LUABackend::feedRecord(const DNSResourceRecord &rr, string *ordername) {
 
     if (f_lua_feedrecord == 0)
         return false;
index a4fd665ec4930b108dff3b578c2dcce9f88afe94..bf354927d4b2d758634c1b37e5b490618581e19b 100644 (file)
@@ -645,7 +645,7 @@ bool OdbxBackend::createSlaveDomain( const string& ip, const string& domain, con
 
 
 
-bool OdbxBackend::feedRecord( const DNSResourceRecord& rr )
+bool OdbxBackend::feedRecord( const DNSResourceRecord& rr, string *ordername )
 {
         try
         {
index 7e826a2d3f9cb96968e150fb3853142c1ba0f693..a4b3649f62cd2db9338fe2fec50e19f040b2f84e 100644 (file)
@@ -86,7 +86,7 @@ public:
 
         bool isMaster( const string& domain, const string& ip );
         bool getDomainInfo( const string& domain, DomainInfo& di );
-        bool feedRecord( const DNSResourceRecord& rr );
+        bool feedRecord( const DNSResourceRecord& rr, string *ordername=0 );
         bool createSlaveDomain( const string& ip, const string& domain, const string& account );
         bool superMasterBackend( const string& ip, const string& domain, const vector<DNSResourceRecord>& nsset, string* account, DNSBackend** ddb );
 
index c216cdff3053a546e7f42441bf8841e197091a08..bf6dbd41ce3aa7f4cf7491dc4065b27e9f8d47b8 100644 (file)
@@ -1058,7 +1058,7 @@ OracleBackend::startTransaction (const string &domain, int zoneId)
 }
 
 bool
-OracleBackend::feedRecord (const DNSResourceRecord &rr)
+OracleBackend::feedRecord (const DNSResourceRecord &rr, string *ordername)
 {
   sword rc;
   OCIStmt *stmt;
index 064fc85c4c32216512a99397fde813f1d3a16dac..95aa90811c7fa370fe7a093378d7563ff77ac9f4 100644 (file)
@@ -69,7 +69,7 @@ public:
   void setNotified(uint32_t zoneId, uint32_t serial);
   bool list(const string &domain, int zoneId);
   bool startTransaction(const string &domain, int zoneId);
-  bool feedRecord(const DNSResourceRecord &rr);
+  bool feedRecord(const DNSResourceRecord &rr, string* ordername);
   bool commitTransaction();
   bool abortTransaction();
   bool superMasterBackend(const string &ip, const string &domain,
index fb2cada0944cbb176e2bba0b3a799d02c881ffa2..ab0ce7dbd44f4c8bec8a4d9d524534633a82f641 100755 (executable)
@@ -22386,7 +22386,7 @@ static RandomLoader randomloader;
           virtual bool startTransaction(const string &amp;qname, int id);
           virtual bool commitTransaction();
           virtual bool abortTransaction();
-          virtual bool feedRecord(const DNSResourceRecord &amp;rr);
+          virtual bool feedRecord(const DNSResourceRecord &amp;rr, string *ordername=0);
           virtual void getUnfreshSlaveInfos(vector&lt;DomainInfo&gt;* domains);
           virtual void setFresh(uint32_t id);
            /* ... */
@@ -22467,7 +22467,7 @@ static RandomLoader randomloader;
            </listitem>
          </varlistentry>
          <varlistentry>
-           <term>bool feedRecord(const DNSResourceRecord &amp;rr)</term>
+           <term>bool feedRecord(const DNSResourceRecord &amp;rr, string *ordername)</term>
            <listitem>
              <para>
                Insert this record.
@@ -22613,7 +22613,7 @@ public:
   virtual bool startTransaction(const string &amp;qname, int id);
   virtual bool commitTransaction();
   virtual bool abortTransaction();
-  virtual bool feedRecord(const DNSResourceRecord &amp;rr);
+  virtual bool feedRecord(const DNSResourceRecord &amp;rr, string *ordername);
   virtual bool replaceRRSet(uint32_t domain_id, const string&amp; qname, const QType&amp; qt, const vector&lt;DNSResourceRecord&gt;&amp; rrset)
   virtual bool listSubZone(const string &amp;zone, int domain_id);
   /* ... */
@@ -22647,7 +22647,7 @@ public:
            </listitem>
          </varlistentry>
           <varlistentry>
-           <term>virtual bool feedRecord(const DNSResourceRecord &amp;rr);</term>
+           <term>virtual bool feedRecord(const DNSResourceRecord &amp;rr, string *ordername);</term>
            <listitem>
              <para>See <xref linkend="rw-backends" />. Please keep in mind that the zone is not empty because <function>startTransaction()</function> was called different.</para>
            </listitem>