};
# A faulty dlz configuration to check if named and catz survive a certain class
- # of failed configuration attempts (see GL#3060).
+ # of failed configuration attempts (see GL #3060).
# We use "dlz" because the dlz processing code is located in an ideal place in
# the view configuration function for the test to cover the view reverting code.
#T3 dlz "bad-dlz" {
primaries { 10.53.0.1; };
};
+ # When the following zone configuration is enabled, "dom3.example" should
+ # already exist as a member of "catalog1.example", and named should be able
+ # to deal with that situation (see GL #3911). Make sure that this duplicate
+ # zone comes after the the "catalog1.example" zone in the configuration file.
+#T4 zone "dom3.example" {
+#T4 type secondary;
+#T4 file "dom2.example.db";
+#T4 };
+
# No "version" property
zone "catalog-bad1.example" {
type secondary;
nextpart ns2/named.run >/dev/null
+# GL #3060
n=$((n+1))
echo_i "reconfiguring secondary - checking if catz survives a certain class of failed reconfiguration attempts ($n)"
ret=0
nextpart ns2/named.run >/dev/null
+# GL #3911
+n=$((n+1))
+echo_i "reconfiguring secondary - checking if catz survives another type of failed reconfiguration attempts ($n)"
+ret=0
+sed -e "s/^#T4//" < ns2/named1.conf.in > ns2/named.conf.tmp
+copy_setports ns2/named.conf.tmp ns2/named.conf
+$RNDC -c ../common/rndc.conf -s 10.53.0.2 -p "${CONTROLPORT}" reconfig > /dev/null 2>&1 && ret=1
+if [ $ret -ne 0 ]; then echo_i "failed"; fi
+status=$((status+ret))
+
+# catalog zone update can be deferred
+sleep 2
+
+n=$((n+1))
+echo_i "checking again that dom3.example. is served by secondary ($n)"
+ret=0
+wait_for_soa @10.53.0.2 dom3.example. dig.out.test$n || ret=1
+if [ $ret -ne 0 ]; then echo_i "failed"; fi
+status=$((status+ret))
+
+n=$((n+1))
+echo_i "reconfiguring secondary - reverting the bad configuration ($n)"
+ret=0
+copy_setports ns2/named1.conf.in ns2/named.conf
+rndccmd 10.53.0.2 reconfig || ret=1
+if [ $ret -ne 0 ]; then echo_i "failed"; fi
+status=$((status+ret))
+
+nextpart ns2/named.run >/dev/null
+
n=$((n+1))
echo_i "adding a domain dom-existing.example. to primary via RNDC ($n)"
ret=0