From: Colin Vidal Date: Wed, 12 Mar 2025 09:29:10 +0000 (+0100) Subject: add system test covering EDE 20 X-Git-Tag: v9.21.7~59^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7f613c207fa209335239d41ca7a51b52be4f0e9a;p=thirdparty%2Fbind9.git add system test covering EDE 20 Add system test to cover extended DNS error 20 (Not authoritative). --- diff --git a/bin/tests/system/resolver/ns11/named.conf.in b/bin/tests/system/resolver/ns11/named.conf.in new file mode 100644 index 00000000000..14ed048629a --- /dev/null +++ b/bin/tests/system/resolver/ns11/named.conf.in @@ -0,0 +1,24 @@ +/* + * Copyright (C) Internet Systems Consortium, Inc. ("ISC") + * + * SPDX-License-Identifier: MPL-2.0 + * + * 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 https://mozilla.org/MPL/2.0/. + * + * See the COPYRIGHT file distributed with this work for additional + * information regarding copyright ownership. + */ + +options { + query-source address 10.53.0.11; + notify-source 10.53.0.11; + transfer-source 10.53.0.11; + port @PORT@; + pid-file "named.pid"; + listen-on { 10.53.0.11; }; + listen-on-v6 { none; }; + recursion no; + dnssec-validation no; +}; diff --git a/bin/tests/system/resolver/setup.sh b/bin/tests/system/resolver/setup.sh index eeda13bcd02..ae64e5f93e7 100644 --- a/bin/tests/system/resolver/setup.sh +++ b/bin/tests/system/resolver/setup.sh @@ -24,5 +24,6 @@ copy_setports ns5/named.conf.in ns5/named.conf copy_setports ns6/named.conf.in ns6/named.conf copy_setports ns7/named1.conf.in ns7/named.conf copy_setports ns9/named.conf.in ns9/named.conf +copy_setports ns11/named.conf.in ns11/named.conf (cd ns6 && $SHELL keygen.sh) diff --git a/bin/tests/system/resolver/tests.sh b/bin/tests/system/resolver/tests.sh index d667a2b2dda..95e8617ad95 100755 --- a/bin/tests/system/resolver/tests.sh +++ b/bin/tests/system/resolver/tests.sh @@ -1015,5 +1015,14 @@ ttl=$(awk '{print $2}' dig.ns1.out.${n}) if [ $ret != 0 ]; then echo_i "failed"; fi status=$((status + ret)) +n=$((n + 1)) +echo_i "client requests recursion but it is disabled - expect EDE 20 code with REFUSED($n)" +ret=0 +dig_with_opts +recurse www.isc.org @10.53.0.11 a >dig.out.ns11.test${n} || ret=1 +grep "status: REFUSED" dig.out.ns11.test${n} >/dev/null || ret=1 +grep -F "EDE: 20 (Not Authoritative)" dig.out.ns11.test${n} >/dev/null || ret=1 +if [ $ret != 0 ]; then echo_i "failed"; fi +status=$((status + ret)) + echo_i "exit status: $status" [ $status -eq 0 ] || exit 1