Merge branch '1109-inline-reload-error-v9_11' into 'v9_11'
don't overwrite the dns_master_loadfile() result before calling zone_postload() See merge request isc-projects/bind9!2093
This commit is contained in:
@@ -1,3 +1,8 @@
|
||||
5255. [bug] Errors encountered while reloading inline-signing
|
||||
zones could be ignored, causing the zone content to
|
||||
be left in an incompletely updated state rather than
|
||||
reverted. [GL #1109]
|
||||
|
||||
5253. [port] Support platforms that don't define ULLONG_MAX.
|
||||
[GL #1098]
|
||||
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
; Copyright (C) Internet Systems Consortium, Inc. ("ISC")
|
||||
;
|
||||
; This Source Code Form is subject to the terms of the Mozilla Public
|
||||
; License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
; file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
;
|
||||
; See the COPYRIGHT file distributed with this work for additional
|
||||
; information regarding copyright ownership.
|
||||
|
||||
$TTL 300 ; 5 minutes
|
||||
@ IN SOA ns3 . (
|
||||
2000042412 ; serial
|
||||
20 ; refresh (20 seconds)
|
||||
20 ; retry (20 seconds)
|
||||
1814400 ; expire (3 weeks)
|
||||
3600 ; minimum (1 hour)
|
||||
)
|
||||
NS ns3
|
||||
ns3 A 10.53.0.3
|
||||
|
||||
c A 10.0.0.3
|
||||
e A 10.0.0.5
|
||||
|
||||
$INCLUDE missingfile.db
|
||||
@@ -934,6 +934,29 @@ grep "hostmaster" dig.out.ns3.test$n > /dev/null && ret=1
|
||||
if [ $ret != 0 ]; then echo_i "failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
n=`expr $n + 1`
|
||||
echo_i "check that reloading errors prevent synchronization ($n)"
|
||||
ret=0
|
||||
$DIG $DIGOPTS +short @10.53.0.3 master SOA > dig.out.ns3.test$n.1 || ret=1
|
||||
sleep 1
|
||||
nextpart ns3/named.run > /dev/null
|
||||
cp ns3/master5.db.in ns3/master.db
|
||||
rndc_reload ns3 10.53.0.3
|
||||
for i in 1 2 3 4 5 6 7 8 9 10
|
||||
do
|
||||
if nextpart ns3/named.run |
|
||||
grep "not loaded due to errors" > /dev/null
|
||||
then
|
||||
break
|
||||
fi
|
||||
sleep 1
|
||||
done
|
||||
# Sanity check: the SOA record should be unchanged
|
||||
$DIG $DIGOPTS +short @10.53.0.3 master SOA > dig.out.ns3.test$n.2 || ret=1
|
||||
$DIFF dig.out.ns3.test$n.1 dig.out.ns3.test$n.2 > /dev/null || ret=1
|
||||
if [ $ret != 0 ]; then echo_i "failed"; fi
|
||||
status=`expr $status + $ret`
|
||||
|
||||
n=`expr $n + 1`
|
||||
echo_i "test add/del zone combinations ($n)"
|
||||
ret=0
|
||||
|
||||
+2
-2
@@ -15608,8 +15608,8 @@ zone_loaddone(void *arg, isc_result_t result) {
|
||||
LOCK_ZONE(zone->raw);
|
||||
else if (inline_raw(zone)) {
|
||||
secure = zone->secure;
|
||||
TRYLOCK_ZONE(result, secure);
|
||||
if (result != ISC_R_SUCCESS) {
|
||||
TRYLOCK_ZONE(tresult, secure);
|
||||
if (tresult != ISC_R_SUCCESS) {
|
||||
UNLOCK_ZONE(zone);
|
||||
secure = NULL;
|
||||
#if ISC_PLATFORM_USETHREADS
|
||||
|
||||
@@ -1505,6 +1505,7 @@
|
||||
./bin/tests/system/inline/ns3/master3.db.in ZONE 2012,2016,2018,2019
|
||||
./bin/tests/system/inline/ns3/master4.db.in ZONE 2012,2016,2018,2019
|
||||
./bin/tests/system/inline/ns3/master5.db.in ZONE 2018,2019
|
||||
./bin/tests/system/inline/ns3/master6.db.in ZONE 2019
|
||||
./bin/tests/system/inline/ns3/named.conf.in CONF-C 2018,2019
|
||||
./bin/tests/system/inline/ns3/sign.sh SH 2011,2012,2013,2014,2016,2017,2018,2019
|
||||
./bin/tests/system/inline/ns4/named.conf.in CONF-C 2018,2019
|
||||
|
||||
Reference in New Issue
Block a user