diff options
Diffstat (limited to 'bin/tests/system/delzone')
-rw-r--r-- | bin/tests/system/delzone/clean.sh | 22 | ||||
-rw-r--r-- | bin/tests/system/delzone/ns1/inlineslave.db | 24 | ||||
-rw-r--r-- | bin/tests/system/delzone/ns1/named.conf | 31 | ||||
-rw-r--r-- | bin/tests/system/delzone/ns2/added.db | 24 | ||||
-rw-r--r-- | bin/tests/system/delzone/ns2/named.args | 1 | ||||
-rw-r--r-- | bin/tests/system/delzone/ns2/named.conf | 32 | ||||
-rw-r--r-- | bin/tests/system/delzone/ns2/normal.db | 24 | ||||
-rw-r--r-- | bin/tests/system/delzone/setup.sh | 15 | ||||
-rwxr-xr-x | bin/tests/system/delzone/tests.sh | 63 |
9 files changed, 236 insertions, 0 deletions
diff --git a/bin/tests/system/delzone/clean.sh b/bin/tests/system/delzone/clean.sh new file mode 100644 index 0000000..9a1c79f --- /dev/null +++ b/bin/tests/system/delzone/clean.sh @@ -0,0 +1,22 @@ +#!/bin/sh +# +# 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. + +rm -f dig.out.* +rm -f rndc.out* +rm -f */named.memstats +rm -f ns2/*.nzf +rm -f ns2/*.nzd ns2/*nzd-lock +rm -f ns2/core* +rm -f ns2/inline.db.jbk +rm -f ns2/inline.db.signed +rm -f ns2/inlineslave.bk* +rm -f ns*/named.lock +rm -f ns2/nzf-* diff --git a/bin/tests/system/delzone/ns1/inlineslave.db b/bin/tests/system/delzone/ns1/inlineslave.db new file mode 100644 index 0000000..625349e --- /dev/null +++ b/bin/tests/system/delzone/ns1/inlineslave.db @@ -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. + +$ORIGIN inlineslave.example. +$TTL 300 ; 5 minutes +@ IN SOA mname1. . ( + 1 ; serial + 20 ; refresh (20 seconds) + 20 ; retry (20 seconds) + 1814400 ; expire (3 weeks) + 3600 ; minimum (1 hour) + ) + NS ns2 +ns2 A 10.53.0.2 + MX 10 mail + +a A 10.0.0.1 +mail A 10.0.0.2 diff --git a/bin/tests/system/delzone/ns1/named.conf b/bin/tests/system/delzone/ns1/named.conf new file mode 100644 index 0000000..8b6c441 --- /dev/null +++ b/bin/tests/system/delzone/ns1/named.conf @@ -0,0 +1,31 @@ +/* + * 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. + */ + +controls { /* empty */ }; + +options { + port 5300; + pid-file "named.pid"; + listen-on { 10.53.0.1; }; + listen-on-v6 { none; }; + allow-query { any; }; + recursion no; +}; + +zone "." { + type hint; + file "../../common/root.hint"; +}; + +zone "inlineslave.example" { + type master; + file "inlineslave.db"; +}; diff --git a/bin/tests/system/delzone/ns2/added.db b/bin/tests/system/delzone/ns2/added.db new file mode 100644 index 0000000..9b54d19 --- /dev/null +++ b/bin/tests/system/delzone/ns2/added.db @@ -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. + +;$ORIGIN added.example. +$TTL 300 ; 5 minutes +@ IN SOA mname1. . ( + 1 ; serial + 20 ; refresh (20 seconds) + 20 ; retry (20 seconds) + 1814400 ; expire (3 weeks) + 3600 ; minimum (1 hour) + ) + NS ns2 +ns2 A 10.53.0.2 + MX 10 mail + +a A 10.0.0.1 +mail A 10.0.0.2 diff --git a/bin/tests/system/delzone/ns2/named.args b/bin/tests/system/delzone/ns2/named.args new file mode 100644 index 0000000..bff47a9 --- /dev/null +++ b/bin/tests/system/delzone/ns2/named.args @@ -0,0 +1 @@ +-D ns2 -X named.lock -m record,size,mctx -T clienttest -c named.conf -g -U 4 diff --git a/bin/tests/system/delzone/ns2/named.conf b/bin/tests/system/delzone/ns2/named.conf new file mode 100644 index 0000000..8532e50 --- /dev/null +++ b/bin/tests/system/delzone/ns2/named.conf @@ -0,0 +1,32 @@ +/* + * 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. + */ + +options { + port 5300; + pid-file "named.pid"; + listen-on { 10.53.0.2; }; + listen-on-v6 { none; }; + allow-query { any; }; + recursion no; + allow-new-zones yes; +}; + +include "../../common/controls.conf"; + +zone "." { + type hint; + file "../../common/root.hint"; +}; + +zone "normal.example" { + type master; + file "normal.db"; +}; diff --git a/bin/tests/system/delzone/ns2/normal.db b/bin/tests/system/delzone/ns2/normal.db new file mode 100644 index 0000000..5045092 --- /dev/null +++ b/bin/tests/system/delzone/ns2/normal.db @@ -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. + +$ORIGIN normal.example. +$TTL 300 ; 5 minutes +@ IN SOA mname1. . ( + 1 ; serial + 20 ; refresh (20 seconds) + 20 ; retry (20 seconds) + 1814400 ; expire (3 weeks) + 3600 ; minimum (1 hour) + ) + NS ns2 +ns2 A 10.53.0.2 + MX 10 mail + +a A 10.0.0.1 +mail A 10.0.0.2 diff --git a/bin/tests/system/delzone/setup.sh b/bin/tests/system/delzone/setup.sh new file mode 100644 index 0000000..1405375 --- /dev/null +++ b/bin/tests/system/delzone/setup.sh @@ -0,0 +1,15 @@ +#!/bin/sh +# +# 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. + +SYSTEMTESTTOP=.. +. $SYSTEMTESTTOP/conf.sh + +$SHELL clean.sh diff --git a/bin/tests/system/delzone/tests.sh b/bin/tests/system/delzone/tests.sh new file mode 100755 index 0000000..dd0a2de --- /dev/null +++ b/bin/tests/system/delzone/tests.sh @@ -0,0 +1,63 @@ +#!/bin/sh +# +# 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. + +SYSTEMTESTTOP=.. +. $SYSTEMTESTTOP/conf.sh + +DIGOPTS="+tcp +nosea +nostat +nocmd +norec +noques +noauth +noadd +nostats +dnssec -p 5300" +status=0 +n=0 + +echo "I:checking normally loaded zone ($n)" +ret=0 +$DIG $DIGOPTS @10.53.0.2 a.normal.example a > dig.out.ns2.$n || ret=1 +grep 'status: NOERROR' dig.out.ns2.$n > /dev/null || ret=1 +grep '^a.normal.example' dig.out.ns2.$n > /dev/null || ret=1 +n=`expr $n + 1` +if [ $ret != 0 ]; then echo "I:failed"; fi +status=`expr $status + $ret` + +if [ -x "$PYTHON" ]; then +echo "I:adding and deleting 20000 new zones ($n)" +ret=0 + time ( + echo "I:adding" + $PYTHON << EOF +import sys +sys.path.insert(0, '../../../../bin/python') +from isc import rndc +r = rndc(('10.53.0.2', 9953), 'hmac-sha256', '1234abcd8765') +for i in range(20000): + res = r.call('addzone z%d.example { type master; file "added.db"; };' % i) + if 'text' in res: + print ('I:n2:' + res['text']) +EOF + ) + time ( + echo "I:deleting" + $PYTHON << EOF +import sys +sys.path.insert(0, '../../../../bin/python') +from isc import rndc +r = rndc(('10.53.0.2', 9953), 'hmac-sha256', '1234abcd8765') +for i in range(20000): + res = r.call('delzone z%d.example' % i) + if 'text' in res: + print ('I:n2:' + res['text']) +EOF + ) + n=`expr $n + 1` + if [ $ret != 0 ]; then echo "I:failed"; fi + status=`expr $status + $ret` +fi + +echo "I:exit status: $status" +exit $status |