]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
add disable-axfr-rectify config option
authorKees Monshouwer <mind04@monshouwer.org>
Thu, 17 Apr 2014 22:05:10 +0000 (00:05 +0200)
committermind04 <mind04@monshouwer.org>
Tue, 6 May 2014 15:36:04 +0000 (17:36 +0200)
pdns/common_startup.cc
pdns/docs/pdns.xml
pdns/pdns.conf-dist
pdns/tcpreceiver.cc
regression-tests/backends/bind-master
regression-tests/backends/gsql-common

index eb8cd0db2ab86a2cb4599a715eff59594bd60010..b8e144ef22492c9138f721df205eaf6c12d9caba 100644 (file)
@@ -107,6 +107,7 @@ void declareArguments()
   
   ::arg().setSwitch("slave","Act as a slave")="no";
   ::arg().setSwitch("master","Act as a master")="no";
+  ::arg().setSwitch("disable-axfr-rectify","Disable the rectify step during an outgoing AXFR. Only required for regression testing.")="no";
   ::arg().setSwitch("guardian","Run within a guardian process")="no";
   ::arg().setSwitch("send-root-referral","Send out old-fashioned root-referral instead of ServFail in case of no authority")="no";
   ::arg().setSwitch("prevent-self-notification","Don't send notifications to what we think is ourself")="yes";
index aeabf9a75b7782eab51d1888a8abbc1431ff758d..7b15a0552d8d456ceeda1b2720493f1bdffcbe1b 100644 (file)
@@ -16214,6 +16214,11 @@ To enable a Lua script for a particular slave zone, determine the domain_id for
            <listitem><para>
                Do not allow zone transfers. Before 2.9.10, this could be overridden by allow-axfr-ips.
              </para></listitem></varlistentry>
+         <varlistentry><term>disable-axfr-rectify=...</term>
+           <listitem><para>
+               Disable the rectify step during an outgoing AXFR. Only required for regression testing.
+               Default is no."/>.
+             </para></listitem></varlistentry>
          <varlistentry><term>disable-tcp=...</term>
            <listitem><para>
                Do not listen to TCP queries. Breaks RFC compliance.
index a41c136c2e58b8d80880396a67d702735df644ee..08c475835946e327a78102dd5bc5d2876fa29748 100644 (file)
 #
 # disable-axfr=no
 
+#################################
+# disable-axfr-rectify Disable the rectify step during an outgoing AXFR. Only required for regression testing.
+#
+# disable-axfr-rectify=no
+
 #################################
 # disable-tcp  Do not listen to TCP queries
 #
index 32481d28dc2d7432a27346058f0e94f1e19c7efa..5483db1f0ea0f54a46498fba35367e3caeecc16c 100644 (file)
@@ -667,7 +667,7 @@ int TCPNameserver::doAXFR(const string &target, shared_ptr<DNSPacket> q, int out
   }
 
 
-  const bool rectify = true; // TODO add config option
+  const bool rectify = !(presignedZone || ::arg().mustDo("disable-axfr-rectify"));
   set<string> qnames, nsset, terms;
   vector<DNSResourceRecord> rrs;
 
index f5a061309dbf487273d76a6a495516c555357fe5..172edc82bb9be4ab6ad42b783fe52b1f274c4685 100644 (file)
@@ -5,7 +5,7 @@ case $context in
                        --send-root-referral \
                        --allow-2136-from=127.0.0.0/8 --experimental-rfc2136=yes \
                        --cache-ttl=$cachettl --no-config --experimental-dname-processing \
-                       --bind-ignore-broken-records=yes &
+                       --bind-ignore-broken-records=yes --disable-axfr-rectify=yes  &
                skipreasons="nodnssec nodyndns nometa"
                bindwait
                ;;
@@ -52,7 +52,7 @@ case $context in
                        --send-root-referral \
                        --allow-2136-from=127.0.0.0/8 --experimental-rfc2136=yes --direct-dnskey=yes \
                        --cache-ttl=$cachettl --no-config --experimental-dname-processing \
-                       --bind-ignore-broken-records=yes $lua_prequery &
+                       --bind-ignore-broken-records=yes --disable-axfr-rectify=yes $lua_prequery &
                bindwait
                ;;
 
index 300f4a8574b92ceb5c2a5dd2bb06230bf3bfca54..418581d0cbb80e6006f8188fe4304e70411ca075 100644 (file)
@@ -34,7 +34,8 @@ gsql-master()
                --config-name=$backend --socket-dir=./ --no-shuffle \
                --send-root-referral \
                --allow-2136-from=127.0.0.0/8 --experimental-rfc2136=yes \
-               --cache-ttl=$cachettl --experimental-dname-processing $lua_prequery &
+               --cache-ttl=$cachettl --experimental-dname-processing \
+               --disable-axfr-rectify=yes $lua_prequery &
 
        if [ $context = ${backend}-nsec3 ]
        then