From 3b9b6d0b8e7f798023c9d109c490449d528fde80 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 17:59:48 +0200 Subject: Adding upstream version 1:9.18.19. Signed-off-by: Daniel Baumann --- bin/tests/system/rrchecker/classlist.good | 3 + bin/tests/system/rrchecker/clean.sh | 15 +++++ bin/tests/system/rrchecker/privatelist.good | 0 bin/tests/system/rrchecker/tests.sh | 85 ++++++++++++++++++++++++ bin/tests/system/rrchecker/tests_sh_rrchecker.py | 14 ++++ bin/tests/system/rrchecker/typelist.good | 81 ++++++++++++++++++++++ 6 files changed, 198 insertions(+) create mode 100644 bin/tests/system/rrchecker/classlist.good create mode 100644 bin/tests/system/rrchecker/clean.sh create mode 100644 bin/tests/system/rrchecker/privatelist.good create mode 100644 bin/tests/system/rrchecker/tests.sh create mode 100644 bin/tests/system/rrchecker/tests_sh_rrchecker.py create mode 100644 bin/tests/system/rrchecker/typelist.good (limited to 'bin/tests/system/rrchecker') diff --git a/bin/tests/system/rrchecker/classlist.good b/bin/tests/system/rrchecker/classlist.good new file mode 100644 index 0000000..f0fff1a --- /dev/null +++ b/bin/tests/system/rrchecker/classlist.good @@ -0,0 +1,3 @@ +IN +CH +HS diff --git a/bin/tests/system/rrchecker/clean.sh b/bin/tests/system/rrchecker/clean.sh new file mode 100644 index 0000000..166247d --- /dev/null +++ b/bin/tests/system/rrchecker/clean.sh @@ -0,0 +1,15 @@ +#!/bin/sh + +# 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. + +rm -f classlist.out privatelist.out typelist.out tempzone checkzone.out* checker.out +rm -f ns*/named.lock diff --git a/bin/tests/system/rrchecker/privatelist.good b/bin/tests/system/rrchecker/privatelist.good new file mode 100644 index 0000000..e69de29 diff --git a/bin/tests/system/rrchecker/tests.sh b/bin/tests/system/rrchecker/tests.sh new file mode 100644 index 0000000..65e9d43 --- /dev/null +++ b/bin/tests/system/rrchecker/tests.sh @@ -0,0 +1,85 @@ +#!/bin/sh + +# 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. + +set -e + +. ../conf.sh + +status=0 +n=0 + +n=$((n + 1)) +echo_i "class list ($n)" +$RRCHECKER -C > classlist.out +diff classlist.out classlist.good || { echo_i "failed"; status=$((status + 1)); } + +n=$((n + 1)) +echo_i "type list ($n)" +$RRCHECKER -T > typelist.out +diff typelist.out typelist.good || { echo_i "failed"; status=$((status + 1)); } + +n=$((n + 1)) +echo_i "private type list ($n)" +$RRCHECKER -P > privatelist.out +diff privatelist.out privatelist.good || { echo_i "failed"; status=$((status + 1)); } + +myecho() { +cat << EOF +$* +EOF +} + +n=$((n + 1)) +echo_i "check conversions to canonical format ($n)" +ret=0 +$SHELL ${TOP_SRCDIR}/bin/tests/system/genzone.sh 0 > tempzone +$CHECKZONE -Dq . tempzone | sed '/^;/d' > checkzone.out$n +while read -r name tt cl ty rest +do + myecho "$cl $ty $rest" | $RRCHECKER -p > checker.out || { + ret=1 + echo_i "'$cl $ty $rest' not handled." + } + read -r cl0 ty0 rest0 < checker.out + test "$cl $ty $rest" = "$cl0 $ty0 $rest0" || { + ret=1 + echo_i "'$cl $ty $rest' != '$cl0 $ty0 $rest0'" + } +done < checkzone.out$n +test $ret -eq 0 || { echo_i "failed"; status=$((status + 1)); } + +n=$((n + 1)) +echo_i "check conversions to and from unknown record format ($n)" +ret=0 +$CHECKZONE -Dq . tempzone | sed '/^;/d' > checkzone.out$n +while read -r name tt cl ty rest +do + myecho "$cl $ty $rest" | $RRCHECKER -u > checker.out || { + ret=1 + echo_i "'$cl $ty $rest' not converted to unknown record format" + } + read -r clu tyu restu < checker.out + myecho "$clu $tyu $restu" | $RRCHECKER -p > checker.out || { + ret=1 + echo_i "'$cl $ty $rest' not converted back to canonical format" + } + read -r cl0 ty0 rest0 < checker.out + test "$cl $ty $rest" = "$cl0 $ty0 $rest0" || { + ret=1 + echo_i "'$cl $ty $rest' != '$cl0 $ty0 $rest0'" + } +done < checkzone.out$n +test $ret -eq 0 || { echo_i "failed"; status=$((status + 1)); } + +echo_i "exit status: $status" +[ $status -eq 0 ] || exit 1 diff --git a/bin/tests/system/rrchecker/tests_sh_rrchecker.py b/bin/tests/system/rrchecker/tests_sh_rrchecker.py new file mode 100644 index 0000000..16368e7 --- /dev/null +++ b/bin/tests/system/rrchecker/tests_sh_rrchecker.py @@ -0,0 +1,14 @@ +# 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. + + +def test_rrchecker(run_tests_sh): + run_tests_sh() diff --git a/bin/tests/system/rrchecker/typelist.good b/bin/tests/system/rrchecker/typelist.good new file mode 100644 index 0000000..3c3e5cd --- /dev/null +++ b/bin/tests/system/rrchecker/typelist.good @@ -0,0 +1,81 @@ +A +NS +MD +MF +CNAME +SOA +MB +MG +MR +NULL +WKS +PTR +HINFO +MINFO +MX +TXT +RP +AFSDB +X25 +ISDN +RT +NSAP +NSAP-PTR +SIG +KEY +PX +GPOS +AAAA +LOC +NXT +EID +NIMLOC +SRV +ATMA +NAPTR +KX +CERT +A6 +DNAME +SINK +APL +DS +SSHFP +IPSECKEY +RRSIG +NSEC +DNSKEY +DHCID +NSEC3 +NSEC3PARAM +TLSA +SMIMEA +HIP +NINFO +RKEY +TALINK +CDS +CDNSKEY +OPENPGPKEY +CSYNC +ZONEMD +SVCB +HTTPS +SPF +UINFO +UID +GID +UNSPEC +NID +L32 +L64 +LP +EUI48 +EUI64 +URI +CAA +AVC +DOA +AMTRELAY +TA +DLV -- cgit v1.2.3