From 3cc1e5e12a2ce3d3ba6d3e51901e8fee3666a2ee Mon Sep 17 00:00:00 2001 From: Evan Hunt Date: Mon, 3 Jul 2023 16:34:22 -0700 Subject: [PATCH] deprecate "dialup" and "heartbeat-interval" these options concentrate zone maintenance actions into bursts for the benefit of servers with intermittent connections. that's no longer something we really need to optimize. (cherry picked from commit eeeccec67cafb7a0ab863532ed631fbacc339a26) --- bin/tests/system/checkconf/deprecated.conf | 3 +++ bin/tests/system/checkconf/tests.sh | 2 ++ doc/arm/reference.rst | 8 ++++++-- doc/misc/options | 6 +++--- doc/misc/primary.zoneopt | 2 +- doc/misc/secondary.zoneopt | 2 +- doc/misc/stub.zoneopt | 2 +- lib/isccfg/namedconf.c | 5 +++-- 8 files changed, 20 insertions(+), 10 deletions(-) diff --git a/bin/tests/system/checkconf/deprecated.conf b/bin/tests/system/checkconf/deprecated.conf index 1185374510..e332f6e4dd 100644 --- a/bin/tests/system/checkconf/deprecated.conf +++ b/bin/tests/system/checkconf/deprecated.conf @@ -18,6 +18,9 @@ server 1.2.3.4 { options { dnssec-validation yes; + 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; }; diff --git a/bin/tests/system/checkconf/tests.sh b/bin/tests/system/checkconf/tests.sh index 6604a2ab58..b3aca64c09 100644 --- a/bin/tests/system/checkconf/tests.sh +++ b/bin/tests/system/checkconf/tests.sh @@ -173,6 +173,8 @@ grep "option 'delegation-only' is deprecated" < checkconf.out$n.1 > /dev/null || grep "option 'tkey-dhkey' is deprecated" < checkconf.out$n.1 > /dev/null || ret=1 grep "option 'root-delegation-only' is deprecated" < checkconf.out$n.1 > /dev/null || ret=1 grep "'type delegation-only' 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 "token 'port' is deprecated" < checkconf.out$n.1 > /dev/null || ret=1 if [ $ret -ne 0 ]; then echo_i "failed"; fi status=$((status + ret)) diff --git a/doc/arm/reference.rst b/doc/arm/reference.rst index bc294a676e..178c26c97f 100644 --- a/doc/arm/reference.rst +++ b/doc/arm/reference.rst @@ -2055,9 +2055,11 @@ Boolean Options record ` is specified on the command line, in which case it is ``yes``. .. namedconf:statement:: dialup - :tags: transfer + :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 @@ -4028,7 +4030,7 @@ Periodic Task Intervals ^^^^^^^^^^^^^^^^^^^^^^^ .. namedconf:statement:: heartbeat-interval - :tags: zone + :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 @@ -4037,6 +4039,8 @@ Periodic Task Intervals 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. diff --git a/doc/misc/options b/doc/misc/options index 78eaa1f582..017f1a5c96 100644 --- a/doc/misc/options +++ b/doc/misc/options @@ -98,7 +98,7 @@ options { datasize ( default | unlimited | ); // deprecated deny-answer-addresses { ; ... } [ except-from { ; ... } ]; deny-answer-aliases { ; ... } [ except-from { ; ... } ]; - dialup ( notify | notify-passive | passive | refresh | ); + dialup ( notify | notify-passive | passive | refresh | ); // deprecated directory ; disable-algorithms { ; ... }; // may occur multiple times disable-ds-digests { ; ... }; // may occur multiple times @@ -151,7 +151,7 @@ options { fstrm-set-reopen-interval ; // not configured geoip-directory ( | none ); glue-cache ; // deprecated - heartbeat-interval ; + heartbeat-interval ; // deprecated hostname ( | none ); http-listener-clients ; http-port ; @@ -404,7 +404,7 @@ view [ ] { clients-per-query ; deny-answer-addresses { ; ... } [ except-from { ; ... } ]; deny-answer-aliases { ; ... } [ except-from { ; ... } ]; - dialup ( notify | notify-passive | passive | refresh | ); + dialup ( notify | notify-passive | passive | refresh | ); // deprecated disable-algorithms { ; ... }; // may occur multiple times disable-ds-digests { ; ... }; // may occur multiple times disable-empty-zone ; // may occur multiple times diff --git a/doc/misc/primary.zoneopt b/doc/misc/primary.zoneopt index 6217bb76ab..8f646e3560 100644 --- a/doc/misc/primary.zoneopt +++ b/doc/misc/primary.zoneopt @@ -18,7 +18,7 @@ zone [ ] { check-srv-cname ( fail | warn | ignore ); check-wildcard ; database ; - dialup ( notify | notify-passive | passive | refresh | ); + dialup ( notify | notify-passive | passive | refresh | ); // deprecated dlz ; dnskey-sig-validity ; dnssec-dnskey-kskonly ; diff --git a/doc/misc/secondary.zoneopt b/doc/misc/secondary.zoneopt index fb5830910c..3237aab04d 100644 --- a/doc/misc/secondary.zoneopt +++ b/doc/misc/secondary.zoneopt @@ -11,7 +11,7 @@ zone [ ] { auto-dnssec ( allow | maintain | off ); // deprecated check-names ( fail | warn | ignore ); database ; - dialup ( notify | notify-passive | passive | refresh | ); + dialup ( notify | notify-passive | passive | refresh | ); // deprecated dlz ; dnskey-sig-validity ; dnssec-dnskey-kskonly ; diff --git a/doc/misc/stub.zoneopt b/doc/misc/stub.zoneopt index c7bcbeef09..29c1d56e3f 100644 --- a/doc/misc/stub.zoneopt +++ b/doc/misc/stub.zoneopt @@ -5,7 +5,7 @@ zone [ ] { check-names ( fail | warn | ignore ); database ; delegation-only ; // deprecated - dialup ( notify | notify-passive | passive | refresh | ); + dialup ( notify | notify-passive | passive | refresh | ); // deprecated file ; forward ( first | only ); forwarders [ port ] { ( | ) [ port ]; ... }; diff --git a/lib/isccfg/namedconf.c b/lib/isccfg/namedconf.c index c500bce9b8..918d3c0a94 100644 --- a/lib/isccfg/namedconf.c +++ b/lib/isccfg/namedconf.c @@ -1274,7 +1274,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, 0 }, + { "heartbeat-interval", &cfg_type_uint32, CFG_CLAUSEFLAG_DEPRECATED }, { "host-statistics", NULL, CFG_CLAUSEFLAG_ANCIENT }, { "host-statistics-max", NULL, CFG_CLAUSEFLAG_ANCIENT }, { "hostname", &cfg_type_qstringornone, 0 }, @@ -2264,7 +2264,8 @@ static cfg_clausedef_t zone_clauses[] = { { "check-srv-cname", &cfg_type_checkmode, CFG_ZONE_PRIMARY }, { "check-wildcard", &cfg_type_boolean, CFG_ZONE_PRIMARY }, { "dialup", &cfg_type_dialuptype, - CFG_ZONE_PRIMARY | CFG_ZONE_SECONDARY | CFG_ZONE_STUB }, + CFG_ZONE_PRIMARY | CFG_ZONE_SECONDARY | CFG_ZONE_STUB | + CFG_CLAUSEFLAG_DEPRECATED }, { "dnssec-dnskey-kskonly", &cfg_type_boolean, CFG_ZONE_PRIMARY | CFG_ZONE_SECONDARY }, { "dnssec-loadkeys-interval", &cfg_type_uint32,