From 9f410e2a2e229ce53e5b3f8c13612b3be3c0df07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Men=C5=A1=C3=ADk?= Date: Tue, 16 Sep 2025 12:03:49 +0200 Subject: [PATCH] Fix expectations on idna system test IDNA tests always redirect output into the file. That means its behaviour has changed and is now processing IDN input by default and just disables IDN output by default. New behaviour when redirected is the same as +idnin +noidnout, but does not fail hard on input errors. Resolves: RHEL-66172 --- bind-9.18-dig-idn-input-always-test.patch | 80 +++++++++++++++++++++++ bind.spec | 9 ++- 2 files changed, 87 insertions(+), 2 deletions(-) create mode 100644 bind-9.18-dig-idn-input-always-test.patch diff --git a/bind-9.18-dig-idn-input-always-test.patch b/bind-9.18-dig-idn-input-always-test.patch new file mode 100644 index 0000000..8fdca3d --- /dev/null +++ b/bind-9.18-dig-idn-input-always-test.patch @@ -0,0 +1,80 @@ +From 11f35bdef6f070412cb2c1c65d9537b82ea38c8a Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20Men=C5=A1=C3=ADk?= +Date: Tue, 16 Sep 2025 11:46:03 +0200 +Subject: [PATCH] Fix expectations on idna system test + +IDNA tests always redirect output into the file. That means its +behaviour has changed and is now processing IDN input by default and +just disables IDN output by default. + +New behaviour when redirected is the same as +idnin +noidnout, but does +not fail hard on input errors. + +bind 9.16 version. +--- + bin/tests/system/idna/tests.sh | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/bin/tests/system/idna/tests.sh b/bin/tests/system/idna/tests.sh +index a04012a..5541b94 100644 +--- a/bin/tests/system/idna/tests.sh ++++ b/bin/tests/system/idna/tests.sh +@@ -185,7 +185,7 @@ idna_enabled_test() { + # Note that ASCII characters are converted to lower-case. + + text="Checking valid non-ASCII label" +- idna_test "$text" "" "München" "M\195\188nchen." ++ idna_test "$text" "" "München" "xn--mnchen-3ya." + idna_test "$text" "+noidnin +noidnout" "München" "M\195\188nchen." + idna_test "$text" "+noidnin +idnout" "München" "M\195\188nchen." + idna_test "$text" "+idnin +noidnout" "München" "xn--mnchen-3ya." +@@ -210,7 +210,7 @@ idna_enabled_test() { + # for the valid U-label. + + text="Checking that non-transitional IDNA processing is used" +- idna_test "$text" "" "faß.de" "fa\195\159.de." ++ idna_test "$text" "" "faß.de" "xn--fa-hia.de." + idna_test "$text" "+noidnin +noidnout" "faß.de" "fa\195\159.de." + idna_test "$text" "+noidnin +idnout" "faß.de" "fa\195\159.de." + idna_test "$text" "+idnin +noidnout" "faß.de" "xn--fa-hia.de." +@@ -220,7 +220,7 @@ idna_enabled_test() { + # onto the Greek sigma character ("σ") in IDNA2003. + + text="Second check that non-transitional IDNA processing is used" +- idna_test "$text" "" "βόλος.com" "\206\178\207\140\206\187\206\191\207\130.com." ++ idna_test "$text" "" "βόλος.com" "xn--nxasmm1c.com." + idna_test "$text" "+noidnin +noidnout" "βόλος.com" "\206\178\207\140\206\187\206\191\207\130.com." + idna_test "$text" "+noidnin +idnout" "βόλος.com" "\206\178\207\140\206\187\206\191\207\130.com." + idna_test "$text" "+idnin +noidnout" "βόλος.com" "xn--nxasmm1c.com." +@@ -284,7 +284,7 @@ idna_enabled_test() { + idna_test "$text" "" "xn--xx" "xn--xx." + idna_test "$text" "+noidnin +noidnout" "xn--xx" "xn--xx." + idna_fail "$text" "+noidnin +idnout" "xn--xx" +- idna_fail "$text" "+idnin +noidnout" "xn--xx" ++ idna_test "$text" "+idnin +noidnout" "xn--xx" "xn--xx." + idna_fail "$text" "+idnin +idnout" "xn--xx" + + # Fake A-label - the string does not translate to anything. +@@ -293,7 +293,7 @@ idna_enabled_test() { + idna_test "$text" "" "xn--ahahah" "xn--ahahah." + idna_test "$text" "+noidnin +noidnout" "xn--ahahah" "xn--ahahah." + idna_fail "$text" "+noidnin +idnout" "xn--ahahah" +- idna_fail "$text" "+idnin +noidnout" "xn--ahahah" ++ idna_test "$text" "+idnin +noidnout" "xn--ahahah" "xn--ahahah." + idna_fail "$text" "+idnin +idnout" "xn--ahahah" + + # Too long a label. The punycode string is too long (at 64 characters). +@@ -326,8 +326,8 @@ idna_enabled_test() { + idna_test "$text" "" "√.com" "\226\136\154.com." + idna_test "$text" "+noidnin +noidnout" "√.com" "\226\136\154.com." + idna_test "$text" "+noidnin +idnout" "√.com" "\226\136\154.com." +- idna_fail "$text" "+idnin +noidnout" "√.com" +- idna_fail "$text" "+idnin +idnout" "√.com" ++ idna_test "$text" "+idnin +noidnout" "√.com" "\226\136\154.com." ++ idna_test "$text" "+idnin +idnout" "√.com" "\226\136\154.com." + + # Tests of a valid unicode string but an invalid U-label (output) + # +-- +2.51.0 + diff --git a/bind.spec b/bind.spec index 3354283..600cf5f 100644 --- a/bind.spec +++ b/bind.spec @@ -56,7 +56,7 @@ Summary: The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) serv Name: bind License: MPLv2.0 Version: 9.16.23 -Release: 33%{?dist} +Release: 34%{?dist} Epoch: 32 Url: https://www.isc.org/downloads/bind/ # @@ -191,6 +191,8 @@ Patch220: bind-9.18-configurable-additional-records.patch # https://gitlab.isc.org/isc-projects/bind9/-/merge_requests/9723 # downstream only Patch221: bind-9.18-dig-idn-input-always.patch +# downstream only too +Patch222: bind-9.18-dig-idn-input-always-test.patch %{?systemd_ordering} Requires: coreutils @@ -1235,10 +1237,13 @@ fi; %endif %changelog +* Tue Sep 16 2025 Petr Menšík - 32:9.16.23-34 +- Fix failures in idna system test (RHEL-66172) + * Fri Sep 12 2025 Petr Menšík <> - 32:9.16.23-33 - logrotate: skip if empty and remove old variants (RHEL-113942) -* Wed Sep 03 2025 Petr Menšík - 32:9.16.23-31 +* Wed Sep 03 2025 Petr Menšík - 32:9.16.23-32 - Decode IDN names on input in all situations in utilities (RHEL-66172) * Wed Jul 09 2025 Petr Menšík - 32:9.16.23-31