]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Added tests for include directive + glob expressions.
authorDiego dos Santos Fronza <diego@isc.org>
Mon, 16 Sep 2019 15:03:10 +0000 (12:03 -0300)
committerDiego Fronza <diego@isc.org>
Tue, 22 Oct 2019 14:30:02 +0000 (11:30 -0300)
bin/tests/system/include-multiplecfg/.gitignore [new file with mode: 0644]
bin/tests/system/include-multiplecfg/clean.sh [new file with mode: 0644]
bin/tests/system/include-multiplecfg/ns2/named.conf.in [new file with mode: 0644]
bin/tests/system/include-multiplecfg/ns2/zone1.com.db [new file with mode: 0644]
bin/tests/system/include-multiplecfg/ns2/zone1.conf [new file with mode: 0644]
bin/tests/system/include-multiplecfg/ns2/zone2.com.db [new file with mode: 0644]
bin/tests/system/include-multiplecfg/ns2/zone2.conf [new file with mode: 0644]
bin/tests/system/include-multiplecfg/setup.sh [new file with mode: 0644]
bin/tests/system/include-multiplecfg/tests.sh [new file with mode: 0644]

diff --git a/bin/tests/system/include-multiplecfg/.gitignore b/bin/tests/system/include-multiplecfg/.gitignore
new file mode 100644 (file)
index 0000000..f928597
--- /dev/null
@@ -0,0 +1,2 @@
+/ns2/named.conf
+/ns2/controls.conf
diff --git a/bin/tests/system/include-multiplecfg/clean.sh b/bin/tests/system/include-multiplecfg/clean.sh
new file mode 100644 (file)
index 0000000..42915e3
--- /dev/null
@@ -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*
diff --git a/bin/tests/system/include-multiplecfg/ns2/named.conf.in b/bin/tests/system/include-multiplecfg/ns2/named.conf.in
new file mode 100644 (file)
index 0000000..4ae6ac1
--- /dev/null
@@ -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";
+
diff --git a/bin/tests/system/include-multiplecfg/ns2/zone1.com.db b/bin/tests/system/include-multiplecfg/ns2/zone1.com.db
new file mode 100644 (file)
index 0000000..c7836be
--- /dev/null
@@ -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
diff --git a/bin/tests/system/include-multiplecfg/ns2/zone1.conf b/bin/tests/system/include-multiplecfg/ns2/zone1.conf
new file mode 100644 (file)
index 0000000..fe903bc
--- /dev/null
@@ -0,0 +1,8 @@
+
+zone "zone1.com" {
+        type master;
+        file "zone1.com.db";
+        allow-transfer { any; };
+        allow-update { any; };
+};
+
diff --git a/bin/tests/system/include-multiplecfg/ns2/zone2.com.db b/bin/tests/system/include-multiplecfg/ns2/zone2.com.db
new file mode 100644 (file)
index 0000000..4a08fa7
--- /dev/null
@@ -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
diff --git a/bin/tests/system/include-multiplecfg/ns2/zone2.conf b/bin/tests/system/include-multiplecfg/ns2/zone2.conf
new file mode 100644 (file)
index 0000000..4bbd56e
--- /dev/null
@@ -0,0 +1,8 @@
+
+zone "zone2.com" {
+        type master;
+        file "zone2.com.db";
+        allow-transfer { any; };
+        allow-update { any; };
+};
+
diff --git a/bin/tests/system/include-multiplecfg/setup.sh b/bin/tests/system/include-multiplecfg/setup.sh
new file mode 100644 (file)
index 0000000..96c061b
--- /dev/null
@@ -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
diff --git a/bin/tests/system/include-multiplecfg/tests.sh b/bin/tests/system/include-multiplecfg/tests.sh
new file mode 100644 (file)
index 0000000..9de935b
--- /dev/null
@@ -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