mirror of
https://github.com/isc-projects/bind9.git
synced 2026-06-11 11:29:59 -04:00
4563. [bug] Modified zones would occasionally fail to reload.
[RT #39424]
(cherry picked from commit dfe3068ef3)
This commit is contained in:
parent
486f8e6644
commit
da23e32e41
2 changed files with 15 additions and 1 deletions
3
CHANGES
3
CHANGES
|
|
@ -1,3 +1,6 @@
|
|||
4563. [bug] Modified zones would occasionally fail to reload.
|
||||
[RT #39424]
|
||||
|
||||
4561. [port] Silence a warning in strict C99 compilers. [RT #44414]
|
||||
|
||||
4560. [bug] mdig: add -m option to enable memory debugging rather
|
||||
|
|
|
|||
|
|
@ -1828,7 +1828,6 @@ zone_touched(dns_zone_t *zone) {
|
|||
return (ISC_TRUE);
|
||||
}
|
||||
|
||||
|
||||
return (ISC_FALSE);
|
||||
}
|
||||
|
||||
|
|
@ -1908,6 +1907,8 @@ zone_load(dns_zone_t *zone, unsigned int flags, isc_boolean_t locked) {
|
|||
* been loaded yet, zone->loadtime will be the epoch.
|
||||
*/
|
||||
if (zone->masterfile != NULL) {
|
||||
isc_time_t filetime;
|
||||
|
||||
/*
|
||||
* The file is already loaded. If we are just doing a
|
||||
* "rndc reconfig", we are done.
|
||||
|
|
@ -1927,6 +1928,16 @@ zone_load(dns_zone_t *zone, unsigned int flags, isc_boolean_t locked) {
|
|||
result = DNS_R_UPTODATE;
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* If the file modification time is in the past
|
||||
* set loadtime to that value.
|
||||
*/
|
||||
result = isc_file_getmodtime(zone->masterfile, &filetime);
|
||||
if (result == ISC_R_SUCCESS &&
|
||||
isc_time_compare(&loadtime, &filetime) > 0)
|
||||
loadtime = filetime;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in a new issue