diff options
-rw-r--r-- | plugin/file/file.go | 5 | ||||
-rw-r--r-- | plugin/file/zone.go | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/plugin/file/file.go b/plugin/file/file.go index c63fa43f5..8e10499fa 100644 --- a/plugin/file/file.go +++ b/plugin/file/file.go @@ -69,7 +69,10 @@ func (f File) ServeDNS(ctx context.Context, w dns.ResponseWriter, r *dns.Msg) (i return dns.RcodeSuccess, nil } - if z.Expired != nil && *z.Expired { + z.RLock() + exp := z.Expired + z.RUnlock() + if exp != nil && *exp { log.Errorf("Zone %s is expired", zone) return dns.RcodeServerFailure, nil } diff --git a/plugin/file/zone.go b/plugin/file/zone.go index 1fcfc5d33..d3adca29e 100644 --- a/plugin/file/zone.go +++ b/plugin/file/zone.go @@ -22,13 +22,13 @@ type Zone struct { file string *tree.Tree Apex + Expired *bool sync.RWMutex TransferTo []string StartupOnce sync.Once TransferFrom []string - Expired *bool ReloadInterval time.Duration reloadShutdown chan bool |