`completed bool` just means `err == nil` after CL 446179.
While here, add a test for cgoLookupCNAME.
Co-authored-by: Mateusz Poliwczak <mpoliwczak34@gmail.com>
Change-Id: I6081a089fde3cb27af4fbde6f04301fc3755272c
Reviewed-on: https://go-review.googlesource.com/c/go/+/698615
Reviewed-by: Damien Neil <dneil@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Sean Liao <sean@liao.dev>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Auto-Submit: Sean Liao <sean@liao.dev>
Reviewed-by: Mateusz Poliwczak <mpoliwczak34@gmail.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
panic("cgo stub: cgo not available")
}
-func cgoLookupCNAME(ctx context.Context, name string) (cname string, err error, completed bool) {
+func cgoLookupCNAME(ctx context.Context, name string) (cname string, err error) {
panic("cgo stub: cgo not available")
}
return nil, 0
}
-func cgoLookupCNAME(ctx context.Context, name string) (cname string, err error, completed bool) {
+func cgoLookupCNAME(ctx context.Context, name string) (cname string, err error) {
resources, err := resSearch(ctx, name, int(dnsmessage.TypeCNAME), int(dnsmessage.ClassINET))
if err != nil {
- return
+ return "", err
}
cname, err = parseCNAMEFromResources(resources)
if err != nil {
- return "", err, false
+ return "", err
}
- return cname, nil, true
+ return cname, nil
}
// resSearch will make a call to the 'res_nsearch' routine in the C library
import (
"context"
+ "internal/testenv"
"testing"
)
t.Error(err)
}
}
+
+func TestCgoLookupCNAME(t *testing.T) {
+ mustHaveExternalNetwork(t)
+ testenv.SkipFlakyNet(t)
+ defer dnsWaitGroup.Wait()
+ if _, err := cgoLookupCNAME(t.Context(), "www.iana.org."); err != nil {
+ t.Error(err)
+ }
+}
func (r *Resolver) lookupCNAME(ctx context.Context, name string) (string, error) {
order, conf := systemConf().hostLookupOrder(r, name)
if order == hostLookupCgo {
- if cname, err, ok := cgoLookupCNAME(ctx, name); ok {
- return cname, err
+ if cname, err := cgoLookupCNAME(ctx, name); err == nil {
+ return cname, nil
}
}
return r.goLookupCNAME(ctx, name, order, conf)