2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-30 22:15:20 +00:00

Added tests for include directive + glob expressions.

This commit is contained in:
Diego dos Santos Fronza
2019-09-16 12:03:10 -03:00
committed by Diego Fronza
parent fa3fbf62e8
commit a50ab3df86
9 changed files with 169 additions and 1 deletions

View File

@@ -60,7 +60,8 @@ PARALLEL_COMMON="dnssec rpzrecurse serve-stale \
dns64 dscp dsdigest dyndb \
ednscompliance emptyzones \
fetchlimit filter-aaaa formerr forward \
geoip2 glue idna inline integrity ixfr \
geoip2 glue idna include-multiplecfg \
inline integrity ixfr \
kasp keepalive legacy limits \
masterfile masterformat metadata mirror mkeys \
names notify nslookup nsupdate nzd2nzf \

View File

@@ -0,0 +1,21 @@
#!/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.
#
# Clean up after allow query tests.
#
rm -f dig.out.*
rm -f ns*/named.conf
rm -f */named.memstats
rm -f ns*/named.lock
rm -f ns*/named.run ns*/named.run.prev
rm -f ns*/managed-keys.bind* ns*/*.mkeys*

View File

@@ -0,0 +1,27 @@
/*
* 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 @PORT@;
pid-file "named.pid";
listen-on { 10.53.0.2; };
listen-on-v6 { none; };
recursion no;
notify no;
};
#zone "." {
# type hint;
# file "../../common/root.hint";
#};
include "zone*.conf";

View File

@@ -0,0 +1,21 @@
$TTL 86400
@ IN SOA dns1.zone1.com. hostmaster.zone1.com. (
2001062501 ; serial
21600 ; refresh after 6 hours
3600 ; retry after 1 hour
604800 ; expire after 1 week
86400 ) ; minimum TTL of 1 day
IN NS dns1.zone1.com.
IN NS dns2.zone1.com.
IN MX 10 mail1.zone1.com.
IN MX 20 mail2.zone1.com.
IN A 10.53.0.1
dns1 IN A 10.53.0.1
dns2 IN A 10.53.0.2
mail1 IN A 10.53.0.1
mail2 IN A 10.53.0.2

View File

@@ -0,0 +1,8 @@
zone "zone1.com" {
type master;
file "zone1.com.db";
allow-transfer { any; };
allow-update { any; };
};

View File

@@ -0,0 +1,21 @@
$TTL 86400
@ IN SOA dns1.zone2.com. hostmaster.zone2.com. (
2001062501 ; serial
21600 ; refresh after 6 hours
3600 ; retry after 1 hour
604800 ; expire after 1 week
86400 ) ; minimum TTL of 1 day
IN NS dns1.zone2.com.
IN NS dns2.zone2.com.
IN MX 10 mail1.zone2.com.
IN MX 20 mail2.zone2.com.
IN A 10.53.0.1
dns1 IN A 10.53.0.1
dns2 IN A 10.53.0.2
mail1 IN A 10.53.0.1
mail2 IN A 10.53.0.2

View File

@@ -0,0 +1,8 @@
zone "zone2.com" {
type master;
file "zone2.com.db";
allow-transfer { any; };
allow-update { any; };
};

View File

@@ -0,0 +1,17 @@
#!/bin/sh -e
#
# 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
copy_setports ns2/named.conf.in ns2/named.conf

View File

@@ -0,0 +1,44 @@
#!/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.
# Test of include statement with glob expression.
SYSTEMTESTTOP=..
. $SYSTEMTESTTOP/conf.sh
DIGOPTS="+tcp +nosea +nostat +nocmd +norec +noques +noadd +nostats -p ${PORT}"
status=0
n=0
# Test 1 - check if zone1 was loaded.
n=`expr $n + 1`
echo_i "test $n: glob include zone1"
ret=0
$DIG $DIGOPTS @10.53.0.2 -b 10.53.0.2 zone1.com. a > dig.out.ns2.$n || ret=1
grep 'status: NOERROR' dig.out.ns2.$n > /dev/null || ret=1
grep '^zone1.com.' dig.out.ns2.$n > /dev/null || ret=1
if [ $ret != 0 ]; then echo_i "failed"; fi
status=`expr $status + $ret`
# Test 2 - check if zone2 was loaded.
n=`expr $n + 1`
echo_i "test $n: glob include zone2"
ret=0
$DIG $DIGOPTS @10.53.0.2 -b 10.53.0.2 zone2.com. a > dig.out.ns2.$n || ret=1
grep 'status: NOERROR' dig.out.ns2.$n > /dev/null || ret=1
grep '^zone2.com.' dig.out.ns2.$n > /dev/null || ret=1
if [ $ret != 0 ]; then echo_i "failed"; fi
status=`expr $status + $ret`
echo_i "exit status: $status"
[ $status -eq 0 ] || exit 1