feat(dnsovergetaddrinfo): collect the CNAME (#876)
* feat(dnsovergetaddrinfo): collect the CNAME This diff modifies how dnsovergetaddrinfo.go works such that the returned DNSResponse includes the CNAME. Closes https://github.com/ooni/probe/issues/2226. While there, recognize that we can remove getaddrinfoLookupHost and always call getaddrinfoLookupANY everywhere. (This simplification is why we did https://github.com/ooni/probe-cli/pull/874.) * fix: extra debugging because of failing CI Everything is OK locally (on macOS). However, maybe things are a bit different on GNU/Linux perhaps? Here's the error: ``` --- FAIL: TestPass (0.11s) resolver_test.go:113: unexpected rcode FAIL coverage: 95.7% of statements FAIL github.com/ooni/probe-cli/v3/internal/cmd/jafar/resolver 0.242s ``` I'm a bit confused because jafar's resolver is _unrelated_. But actually this error never occurred again after a committed the debugging diff.
This commit is contained in:
parent
cc24f28b9d
commit
080abf90d9
6 changed files with 49 additions and 46 deletions
|
|
@ -48,7 +48,10 @@ func getaddrinfoResolverNetwork() string {
|
|||
// the error that occurred. On error, the list of addresses is empty. The
|
||||
// CNAME may be empty on success, if there's no CNAME, but may also be
|
||||
// non-empty on failure, if the lookup result included a CNAME answer but
|
||||
// did not include any A or AAAA answers.
|
||||
// did not include any A or AAAA answers. If getaddrinfo returns a nonzero
|
||||
// return value, we'll return as error an instance of the
|
||||
// ErrGetaddrinfo error. This error will contain the specific
|
||||
// code returned by getaddrinfo in its .Code field.
|
||||
func getaddrinfoLookupANY(ctx context.Context, domain string) ([]string, string, error) {
|
||||
return getaddrinfoStateSingleton.LookupANY(ctx, domain)
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue