]> git.ipfire.org Git - thirdparty/bind9.git/commit
Fix the incoming transfers' "Needs Refresh" state in stats channel
authorAram Sargsyan <aram@isc.org>
Tue, 19 Sep 2023 09:38:35 +0000 (09:38 +0000)
committerAram Sargsyan <aram@isc.org>
Fri, 22 Sep 2023 11:47:26 +0000 (11:47 +0000)
commit93088fbf8bb592d4704a86b2b57c29a4083b5cc6
treebc41eb4f6458bfe66f6948a435809dc8553ba584
parent621a1461d9ef83ca734459af253b3f7f21cc0dba
Fix the incoming transfers' "Needs Refresh" state in stats channel

The "Needs Refresh" flag is exposed in two places in the statistics
channel: first - there is a state called "Needs Refresh", when the
process hasn't started yet, but the zone needs a refresh, and second
- there there is a field called "Additional Refresh Queued", when the
process is ongoing, but another refresh is queued for the same zone.

The DNS_ZONEFLG_NEEDREFRESH flag, however, is set only when there is
an ongoing zone transfer and a new notify is received. That is, the
flag is not set for the first case above.

In order to fix the issue, use the DNS_ZONEFLG_NEEDREFRESH flag only
when the zone transfer is running, otherwise, decide whether a zone
needs a refresh using its refresh and expire times.
bin/named/statschannel.c
doc/arm/reference.rst
lib/dns/zone.c