package resolver import "errors" // Sentinel errors returned by the resolver. var ( // ErrNoNameservers is returned when no authoritative NS // could be discovered for a domain. ErrNoNameservers = errors.New( "no authoritative nameservers found", ) // ErrNoNameserverAnswered is returned when every nameserver // asked about a name timed out, failed or returned a referral, // so whether the name has addresses is unknown. ErrNoNameserverAnswered = errors.New("no nameserver answered") // ErrUnusableReply is returned when a server replied with an // error such as SERVFAIL, or with a referral that leads no // closer to the name asked about. ErrUnusableReply = errors.New( "reply is an error or a referral that leads no closer", ) // ErrIntercepted is returned when every root server refused a // query. Root servers refuse no query, so the refusals came from // something on the network answering in their place. ErrIntercepted = errors.New("this network intercepts DNS queries") // ErrCNAMEDepthExceeded is returned when a CNAME chain // exceeds MaxCNAMEDepth. ErrCNAMEDepthExceeded = errors.New( "CNAME chain depth exceeded", ) // ErrContextCanceled wraps context cancellation for the // resolver's iterative queries. ErrContextCanceled = errors.New("context canceled") )