From 9e7b5a4ad45055c9e1112c74a87240f6cbf3a802 Mon Sep 17 00:00:00 2001 From: Michal Nowak Date: Fri, 19 Dec 2025 14:09:11 +0100 Subject: [PATCH] Revert "Add ans6 blackhole server to notify system test" This reverts commit 21295bc18848edc8ec7d849baf85ea8f8390dd6f. In a sense, the ans6 black holeserver, based on asyncserver, "does nothing". In our case, it won't respond to any query, and if the IgnoreAllConnections connection handler was installed, it would not read anything from the client socket. Previously, sending notifications to an unconfigured address resulted in no communication from the target (10.53.10.53); hence, the ns3 configuration comment requested a "non-responsive notify recipient (no reply, no ICMP errors)". However, examining the PCAP of ans6 reveals some communication from the 10.53.0.6 server to the 10.53.0.3 client, including ICMP Destination Unreachable (Port Unreachable), and TCP SYN/ACK. The ans6 communication seems to be sufficiently different to touch different code paths in named, resulting in the BIND 9.20 backport failing in the "checking notify retries expire within 30 seconds" test. But we better revert it from "main" as well. --- bin/tests/system/notify/ans6/ans.py | 25 ---------------------- bin/tests/system/notify/ns3/named.conf.j2 | 2 +- bin/tests/system/notify/tests.sh | 2 +- bin/tests/system/notify/tests_sh_notify.py | 5 ----- 4 files changed, 2 insertions(+), 32 deletions(-) delete mode 100644 bin/tests/system/notify/ans6/ans.py diff --git a/bin/tests/system/notify/ans6/ans.py b/bin/tests/system/notify/ans6/ans.py deleted file mode 100644 index 6f5346ff86..0000000000 --- a/bin/tests/system/notify/ans6/ans.py +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -from isctest.asyncserver import ( - AsyncDnsServer, - IgnoreAllQueries, -) - - -def main() -> None: - server = AsyncDnsServer() - server.install_response_handler(IgnoreAllQueries()) - server.run() - - -if __name__ == "__main__": - main() diff --git a/bin/tests/system/notify/ns3/named.conf.j2 b/bin/tests/system/notify/ns3/named.conf.j2 index 2e9ea66071..756ec746fc 100644 --- a/bin/tests/system/notify/ns3/named.conf.j2 +++ b/bin/tests/system/notify/ns3/named.conf.j2 @@ -45,7 +45,7 @@ zone "example" { primaries { 10.53.0.2; }; file "example.bk"; # non-responsive notify recipient (no reply, no ICMP errors) - also-notify { 10.53.0.6; }; + also-notify { 10.53.10.53; }; }; zone "notify-source-port-test" { diff --git a/bin/tests/system/notify/tests.sh b/bin/tests/system/notify/tests.sh index d83f5cbee0..3beb52ae9a 100644 --- a/bin/tests/system/notify/tests.sh +++ b/bin/tests/system/notify/tests.sh @@ -222,7 +222,7 @@ grep "sending notify(SOA) to 10.53.0.5#[0-9]* : TSIG (b)" ns5/named.run >/dev/nu grep "sending notify(SOA) to 10.53.0.5#[0-9]* : TSIG (c)" ns5/named.run >/dev/null || ret=1 test_end -# notify messages were sent to unresponsive 10.53.0.6 during the tests +# notify messages were sent to unresponsive 10.53.10.53 during the tests # above, which should time out at some point; we need to wait for them to # appear in the logs in case the tests run faster than the notify timeouts diff --git a/bin/tests/system/notify/tests_sh_notify.py b/bin/tests/system/notify/tests_sh_notify.py index ebdbd0a28b..74c626b76b 100644 --- a/bin/tests/system/notify/tests_sh_notify.py +++ b/bin/tests/system/notify/tests_sh_notify.py @@ -11,10 +11,6 @@ import pytest -# isctest.asyncserver requires dnspython >= 2.0.0 -pytest.importorskip("dns", minversion="2.0.0") - - pytestmark = pytest.mark.extra_artifacts( [ "awk.out.*", @@ -32,7 +28,6 @@ pytestmark = pytest.mark.extra_artifacts( "ns5/x21.bk-c", "ns5/x21.bk-c.jnl", "ns5/x21.db.jnl", - "ans6/ans.run", ] )