]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Use a different character for invalid U-label test
authorMichał Kępień <michal@isc.org>
Tue, 10 Dec 2019 09:31:33 +0000 (10:31 +0100)
committerMichał Kępień <michal@isc.org>
Tue, 10 Dec 2019 11:01:49 +0000 (12:01 +0100)
When libidn2 2.3.0+ is used, the "idna" system test fails as dig does
not fail as expected any more due to libidn2 2.3.0 using Unicode 11.0.0
IDNA mapping tables [1] instead of Unicode 6.3.0 ones which were used
until libidn2 2.2.0.  Specifically, the SOCKS character (🧦) used in the
invalid input U-label check in the "idna" system test is a valid IDNA
character as per the IDNA mapping tables for Unicode 11.0.0.  Fix the
relevant checks by using a different character (🟥) which is an invalid
IDNA character for all versions of Unicode released to date.

[1] https://gitlab.com/libidn/libidn2/commit/5eaafda64e733bfe15f66c8a39fd9bc2753ba8f2

bin/tests/system/idna/tests.sh

index b69ec75b92d855f9f1fc15a4a9519cc8312a7421..52d11f2ca63306f8e23c3f76a1fd88261b0f1e66 100644 (file)
@@ -321,11 +321,11 @@ idna_enabled_test() {
     # The +[no]idnout options should not have any effect on the test.
 
     text="Checking invalid input U-label"
-    idna_test "$text" ""                   "ð\9f§¦.com" "\240\159\167\166.com."
-    idna_test "$text" "+noidnin +noidnout" "ð\9f§¦.com" "\240\159\167\166.com."
-    idna_test "$text" "+noidnin +idnout"   "ð\9f§¦.com" "\240\159\167\166.com."
-    idna_fail "$text" "+idnin   +noidnout" "ð\9f§¦.com"
-    idna_fail "$text" "+idnin   +idnout"   "ð\9f§¦.com"
+    idna_test "$text" ""                   "ð\9f\9f¥.com" "\240\159\159\165.com."
+    idna_test "$text" "+noidnin +noidnout" "ð\9f\9f¥.com" "\240\159\159\165.com."
+    idna_test "$text" "+noidnin +idnout"   "ð\9f\9f¥.com" "\240\159\159\165.com."
+    idna_fail "$text" "+idnin   +noidnout" "ð\9f\9f¥.com"
+    idna_fail "$text" "+idnin   +idnout"   "ð\9f\9f¥.com"
 
     # Tests of a valid unicode string but an invalid U-label (output)
     #