Skip to content

Commit ef3fff0

Browse files
committed
treat context cancellation as terminal error
1 parent 3dbc5d9 commit ef3fff0

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

resolver.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,14 @@ func (r *resolver) discoverRootServers(ctx context.Context, trace *Trace) ([]str
449449
}
450450

451451
func isTerminal(resp *dns.Msg, err error) bool {
452-
return errors.Is(err, ErrCircular)
452+
switch {
453+
case errors.Is(err, ErrCircular),
454+
errors.Is(err, context.Canceled),
455+
errors.Is(err, context.DeadlineExceeded):
456+
return true
457+
default:
458+
return false
459+
}
453460
}
454461

455462
func (r *resolver) referrals(m *dns.Msg) (ips, names []string) {

0 commit comments

Comments
 (0)