From: Mark Andrews Date: Tue, 24 Sep 2013 23:51:38 +0000 (+1000) Subject: 3654. [bug] Address race condition with manual notify requests. X-Git-Tag: v9.6-ESV-R11b1~54 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=26dcdf0de8690f4ac142e02a662cf0e20804096a;p=thirdparty%2Fbind9.git 3654. [bug] Address race condition with manual notify requests. [RT #34806] (cherry picked from commit 5116f25421090dffe637eb8f6cf7b44acd83678b) --- diff --git a/CHANGES b/CHANGES index 81d8b4feb8d..0285da84150 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +3654. [bug] Address race condition with manual notify requests. + [RT #34806] + 3653. [func] Create delegations for all "children" of empty zones except "forward first". [RT #34826] diff --git a/lib/dns/zone.c b/lib/dns/zone.c index 187caf744cf..5e305d574d2 100644 --- a/lib/dns/zone.c +++ b/lib/dns/zone.c @@ -8732,10 +8732,10 @@ zone_settimer(dns_zone_t *zone, isc_time_t *now) { isc_time_compare(&zone->refreshtime, &next) < 0) next = zone->refreshtime; } - if (DNS_ZONE_FLAG(zone, DNS_ZONEFLG_LOADED)) { - INSIST(!isc_time_isepoch(&zone->expiretime)); + if (DNS_ZONE_FLAG(zone, DNS_ZONEFLG_LOADED) && + !isc_time_isepoch(&zone->expiretime)) { if (isc_time_isepoch(&next) || - isc_time_compare(&zone->expiretime, &next) < 0) + isc_time_compare(&zone->expiretime, &next) < 0) next = zone->expiretime; } if (DNS_ZONE_FLAG(zone, DNS_ZONEFLG_NEEDDUMP) &&