]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Always call zone_settimer()
authorMark Andrews <marka@isc.org>
Thu, 27 Feb 2020 06:43:26 +0000 (17:43 +1100)
committerMark Andrews <marka@isc.org>
Tue, 3 Mar 2020 05:17:30 +0000 (16:17 +1100)
zone_needdump() could potentially not call zone_settimer() so
explitly call zone_settimer() as zone->resigntime could have
gone backward.

(cherry picked from commit 5ec57f31b0cca77f2629bac888c323cd619979ee)

lib/dns/zone.c

index 893bf475ca73806a1a145ad83892493d921b7dd9..12e1f6d4e850092f44758254a4319cb2ebab3aa8 100644 (file)
@@ -10338,8 +10338,14 @@ dns_zone_markdirty(dns_zone_t *zone) {
                }
 
                /* XXXMPA make separate call back */
-               if (result == ISC_R_SUCCESS)
+               if (result == ISC_R_SUCCESS) {
                        set_resigntime(zone);
+                       if (zone->task != NULL) {
+                               isc_time_t now;
+                               TIME_NOW(&now);
+                               zone_settimer(zone, &now);
+                       }
+               }
        }
        if (secure != NULL)
                UNLOCK_ZONE(secure);