]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
remove the "dialup" and "heartbeat-interval" options
authorEvan Hunt <each@isc.org>
Mon, 3 Jul 2023 23:22:04 +0000 (16:22 -0700)
committerEvan Hunt <each@isc.org>
Thu, 22 Aug 2024 18:11:10 +0000 (11:11 -0700)
mark "dialup" and "heartbeat-interval" options as ancient and
remove the documentation and the code implementing them.

33 files changed:
bin/named/config.c
bin/named/include/named/server.h
bin/named/server.c
bin/named/zoneconf.c
bin/tests/system/Makefile.am
bin/tests/system/checkconf/bad-stub-masters-dialup.conf [deleted file]
bin/tests/system/checkconf/deprecated.conf
bin/tests/system/checkconf/good.conf.in
bin/tests/system/checkconf/tests.sh
bin/tests/system/dialup/clean.sh [deleted file]
bin/tests/system/dialup/ns1/example.db [deleted file]
bin/tests/system/dialup/ns1/named.conf.in [deleted file]
bin/tests/system/dialup/ns1/root.db [deleted file]
bin/tests/system/dialup/ns2/hint.db [deleted file]
bin/tests/system/dialup/ns2/named.conf.in [deleted file]
bin/tests/system/dialup/ns3/hint.db [deleted file]
bin/tests/system/dialup/ns3/named.conf.in [deleted file]
bin/tests/system/dialup/setup.sh [deleted file]
bin/tests/system/dialup/tests_dialup_zone_transfer.py [deleted file]
doc/arm/reference.rst
doc/misc/options
doc/misc/primary.zoneopt
doc/misc/secondary.zoneopt
doc/misc/stub.zoneopt
fuzz/isc_lex_getmastertoken.in/named.conf
fuzz/isc_lex_gettoken.in/named.conf
lib/dns/include/dns/types.h
lib/dns/include/dns/view.h
lib/dns/include/dns/zone.h
lib/dns/view.c
lib/dns/zone.c
lib/isccfg/check.c
lib/isccfg/namedconf.c

index 8d962d78149a45719a943fc16820f6dc34fb1724..69b499ee7ea06cd9957777038fef31b18c07a198 100644 (file)
@@ -63,7 +63,6 @@ options {\n\
        geoip-directory \".\";\n"
 #endif /* if defined(HAVE_GEOIP2) */
                            "\
-       heartbeat-interval 60;\n\
        interface-interval 60;\n\
        listen-on {any;};\n\
        listen-on-v6 {any;};\n\
@@ -217,7 +216,6 @@ options {\n\
        check-sibling yes;\n\
        check-srv-cname warn;\n\
        check-wildcard yes;\n\
-       dialup no;\n\
        dnssec-loadkeys-interval 60;\n\
 #      forward <none>\n\
 #      forwarders <none>\n\
index a95c6544fb4d5b694c9414de88f741460a487fec..3b37205a1cdc41bc8b6012c7c1aac6a990cb410a 100644 (file)
@@ -75,7 +75,6 @@ struct named_server {
        isc_timer_t *tat_timer;
 
        uint32_t interface_interval;
-       uint32_t heartbeat_interval;
 
        atomic_int reload_status;
 
index 2156394dc486559663fff4a5249a3fa33249b990..7c42ae808e780e65c94592c430d01feb12408365 100644 (file)
@@ -1967,7 +1967,6 @@ dns64_reverse(dns_view_t *view, isc_mem_t *mctx, isc_netaddr_t *na,
        if (view->queryonacl != NULL) {
                dns_zone_setqueryonacl(zone, view->queryonacl);
        }
-       dns_zone_setdialup(zone, dns_dialuptype_no);
        dns_zone_setcheckdstype(zone, dns_checkdstype_no);
        dns_zone_setnotifytype(zone, dns_notifytype_no);
        dns_zone_setoption(zone, DNS_ZONEOPT_NOCHECKNS, true);
@@ -3639,7 +3638,6 @@ create_empty_zone(dns_zone_t *pzone, dns_name_t *name, dns_view_t *view,
        dns_zone_setoption(zone, DNS_ZONEOPT_NOCHECKNS, true);
        dns_zone_setcheckdstype(zone, dns_checkdstype_no);
        dns_zone_setnotifytype(zone, dns_notifytype_no);
-       dns_zone_setdialup(zone, dns_dialuptype_no);
        dns_zone_setautomatic(zone, true);
        if (view->queryacl != NULL) {
                dns_zone_setqueryacl(zone, view->queryacl);
@@ -3737,7 +3735,6 @@ create_ipv4only_zone(dns_zone_t *pzone, dns_view_t *view,
                dns_zone_settype(zone, dns_zone_primary);
                dns_zone_setstats(zone, named_g_server->zonestats);
                dns_zone_setdbtype(zone, dbtypec, dbtype);
-               dns_zone_setdialup(zone, dns_dialuptype_no);
                dns_zone_setcheckdstype(zone, dns_checkdstype_no);
                dns_zone_setnotifytype(zone, dns_notifytype_no);
                dns_zone_setautomatic(zone, true);
@@ -7053,7 +7050,6 @@ add_keydata_zone(dns_view_t *view, const char *directory, isc_mem_t *mctx) {
        dns_zone_setqueryonacl(zone, none);
        dns_acl_detach(&none);
 
-       dns_zone_setdialup(zone, dns_dialuptype_no);
        dns_zone_setcheckdstype(zone, dns_checkdstype_no);
        dns_zone_setnotifytype(zone, dns_notifytype_no);
        dns_zone_setoption(zone, DNS_ZONEOPT_NOCHECKNS, true);
@@ -7159,18 +7155,6 @@ interface_timer_tick(void *arg) {
        (void)ns_interfacemgr_scan(server->interfacemgr, false, false);
 }
 
-static void
-heartbeat_timer_tick(void *arg) {
-       named_server_t *server = (named_server_t *)arg;
-       dns_view_t *view = NULL;
-
-       view = ISC_LIST_HEAD(server->viewlist);
-       while (view != NULL) {
-               dns_view_dialup(view);
-               view = ISC_LIST_NEXT(view, link);
-       }
-}
-
 typedef struct {
        isc_mem_t *mctx;
        isc_loop_t *loop;
@@ -8308,7 +8292,6 @@ load_configuration(const char *filename, named_server_t *server,
        isc_portset_t *v4portset = NULL;
        isc_portset_t *v6portset = NULL;
        isc_result_t result;
-       uint32_t heartbeat_interval;
        uint32_t interface_interval;
        uint32_t udpsize;
        uint32_t transfer_message_size;
@@ -9039,22 +9022,6 @@ load_configuration(const char *filename, named_server_t *server,
                                &interval);
        }
 
-       /*
-        * Configure the dialup heartbeat timer.
-        */
-       obj = NULL;
-       result = named_config_get(maps, "heartbeat-interval", &obj);
-       INSIST(result == ISC_R_SUCCESS);
-       heartbeat_interval = cfg_obj_asuint32(obj) * 60;
-       if (heartbeat_interval == 0) {
-               isc_timer_stop(server->heartbeat_timer);
-       } else if (server->heartbeat_interval != heartbeat_interval) {
-               isc_interval_set(&interval, heartbeat_interval, 0);
-               isc_timer_start(server->heartbeat_timer, isc_timertype_ticker,
-                               &interval);
-       }
-       server->heartbeat_interval = heartbeat_interval;
-
        isc_interval_set(&interval, 1200, 0);
        isc_timer_start(server->pps_timer, isc_timertype_ticker, &interval);
 
@@ -10040,9 +10007,6 @@ run_server(void *arg) {
        isc_timer_create(named_g_mainloop, interface_timer_tick, server,
                         &server->interface_timer);
 
-       isc_timer_create(named_g_mainloop, heartbeat_timer_tick, server,
-                        &server->heartbeat_timer);
-
        isc_timer_create(named_g_mainloop, tat_timer_tick, server,
                         &server->tat_timer);
 
@@ -10155,7 +10119,6 @@ shutdown_server(void *arg) {
        }
 
        isc_timer_destroy(&server->interface_timer);
-       isc_timer_destroy(&server->heartbeat_timer);
        isc_timer_destroy(&server->pps_timer);
        isc_timer_destroy(&server->tat_timer);
 
index 8129b01b176d537b6964e746bc6a7c7634f5422d..f8cbee27f4c4c86b1b58b78a0f749ed51bf926e4 100644 (file)
@@ -886,7 +886,6 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
        static char dlz_dbtype[] = "dlz";
        char *cpval = default_dbtype;
        isc_mem_t *mctx = dns_zone_getmctx(zone);
-       dns_dialuptype_t dialup = dns_dialuptype_no;
        dns_zonetype_t ztype;
        int i;
        int32_t journal_size;
@@ -1132,34 +1131,6 @@ named_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
                                 zone, dns_zone_setqueryonacl,
                                 dns_zone_clearqueryonacl));
 
-       obj = NULL;
-       result = named_config_get(maps, "dialup", &obj);
-       INSIST(result == ISC_R_SUCCESS && obj != NULL);
-       if (cfg_obj_isboolean(obj)) {
-               if (cfg_obj_asboolean(obj)) {
-                       dialup = dns_dialuptype_yes;
-               } else {
-                       dialup = dns_dialuptype_no;
-               }
-       } else {
-               const char *dialupstr = cfg_obj_asstring(obj);
-               if (strcasecmp(dialupstr, "notify") == 0) {
-                       dialup = dns_dialuptype_notify;
-               } else if (strcasecmp(dialupstr, "notify-passive") == 0) {
-                       dialup = dns_dialuptype_notifypassive;
-               } else if (strcasecmp(dialupstr, "refresh") == 0) {
-                       dialup = dns_dialuptype_refresh;
-               } else if (strcasecmp(dialupstr, "passive") == 0) {
-                       dialup = dns_dialuptype_passive;
-               } else {
-                       UNREACHABLE();
-               }
-       }
-       if (raw != NULL) {
-               dns_zone_setdialup(raw, dialup);
-       }
-       dns_zone_setdialup(zone, dialup);
-
        obj = NULL;
        result = named_config_get(maps, "zone-statistics", &obj);
        INSIST(result == ISC_R_SUCCESS && obj != NULL);
index 842bb5db8b9caf90c9712d2ebeed2ffab8d46c7c..251d61a88e1db1116c209b820f118de02720a421 100644 (file)
@@ -96,7 +96,6 @@ TESTS =                               \
        checkzone               \
        cookie                  \
        database                \
-       dialup                  \
        digdelv                 \
        dispatch                \
        dlzexternal             \
diff --git a/bin/tests/system/checkconf/bad-stub-masters-dialup.conf b/bin/tests/system/checkconf/bad-stub-masters-dialup.conf
deleted file mode 100644 (file)
index a30236c..0000000
+++ /dev/null
@@ -1,36 +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.
- */
-
-controls { /* empty */ };
-options {
-       query-source address 10.53.0.2;
-       notify-source 10.53.0.2;
-       transfer-source 10.53.0.2;
-       port 5300;
-       pid-file "named.pid";
-       listen-on { 10.53.0.2; };
-       listen-on-v6 { none; };
-       heartbeat-interval 2;
-       recursion no;
-};
-zone "." {
-       type hint;
-       file "hint";
-};
-zone "example." {
-       type stub;
-       dialup notify;
-       notify no;
-       file "example.bk";
-       // primaries { 10.53.0.1; };
-};
index e90d9469a023bd95cab38cc026ae2c792bad4b45..62f9aa919d28df08e4a43fc7d01507295f17f19b 100644 (file)
@@ -19,9 +19,6 @@ options {
        dnssec-validation yes;
        max-zone-ttl 600;
 
-        dialup yes;
-        heartbeat-interval 60;
-
        use-v4-udp-ports { range 1024 65535; };
        use-v6-udp-ports { range 1024 65535; };
        avoid-v4-udp-ports { range 1 1023; };
index f7e8cc8415b185b64f8577159ef0dff2b91fab99..42b5f0f74f7ae9e9ffe8460c84301712dfaf9ebd 100644 (file)
@@ -56,7 +56,6 @@ options {
        };
        directory ".";
        dump-file "named_dumpdb";
-       heartbeat-interval 30;
        hostname none;
        interface-interval 30;
        listen-on port 90 {
index 112c97e86a15e81c6ced8258923223de64b84279..daaa93a7d3eadeeca59572d3430217f73793ee67 100644 (file)
@@ -174,7 +174,7 @@ fi
 n=$((n + 1))
 echo_i "checking named-checkconf deprecate warnings ($n)"
 ret=0
-$CHECKCONF deprecated.conf >checkconf.out$n.1 2>&1
+$CHECKCONF deprecated.conf >checkconf.out$n.1 2>&1 || ret=1
 grep "option 'managed-keys' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
 grep "option 'trusted-keys' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
 grep "option 'max-zone-ttl' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
@@ -182,8 +182,6 @@ grep "option 'use-v4-udp-ports' is deprecated" <checkconf.out$n.1 >/dev/null ||
 grep "option 'use-v6-udp-ports' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
 grep "option 'avoid-v4-udp-ports' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
 grep "option 'avoid-v6-udp-ports' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
-grep "option 'dialup' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
-grep "option 'heartbeat-interval' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
 grep "option 'dnssec-must-be-secure' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
 grep "option 'sortlist' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
 grep "token 'port' is deprecated" <checkconf.out$n.1 >/dev/null || ret=1
diff --git a/bin/tests/system/dialup/clean.sh b/bin/tests/system/dialup/clean.sh
deleted file mode 100644 (file)
index 9ee72bc..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/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 ns2/example.bk
-rm -f ns3/example.bk
-rm -f */named.memstats */named.run
-rm -f ns*/named.conf
diff --git a/bin/tests/system/dialup/ns1/example.db b/bin/tests/system/dialup/ns1/example.db
deleted file mode 100644 (file)
index 3ce33f9..0000000
+++ /dev/null
@@ -1,19 +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.
-
-@      3600    SOA     hostmaster.ns1 ns1 (
-                       1 3600 1200 3600000 1200 )
-               NS      ns1.example.
-               NS      ns2.example.
-               NS      ns3.example.
-ns1            A       10.53.0.1
-ns2            A       10.53.0.2
-ns3            A       10.53.0.3
diff --git a/bin/tests/system/dialup/ns1/named.conf.in b/bin/tests/system/dialup/ns1/named.conf.in
deleted file mode 100644 (file)
index 75a497b..0000000
+++ /dev/null
@@ -1,41 +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.
- */
-
-controls { /* empty */ };
-
-options {
-       query-source address 10.53.0.1;
-       notify-source 10.53.0.1;
-       transfer-source 10.53.0.1;
-       port @PORT@;
-       pid-file "named.pid";
-       listen-on { 10.53.0.1; };
-       listen-on-v6 { none; };
-       allow-transfer { any; };
-       heartbeat-interval 1;
-       recursion no;
-       dnssec-validation no;
-};
-
-zone "." {
-       type primary;
-       file "root.db";
-};
-
-zone "example." {
-       type primary;
-       notify explicit;
-       also-notify { 10.53.0.2; };
-       dialup yes;
-       file "example.db";
-};
diff --git a/bin/tests/system/dialup/ns1/root.db b/bin/tests/system/dialup/ns1/root.db
deleted file mode 100644 (file)
index 882da96..0000000
+++ /dev/null
@@ -1,20 +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.
-
-@      3600    SOA     hostmaster.ns1.example ns1.example (
-                       1 3600 1200 3600000 1200 )
-               NS      ns1.example
-example                NS      ns1.example
-               NS      ns2.example
-               NS      ns3.example
-ns1.example    A       10.53.0.1
-ns2.example    A       10.53.0.2
-ns3.example    A       10.53.0.3
diff --git a/bin/tests/system/dialup/ns2/hint.db b/bin/tests/system/dialup/ns2/hint.db
deleted file mode 100644 (file)
index 0198f25..0000000
+++ /dev/null
@@ -1,13 +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.
-
-.      1200    NS      ns1.example
-ns1.example    A       10.53.0.1
diff --git a/bin/tests/system/dialup/ns2/named.conf.in b/bin/tests/system/dialup/ns2/named.conf.in
deleted file mode 100644 (file)
index 495e267..0000000
+++ /dev/null
@@ -1,41 +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.
- */
-
-controls { /* empty */ };
-
-options {
-       query-source address 10.53.0.2;
-       notify-source 10.53.0.2;
-       transfer-source 10.53.0.2;
-       port @PORT@;
-       pid-file "named.pid";
-       listen-on { 10.53.0.2; };
-       listen-on-v6 { none; };
-       allow-transfer { any; };
-       heartbeat-interval 1;
-       recursion no;
-       dnssec-validation no;
-};
-
-zone "." {
-       type hint;
-       file "hint.db";
-};
-
-zone "example." {
-       type secondary;
-       dialup passive;
-       notify no;
-       file "example.bk";
-       primaries { 10.53.0.1; };
-};
diff --git a/bin/tests/system/dialup/ns3/hint.db b/bin/tests/system/dialup/ns3/hint.db
deleted file mode 100644 (file)
index 0198f25..0000000
+++ /dev/null
@@ -1,13 +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.
-
-.      1200    NS      ns1.example
-ns1.example    A       10.53.0.1
diff --git a/bin/tests/system/dialup/ns3/named.conf.in b/bin/tests/system/dialup/ns3/named.conf.in
deleted file mode 100644 (file)
index 31b9a12..0000000
+++ /dev/null
@@ -1,40 +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.
- */
-
-controls { /* empty */ };
-
-options {
-       query-source address 10.53.0.3;
-       notify-source 10.53.0.3;
-       transfer-source 10.53.0.3;
-       port @PORT@;
-       pid-file "named.pid";
-       listen-on { 10.53.0.3; };
-       listen-on-v6 { none; };
-       heartbeat-interval 1;
-       recursion no;
-       dnssec-validation no;
-};
-
-zone "." {
-       type hint;
-       file "hint.db";
-};
-
-zone "example." {
-       type secondary;
-       dialup refresh;
-       notify no;
-       file "example.bk";
-       primaries { 10.53.0.2; };
-};
diff --git a/bin/tests/system/dialup/setup.sh b/bin/tests/system/dialup/setup.sh
deleted file mode 100644 (file)
index dad3589..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/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.
-
-# shellcheck source=conf.sh
-. ../conf.sh
-
-copy_setports ns1/named.conf.in ns1/named.conf
-copy_setports ns2/named.conf.in ns2/named.conf
-copy_setports ns3/named.conf.in ns3/named.conf
diff --git a/bin/tests/system/dialup/tests_dialup_zone_transfer.py b/bin/tests/system/dialup/tests_dialup_zone_transfer.py
deleted file mode 100644 (file)
index 71b8207..0000000
+++ /dev/null
@@ -1,33 +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.
-
-import pytest
-
-import isctest
-
-import dns.message
-
-
-@pytest.mark.parametrize("ns", [2, 3])
-def test_dialup_zone_transfer(named_port, servers, ns):
-    msg = dns.message.make_query("example.", "SOA")
-    # Drop the RD flag from the query
-    msg.flags &= ~dns.flags.RD
-    ns1response = isctest.query.tcp(msg, "10.53.0.1")
-    with servers[f"ns{ns}"].watch_log_from_start() as watcher:
-        watcher.wait_for_line(
-            f"transfer of 'example/IN' from 10.53.0.{ns-1}#{named_port}: Transfer status: success",
-            timeout=90,
-        )
-    response = isctest.query.tcp(msg, f"10.53.0.{ns}")
-    if response.rcode() != dns.rcode.SERVFAIL:
-        assert response.answer == ns1response.answer
-        assert response.authority == ns1response.authority
index d4a8cd76a9ce4bc933b06899d054ff419dfaebaa..bc185a58aff562c36ca845acb54ca97952769f92 100644 (file)
@@ -2030,64 +2030,6 @@ Boolean Options
    :any:`memstatistics-file` at exit. The default is ``no`` unless :option:`-m
    record <named -m>` is specified on the command line, in which case it is ``yes``.
 
-.. namedconf:statement:: dialup
-   :tags: deprecated
-   :short: Concentrates zone maintenance so that all transfers take place once every :any:`heartbeat-interval`, ideally during a single call.
-
-   This option is deprecated and will be removed in a future release.
-
-   If ``yes``, then the server treats all zones as if they are doing
-   zone transfers across a dial-on-demand dialup link, which can be
-   brought up by traffic originating from this server. Although this setting has
-   different effects according to zone type, it concentrates the zone
-   maintenance so that everything happens quickly, once every
-   :any:`heartbeat-interval`, ideally during a single call. It also
-   suppresses some normal zone maintenance traffic. The default
-   is ``no``.
-
-   If specified in the :any:`view` and
-   :any:`zone` statements, the :any:`dialup` option overrides the global :any:`dialup`
-   option.
-
-   If the zone is a primary zone, the server sends out a NOTIFY
-   request to all the secondaries (default). This should trigger the zone
-   serial number check in the secondary (providing it supports NOTIFY),
-   allowing the secondary to verify the zone while the connection is active.
-   The set of servers to which NOTIFY is sent can be controlled by
-   :namedconf:ref:`notify` and :any:`also-notify`.
-
-   If the zone is a secondary or stub zone, the server suppresses
-   the regular "zone up to date" (refresh) queries and only performs them
-   when the :any:`heartbeat-interval` expires, in addition to sending NOTIFY
-   requests.
-
-   Finer control can be achieved by using :namedconf:ref:`notify`, which only sends
-   NOTIFY messages; ``notify-passive``, which sends NOTIFY messages and
-   suppresses the normal refresh queries; ``refresh``, which suppresses
-   normal refresh processing and sends refresh queries when the
-   :any:`heartbeat-interval` expires; and ``passive``, which disables
-   normal refresh processing.
-
-   +--------------------+-----------------+-----------------+-----------------+
-   | dialup mode        | normal refresh  | heart-beat      | heart-beat      |
-   |                    |                 | refresh         | notify          |
-   +--------------------+-----------------+-----------------+-----------------+
-   | ``no``             | yes             | no              | no              |
-   | (default)          |                 |                 |                 |
-   +--------------------+-----------------+-----------------+-----------------+
-   | ``yes``            | no              | yes             | yes             |
-   +--------------------+-----------------+-----------------+-----------------+
-   | ``notify``         | yes             | no              | yes             |
-   +--------------------+-----------------+-----------------+-----------------+
-   | ``refresh``        | no              | yes             | no              |
-   +--------------------+-----------------+-----------------+-----------------+
-   | ``passive``        | no              | no              | no              |
-   +--------------------+-----------------+-----------------+-----------------+
-   | ``notify-passive`` | no              | no              | yes             |
-   +--------------------+-----------------+-----------------+-----------------+
-
-   Note that normal NOTIFY processing is not affected by :any:`dialup`.
-
 .. namedconf:statement:: flush-zones-on-shutdown
    :tags: zone
    :short: Controls whether pending zone writes are flushed when the name server exits.
@@ -4065,18 +4007,6 @@ system.
 Periodic Task Intervals
 ^^^^^^^^^^^^^^^^^^^^^^^
 
-.. namedconf:statement:: heartbeat-interval
-   :tags: deprecated
-   :short: Sets the interval at which the server performs zone maintenance tasks for all zones marked as :any:`dialup`.
-
-   The server performs zone maintenance tasks for all zones marked
-   as :any:`dialup` whenever this interval expires. The default is 60
-   minutes. Reasonable values are up to 1 day (1440 minutes). The
-   maximum value is 28 days (40320 minutes). If set to 0, no zone
-   maintenance for these zones occurs.
-
-   This option is deprecated and will be removed in a future release.
-
 .. namedconf:statement:: interface-interval
    :tags: server
    :short: Sets the interval at which the server scans the network interface list.
@@ -7267,9 +7197,6 @@ Zone Options
    linked into the server. Some sample drivers are included with the
    distribution but none are linked in by default.
 
-:any:`dialup`
-   See the description of :any:`dialup` in :ref:`boolean_options`.
-
 .. namedconf:statement:: file
    :tags: zone
    :short: Specifies the zone's filename.
index 2390a98a2ed7c8fecd03d9f752a2278472b0416b..4f19c8f39c1e8e60ffa6d076f6b7e0990d80c283 100644 (file)
@@ -105,7 +105,6 @@ options {
        cookie-secret <string>; // may occur multiple times
        deny-answer-addresses { <address_match_element>; ... } [ except-from { <string>; ... } ];
        deny-answer-aliases { <string>; ... } [ except-from { <string>; ... } ];
-       dialup ( notify | notify-passive | passive | refresh | <boolean> ); // deprecated
        directory <quoted_string>;
        disable-algorithms <string> { <string>; ... }; // may occur multiple times
        disable-ds-digests <string> { <string>; ... }; // may occur multiple times
@@ -156,7 +155,6 @@ options {
        fstrm-set-output-queue-size <integer>; // not configured
        fstrm-set-reopen-interval <duration>; // not configured
        geoip-directory ( <quoted_string> | none );
-       heartbeat-interval <integer>; // deprecated
        hostname ( <quoted_string> | none );
        http-listener-clients <integer>;
        http-port <integer>;
@@ -411,7 +409,6 @@ view <string> [ <class> ] {
        clients-per-query <integer>;
        deny-answer-addresses { <address_match_element>; ... } [ except-from { <string>; ... } ];
        deny-answer-aliases { <string>; ... } [ except-from { <string>; ... } ];
-       dialup ( notify | notify-passive | passive | refresh | <boolean> ); // deprecated
        disable-algorithms <string> { <string>; ... }; // may occur multiple times
        disable-ds-digests <string> { <string>; ... }; // may occur multiple times
        disable-empty-zone <string>; // may occur multiple times
index 7b351064fef80f6c1d3fa96c0dbf545b26509dfe..a561aabc2dfb87435b65ebc85490cb7400813ce5 100644 (file)
@@ -17,7 +17,6 @@ zone <string> [ <class> ] {
        check-wildcard <boolean>;
        checkds ( explicit | <boolean> );
        database <string>;
-       dialup ( notify | notify-passive | passive | refresh | <boolean> ); // deprecated
        dlz <string>;
        dnskey-sig-validity <integer>; // obsolete
        dnssec-dnskey-kskonly <boolean>; // obsolete
index 3a28af9d84f4d9f267aad6477c0a4ad2a70bca69..83be6bb37a2ca635dd9c44b55fdfaf3fcad5c572 100644 (file)
@@ -9,7 +9,6 @@ zone <string> [ <class> ] {
        check-names ( fail | warn | ignore );
        checkds ( explicit | <boolean> );
        database <string>;
-       dialup ( notify | notify-passive | passive | refresh | <boolean> ); // deprecated
        dlz <string>;
        dnskey-sig-validity <integer>; // obsolete
        dnssec-dnskey-kskonly <boolean>; // obsolete
index 992aa51e96320a89f6e14b9a338c4e14e3ebff20..04ab240f258f712117284c79abe1f03ff9e6ad58 100644 (file)
@@ -4,7 +4,6 @@ zone <string> [ <class> ] {
        allow-query-on { <address_match_element>; ... };
        check-names ( fail | warn | ignore );
        database <string>;
-       dialup ( notify | notify-passive | passive | refresh | <boolean> ); // deprecated
        file <quoted_string>;
        forward ( first | only );
        forwarders [ port <integer> ] [ tls <string> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ tls <string> ]; ... };
index 9cbde3521cfe923092e46dad2400d1a39a47e690..0036788f444a7e11b3995e540aa79762613d9342 100644 (file)
Binary files a/fuzz/isc_lex_getmastertoken.in/named.conf and b/fuzz/isc_lex_getmastertoken.in/named.conf differ
index d00c2c526d7d6dcc32297fbfbfe30ffd11bb3753..5fa286a714babddbdefbb81cc9643a52637bbaba 100644 (file)
@@ -55,8 +55,6 @@ options {
 #Obsolete
        deallocate - on - exit no;
 
-       dialup yes;
-
 #Obsolete
        fake - iquery no;
 
@@ -166,7 +164,6 @@ options {
 
        max - ixfr - log - size 20m;
        max - cache - size 1m;
-       heartbeat - interval 1001;
        interface - interval 1002;
        statistics - interval 1003;
 
@@ -325,14 +322,12 @@ view "test-view" in {
        server 5.6.7.8 { keys "viewkey"; };
 
        server 10.9.8.7 { keys "non-viewkey"; };
-       dialup yes;
 };
 
 zone "stub.demo.zone" {
        type stub; // stub zones are like secondary zones,
                   // except that only the NS records
                   // are transferred.
-       dialup yes;
        file "stub.demo.zone";
        primaries {
                1.2.3.4; // where to zone transfer from
index c4353aef4c2bd6567760d91195dd2ff79d44ca33..4829b6f92cfaa2310d63a7305a2c3900d0aefb88 100644 (file)
@@ -228,15 +228,6 @@ typedef enum {
        dns_minimal_noauthrec = 3
 } dns_minimaltype_t;
 
-typedef enum {
-       dns_dialuptype_no = 0,
-       dns_dialuptype_yes = 1,
-       dns_dialuptype_notify = 2,
-       dns_dialuptype_notifypassive = 3,
-       dns_dialuptype_refresh = 4,
-       dns_dialuptype_passive = 5
-} dns_dialuptype_t;
-
 typedef enum {
        dns_masterformat_none = 0,
        dns_masterformat_text = 1,
index 02932e8a94207366c4adc308b39ddcebb1ca41aa..845531c0d839b239777a534414f4d3c1907bc77b 100644 (file)
@@ -855,12 +855,6 @@ dns_view_checksig(dns_view_t *view, isc_buffer_t *source, dns_message_t *msg);
  *\li  see dns_tsig_verify()
  */
 
-void
-dns_view_dialup(dns_view_t *view);
-/*%<
- * Perform dialup-time maintenance on the zones of 'view'.
- */
-
 isc_result_t
 dns_view_flushcache(dns_view_t *view, bool fixuponly);
 /*%<
index 57b55addb8b746a7c94290ebd6a3a5ebead06f28..ac3c53095978b83539f823331f1b68ef3a48ae2d 100644 (file)
@@ -2101,22 +2101,6 @@ dns_zone_getdnssecsignstats(dns_zone_t *zone);
  *     otherwise NULL.
  */
 
-void
-dns_zone_dialup(dns_zone_t *zone);
-/*%<
- * Perform dialup-time maintenance on 'zone'.
- */
-
-void
-dns_zone_setdialup(dns_zone_t *zone, dns_dialuptype_t dialup);
-/*%<
- * Set the dialup type of 'zone' to 'dialup'.
- *
- * Requires:
- * \li 'zone' to be valid initialised zone.
- *\li  'dialup' to be a valid dialup type.
- */
-
 void
 dns_zone_logv(dns_zone_t *zone, isc_logcategory_t category, int level,
              const char *prefix, const char *msg, va_list ap);
index a839ae839d852831d581f32563b5e4f98b0256bd..7e9e5bb0e30e598f93dee2db343994d44e7e8ecc 100644 (file)
@@ -545,27 +545,6 @@ dns_view_detach(dns_view_t **viewp) {
        }
 }
 
-static isc_result_t
-dialup(dns_zone_t *zone, void *dummy) {
-       UNUSED(dummy);
-       dns_zone_dialup(zone);
-       return (ISC_R_SUCCESS);
-}
-
-void
-dns_view_dialup(dns_view_t *view) {
-       dns_zt_t *zonetable = NULL;
-
-       REQUIRE(DNS_VIEW_VALID(view));
-
-       rcu_read_lock();
-       zonetable = rcu_dereference(view->zonetable);
-       if (zonetable != NULL) {
-               (void)dns_zt_apply(zonetable, false, NULL, dialup, NULL);
-       }
-       rcu_read_unlock();
-}
-
 void
 dns_view_weakattach(dns_view_t *source, dns_view_t **targetp) {
        REQUIRE(DNS_VIEW_VALID(source));
index 056caffec248f510daf00493c61fc22d5e60d4b2..900844c87b66b65827ce4aba2e87781b9bafa099 100644 (file)
@@ -546,9 +546,6 @@ typedef enum {
                                                * are still using
                                                * default timer values) */
        DNS_ZONEFLG_FORCEXFER = 0x00008000U,   /*%< Force a zone xfer */
-       DNS_ZONEFLG_NOREFRESH = 0x00010000U,
-       DNS_ZONEFLG_DIALNOTIFY = 0x00020000U,
-       DNS_ZONEFLG_DIALREFRESH = 0x00040000U,
        DNS_ZONEFLG_SHUTDOWN = 0x00080000U,
        DNS_ZONEFLG_NOIXFR = 0x00100000U, /*%< IXFR failed, force AXFR */
        DNS_ZONEFLG_FLUSH = 0x00200000U,
@@ -11128,9 +11125,7 @@ zone_maintenance(dns_zone_t *zone) {
        case dns_zone_mirror:
        case dns_zone_stub:
                LOCK_ZONE(zone);
-               if (!DNS_ZONE_FLAG(zone, DNS_ZONEFLG_DIALREFRESH) &&
-                   isc_time_compare(&now, &zone->refreshtime) >= 0)
-               {
+               if (isc_time_compare(&now, &zone->refreshtime) >= 0) {
                        zone_refresh(zone);
                }
                UNLOCK_ZONE(zone);
@@ -12539,9 +12534,6 @@ notify_send_toaddr(void *arg) {
                goto cleanup_key;
        }
        udptimeout = 5;
-       if (DNS_ZONE_FLAG(notify->zone, DNS_ZONEFLG_DIALNOTIFY)) {
-               udptimeout = 30;
-       }
        timeout = 3 * udptimeout + 1;
 again:
        if ((notify->flags & DNS_NOTIFY_TCP) != 0) {
@@ -12713,14 +12705,6 @@ zone_notify(dns_zone_t *zone, isc_time_t *now) {
 
        origin = &zone->origin;
 
-       /*
-        * If the zone is dialup we are done as we don't want to send
-        * the current soa so as to force a refresh query.
-        */
-       if (DNS_ZONE_FLAG(zone, DNS_ZONEFLG_DIALNOTIFY)) {
-               flags |= DNS_NOTIFY_NOSOA;
-       }
-
        /*
         * Record that this was a notify due to starting up.
         */
@@ -14271,7 +14255,6 @@ soa_query(void *arg) {
        dns_transport_t *transport = NULL;
        uint32_t options;
        bool cancel = true;
-       int timeout;
        bool have_xfrsource = false, reqnsid, reqexpire;
        uint16_t udpsize = SEND_BUFFER_SIZE;
        isc_sockaddr_t curraddr, sourceaddr;
@@ -14433,10 +14416,8 @@ again:
        }
 
        zone_iattach(zone, &(dns_zone_t *){ NULL });
-       timeout = 5;
-       if (DNS_ZONE_FLAG(zone, DNS_ZONEFLG_DIALREFRESH)) {
-               timeout = 30;
-       }
+
+       int timeout = 5;
        result = dns_request_create(
                zone->view->requestmgr, message, &zone->sourceaddr, &curraddr,
                NULL, NULL, options, key, timeout * 3 + 1, timeout, 2,
@@ -14515,7 +14496,6 @@ ns_query(dns_zone_t *zone, dns_rdataset_t *soardataset, dns_stub_t *stub) {
        isc_netaddr_t primaryip;
        dns_tsigkey_t *key = NULL;
        dns_dbnode_t *node = NULL;
-       int timeout;
        bool have_xfrsource = false;
        bool reqnsid;
        uint16_t udpsize = SEND_BUFFER_SIZE;
@@ -14701,10 +14681,6 @@ ns_query(dns_zone_t *zone, dns_rdataset_t *soardataset, dns_stub_t *stub) {
                POST(result);
                goto cleanup;
        }
-       timeout = 5;
-       if (DNS_ZONE_FLAG(zone, DNS_ZONEFLG_DIALREFRESH)) {
-               timeout = 30;
-       }
 
        /*
         * Save request parameters so we can reuse them later on
@@ -14714,9 +14690,10 @@ ns_query(dns_zone_t *zone, dns_rdataset_t *soardataset, dns_stub_t *stub) {
        cb_args->stub = stub;
        cb_args->tsig_key = key;
        cb_args->udpsize = udpsize;
-       cb_args->timeout = timeout;
+       cb_args->timeout = 15;
        cb_args->reqnsid = reqnsid;
 
+       int timeout = 5;
        result = dns_request_create(
                zone->view->requestmgr, message, &zone->sourceaddr, &curraddr,
                NULL, NULL, DNS_REQUESTOPT_TCP, key, timeout * 3 + 1, timeout,
@@ -15019,7 +14996,6 @@ zone__settimer(void *arg) {
        case dns_zone_stub:
                if (!DNS_ZONE_FLAG(zone, DNS_ZONEFLG_REFRESH) &&
                    !DNS_ZONE_FLAG(zone, DNS_ZONEFLG_NOPRIMARIES) &&
-                   !DNS_ZONE_FLAG(zone, DNS_ZONEFLG_NOREFRESH) &&
                    !DNS_ZONE_FLAG(zone, DNS_ZONEFLG_LOADING) &&
                    !DNS_ZONE_FLAG(zone, DNS_ZONEFLG_LOADPENDING) &&
                    !isc_time_isepoch(&zone->refreshtime) &&
@@ -15380,13 +15356,10 @@ dns_zone_notifyreceive(dns_zone_t *zone, isc_sockaddr_t *from,
 
        /*
         * If the zone is loaded and there are answers check the serial
-        * to see if we need to do a refresh.  Do not worry about this
-        * check if we are a dialup zone as we use the notify request
-        * to trigger a refresh check.
+        * to see if we need to do a refresh.
         */
        if (msg->counts[DNS_SECTION_ANSWER] > 0 &&
-           DNS_ZONE_FLAG(zone, DNS_ZONEFLG_LOADED) &&
-           !DNS_ZONE_FLAG(zone, DNS_ZONEFLG_NOREFRESH))
+           DNS_ZONE_FLAG(zone, DNS_ZONEFLG_LOADED))
        {
                result = dns_message_findname(
                        msg, DNS_SECTION_ANSWER, &zone->origin,
@@ -19723,61 +19696,6 @@ dns_zone_getrcvquerystats(dns_zone_t *zone) {
        }
 }
 
-void
-dns_zone_dialup(dns_zone_t *zone) {
-       REQUIRE(DNS_ZONE_VALID(zone));
-
-       zone_debuglog(zone, __func__, 3, "notify = %d, refresh = %d",
-                     DNS_ZONE_FLAG(zone, DNS_ZONEFLG_DIALNOTIFY),
-                     DNS_ZONE_FLAG(zone, DNS_ZONEFLG_DIALREFRESH));
-
-       if (DNS_ZONE_FLAG(zone, DNS_ZONEFLG_DIALNOTIFY)) {
-               dns_zone_notify(zone);
-       }
-       if (zone->type != dns_zone_primary &&
-           dns_remote_addresses(&zone->primaries) != NULL &&
-           DNS_ZONE_FLAG(zone, DNS_ZONEFLG_DIALREFRESH))
-       {
-               dns_zone_refresh(zone);
-       }
-}
-
-void
-dns_zone_setdialup(dns_zone_t *zone, dns_dialuptype_t dialup) {
-       REQUIRE(DNS_ZONE_VALID(zone));
-
-       LOCK_ZONE(zone);
-       DNS_ZONE_CLRFLAG(zone, DNS_ZONEFLG_DIALNOTIFY |
-                                      DNS_ZONEFLG_DIALREFRESH |
-                                      DNS_ZONEFLG_NOREFRESH);
-       switch (dialup) {
-       case dns_dialuptype_no:
-               break;
-       case dns_dialuptype_yes:
-               DNS_ZONE_SETFLAG(zone, (DNS_ZONEFLG_DIALNOTIFY |
-                                       DNS_ZONEFLG_DIALREFRESH |
-                                       DNS_ZONEFLG_NOREFRESH));
-               break;
-       case dns_dialuptype_notify:
-               DNS_ZONE_SETFLAG(zone, DNS_ZONEFLG_DIALNOTIFY);
-               break;
-       case dns_dialuptype_notifypassive:
-               DNS_ZONE_SETFLAG(zone, DNS_ZONEFLG_DIALNOTIFY);
-               DNS_ZONE_SETFLAG(zone, DNS_ZONEFLG_NOREFRESH);
-               break;
-       case dns_dialuptype_refresh:
-               DNS_ZONE_SETFLAG(zone, DNS_ZONEFLG_DIALREFRESH);
-               DNS_ZONE_SETFLAG(zone, DNS_ZONEFLG_NOREFRESH);
-               break;
-       case dns_dialuptype_passive:
-               DNS_ZONE_SETFLAG(zone, DNS_ZONEFLG_NOREFRESH);
-               break;
-       default:
-               UNREACHABLE();
-       }
-       UNLOCK_ZONE(zone);
-}
-
 isc_result_t
 dns_zone_setkeydirectory(dns_zone_t *zone, const char *directory) {
        isc_result_t result = ISC_R_SUCCESS;
@@ -19943,10 +19861,9 @@ dns_zone_getxfr(dns_zone_t *zone, dns_xfrin_t **xfrp, bool *is_firstrefresh,
                 * No operation is ongoing or pending, just check if the zone
                 * needs a refresh by looking at the refresh and expire times.
                 */
-               if (!DNS_ZONE_FLAG(zone, DNS_ZONEFLG_DIALREFRESH) &&
-                   (zone->type == dns_zone_secondary ||
-                    zone->type == dns_zone_mirror ||
-                    zone->type == dns_zone_stub))
+               if (zone->type == dns_zone_secondary ||
+                   zone->type == dns_zone_mirror ||
+                   zone->type == dns_zone_stub)
                {
                        isc_time_t now = isc_time_now();
                        if (isc_time_compare(&now, &zone->refreshtime) >= 0 ||
index df5551b7356ffe259232e12617ea0be6271ed304..a51123b531364d4771af45cf35a7ca2162e2651b 100644 (file)
@@ -1253,7 +1253,6 @@ check_options(const cfg_obj_t *options, const cfg_obj_t *config,
         * (scale * value) <= UINT32_MAX
         */
        static intervaltable intervals[] = {
-               { "heartbeat-interval", 60, 28 * 24 * 60 },    /* 28 days */
                { "interface-interval", 60, 28 * 24 * 60 },    /* 28 days */
                { "max-transfer-idle-in", 60, 28 * 24 * 60 },  /* 28 days */
                { "max-transfer-idle-out", 60, 28 * 24 * 60 }, /* 28 days */
@@ -3116,12 +3115,6 @@ check_zoneconf(const cfg_obj_t *zconfig, const cfg_obj_t *voptions,
                "allow-update",
                "allow-update-forwarding",
        };
-       static optionstable dialups[] = {
-               { "notify", CFG_ZONE_PRIMARY | CFG_ZONE_SECONDARY },
-               { "notify-passive", CFG_ZONE_SECONDARY },
-               { "passive", CFG_ZONE_SECONDARY | CFG_ZONE_STUB },
-               { "refresh", CFG_ZONE_SECONDARY | CFG_ZONE_STUB },
-       };
        static const char *sources[] = {
                "transfer-source",  "transfer-source-v6", "notify-source",
                "notify-source-v6", "parental-source",    "parental-source-v6",
@@ -3745,42 +3738,6 @@ check_zoneconf(const cfg_obj_t *zconfig, const cfg_obj_t *voptions,
                }
        }
 
-       /*
-        * Check the excessively complicated "dialup" option.
-        */
-       if (ztype == CFG_ZONE_PRIMARY || ztype == CFG_ZONE_SECONDARY ||
-           ztype == CFG_ZONE_STUB)
-       {
-               obj = NULL;
-               (void)cfg_map_get(zoptions, "dialup", &obj);
-               if (obj != NULL && cfg_obj_isstring(obj)) {
-                       const char *str = cfg_obj_asstring(obj);
-                       for (i = 0; i < sizeof(dialups) / sizeof(dialups[0]);
-                            i++)
-                       {
-                               if (strcasecmp(dialups[i].name, str) != 0) {
-                                       continue;
-                               }
-                               if ((dialups[i].allowed & ztype) == 0) {
-                                       cfg_obj_log(obj, ISC_LOG_ERROR,
-                                                   "dialup type '%s' is not "
-                                                   "allowed in '%s' "
-                                                   "zone '%s'",
-                                                   str, typestr, znamestr);
-                                       result = ISC_R_FAILURE;
-                               }
-                               break;
-                       }
-                       if (i == sizeof(dialups) / sizeof(dialups[0])) {
-                               cfg_obj_log(obj, ISC_LOG_ERROR,
-                                           "invalid dialup type '%s' in zone "
-                                           "'%s'",
-                                           str, znamestr);
-                               result = ISC_R_FAILURE;
-                       }
-               }
-       }
-
        /*
         * Check that forwarding is reasonable.
         */
index 947432e00baae15a393401f11716ce584f2ddff2..09275a830a60bae7ea846a8b216c44e82a27bab1 100644 (file)
@@ -95,7 +95,6 @@ static cfg_type_t cfg_type_checkdstype;
 static cfg_type_t cfg_type_controls;
 static cfg_type_t cfg_type_controls_sockaddr;
 static cfg_type_t cfg_type_destinationlist;
-static cfg_type_t cfg_type_dialuptype;
 static cfg_type_t cfg_type_dlz;
 static cfg_type_t cfg_type_dnssecpolicy;
 static cfg_type_t cfg_type_dnstap;
@@ -1375,7 +1374,7 @@ static cfg_clausedef_t options_clauses[] = {
 #endif /* HAVE_GEOIP2 */
        { "geoip-use-ecs", NULL, CFG_CLAUSEFLAG_ANCIENT },
        { "has-old-clients", NULL, CFG_CLAUSEFLAG_ANCIENT },
-       { "heartbeat-interval", &cfg_type_uint32, CFG_CLAUSEFLAG_DEPRECATED },
+       { "heartbeat-interval", &cfg_type_uint32, CFG_CLAUSEFLAG_ANCIENT },
        { "host-statistics", NULL, CFG_CLAUSEFLAG_ANCIENT },
        { "host-statistics-max", NULL, CFG_CLAUSEFLAG_ANCIENT },
        { "hostname", &cfg_type_qstringornone, 0 },
@@ -2402,9 +2401,9 @@ static cfg_clausedef_t zone_clauses[] = {
        { "check-srv-cname", &cfg_type_checkmode, CFG_ZONE_PRIMARY },
        { "check-svcb", &cfg_type_boolean, CFG_ZONE_PRIMARY },
        { "check-wildcard", &cfg_type_boolean, CFG_ZONE_PRIMARY },
-       { "dialup", &cfg_type_dialuptype,
+       { "dialup", &cfg_type_void,
          CFG_ZONE_PRIMARY | CFG_ZONE_SECONDARY | CFG_ZONE_STUB |
-                 CFG_CLAUSEFLAG_DEPRECATED },
+                 CFG_CLAUSEFLAG_ANCIENT },
        { "dnssec-dnskey-kskonly", &cfg_type_boolean,
          CFG_ZONE_PRIMARY | CFG_ZONE_SECONDARY | CFG_CLAUSEFLAG_OBSOLETE },
        { "dnssec-loadkeys-interval", &cfg_type_uint32,
@@ -3108,20 +3107,6 @@ doc_optional_keyvalue(cfg_printer_t *pctx, const cfg_type_t *type) {
        cfg_print_cstr(pctx, " ]");
 }
 
-static const char *dialup_enums[] = { "notify", "notify-passive", "passive",
-                                     "refresh", NULL };
-static isc_result_t
-parse_dialup_type(cfg_parser_t *pctx, const cfg_type_t *type, cfg_obj_t **ret) {
-       return (cfg_parse_enum_or_other(pctx, type, &cfg_type_boolean, ret));
-}
-static void
-doc_dialup_type(cfg_printer_t *pctx, const cfg_type_t *type) {
-       cfg_doc_enum_or_other(pctx, type, &cfg_type_boolean);
-}
-static cfg_type_t cfg_type_dialuptype = { "dialuptype",             parse_dialup_type,
-                                         cfg_print_ustring, doc_dialup_type,
-                                         &cfg_rep_string,   dialup_enums };
-
 static const char *notify_enums[] = { "explicit", "master-only", "primary-only",
                                      NULL };
 static isc_result_t