diff --git a/lib/dns/include/dns/zone.h b/lib/dns/include/dns/zone.h index 86f2f36329..e30ac2f73f 100644 --- a/lib/dns/include/dns/zone.h +++ b/lib/dns/include/dns/zone.h @@ -1555,7 +1555,7 @@ dns_zone_getprimaryaddr(dns_zone_t *zone); */ isc_time_t -dns_zone_getxfrintime(const dns_zone_t *zone); +dns_zone_getxfrintime(dns_zone_t *zone); /*%< * Get the start time of the zone's latest major step before an incoming zone * transfer is initiated. The time is set to the current time before the diff --git a/lib/dns/zone.c b/lib/dns/zone.c index f1567be0ba..51eb23890a 100644 --- a/lib/dns/zone.c +++ b/lib/dns/zone.c @@ -18169,10 +18169,16 @@ dns_zone_getprimaryaddr(dns_zone_t *zone) { } isc_time_t -dns_zone_getxfrintime(const dns_zone_t *zone) { +dns_zone_getxfrintime(dns_zone_t *zone) { + isc_time_t xfrintime; + REQUIRE(DNS_ZONE_VALID(zone)); - return (zone->xfrintime); + LOCK_ZONE(zone); + xfrintime = zone->xfrintime; + UNLOCK_ZONE(zone); + + return (xfrintime); } static void