DNS: fix agent returning SERVFAIL where NXDOMAIN should be returned

This commit is contained in:
Yury Evtikhov 2020-06-30 23:03:31 +01:00
parent 4e5ce6d4a7
commit c594dfa1e6
2 changed files with 5 additions and 1 deletions

View File

@ -829,7 +829,7 @@ func (d *DNSServer) computeRCode(err error) int {
return dns.RcodeSuccess
}
dErr := err.Error()
if dErr == structs.ErrNoDCPath.Error() || dErr == consul.ErrQueryNotFound.Error() {
if structs.IsErrNoDCPath(err) || dErr == consul.ErrQueryNotFound.Error() {
return dns.RcodeNameError
}
return dns.RcodeServerFailure

View File

@ -26,6 +26,10 @@ var (
ErrDCNotAvailable = errors.New(errDCNotAvailable)
)
func IsErrNoDCPath(err error) bool {
return err != nil && strings.Contains(err.Error(), errNoDCPath)
}
func IsErrNoLeader(err error) bool {
return err != nil && strings.Contains(err.Error(), errNoLeader)
}