]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
update refreshkeytime
authorMark Andrews <marka@isc.org>
Thu, 27 Dec 2018 02:44:16 +0000 (13:44 +1100)
committerMark Andrews <marka@isc.org>
Wed, 9 Jan 2019 08:48:58 +0000 (19:48 +1100)
(cherry picked from commit ca977e39767902612498776db4609456b600d108)

lib/dns/zone.c

index 9553587281d043d7cd220b30963455b6e9807438..4d71156f04456525c9cfb4fc1430dba38fa1ae9b 100644 (file)
@@ -9852,6 +9852,7 @@ zone_refreshkeys(dns_zone_t *zone) {
        isc_stdtime_t now;
        bool commit = false;
        bool fetching = false, fetch_err = false;
+       bool timerset = false;
 
        ENTER;
        REQUIRE(zone->db != NULL);
@@ -9917,6 +9918,9 @@ zone_refreshkeys(dns_zone_t *zone) {
                        /* Or do we just need to refresh the keyset? */
                        if (timer > kd.refresh)
                                timer = kd.refresh;
+
+                       set_refreshkeytimer(zone, &kd, now, false);
+                       timerset = true;
                }
 
                if (timer > now)
@@ -10021,6 +10025,8 @@ zone_refreshkeys(dns_zone_t *zone) {
                isc_time_formattimestamp(&zone->refreshkeytime, timebuf, 80);
                dns_zone_log(zone, ISC_LOG_DEBUG(1), "retry key refresh: %s",
                             timebuf);
+       } else if (!timerset) {
+               isc_time_settoepoch(&zone->refreshkeytime);
        }
 
        if (!fetching)