From e240d8150cf7b40587acd306a5bfa2b813a94010 Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Sun, 2 Jun 2024 22:06:38 +0200 Subject: [PATCH] net: handle more error strings in lookupCNAME on Plan 9 On Plan 9, the queryDNS function could return an error string, which was not handled in lookupCNAME. This change fixes lookupCNAME by handling the "resource does not exist; negrcode" error string. Fixes #67776. Change-Id: I73f3286b9524a504212ba4303606a245b4962b1f Reviewed-on: https://go-review.googlesource.com/c/go/+/589715 Reviewed-by: Ian Lance Taylor Run-TryBot: David du Colombier <0intro@gmail.com> TryBot-Bypass: David du Colombier <0intro@gmail.com> Reviewed-by: Mauri de Souza Meneguzzo Reviewed-by: Dmitri Shuralyov --- src/net/lookup_plan9.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/net/lookup_plan9.go b/src/net/lookup_plan9.go index 5c869374f6..e3e371611f 100644 --- a/src/net/lookup_plan9.go +++ b/src/net/lookup_plan9.go @@ -257,7 +257,9 @@ func (r *Resolver) lookupCNAME(ctx context.Context, name string) (cname string, lines, err := queryDNS(ctx, name, "cname") if err != nil { - if stringslite.HasSuffix(err.Error(), "dns failure") || stringslite.HasSuffix(err.Error(), "resource does not exist; negrcode 0") { + if stringslite.HasSuffix(err.Error(), "dns failure") || + stringslite.HasSuffix(err.Error(), "resource does not exist; negrcode 0") || + stringslite.HasSuffix(err.Error(), "resource does not exist; negrcode") { return absDomainName(name), nil } return "", handlePlan9DNSError(err, cname) -- 2.48.1