Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(dns): expose more low-level fields #873

Merged
merged 11 commits into from
Aug 23, 2022
Merged

feat(dns): expose more low-level fields #873

merged 11 commits into from
Aug 23, 2022

Conversation

bassosimone
Copy link
Contributor

@bassosimone bassosimone commented Aug 22, 2022

This pull request started as a draft to enable users to see CNAME answers. It contained several patches which we merged separately (see #873 (comment) and 2301a30...60b7d1f for details on what has actually changed, which is based on patches originally part of this PR). In its final form, however, this PR only deals with exposing more low-level DNS fields to the archival data format.

Closes: ooni/probe#2228

Related PR spec: ooni/spec#256

We were using this type to write tests ~one year ago but, as of
today, this type is mostly unused. Make it actually unused, which
helps moving ooni/probe#1516 forward.
This diff extends measurexlite's extractor to include into the
DNS response we submit the raw response we received.

The reference issue is ooni/probe#1516
Rather than discarding the CNAME, make sure we can actually
get the CNAME inside of the main LookupHost function.

Part of ooni/probe#1516.
@bassosimone
Copy link
Contributor Author

bassosimone commented Aug 22, 2022

Here's what is currently missing:

  • move trace based code from resolvercore.go to dnsovergetaddrinfo.go
  • (probably) remove addrs from the arguments passed to DNS callbacks
  • modify measurexlite to extract from the DNSResponse

When all of this is done, dnsping (and any other measurexlite based code) can see the CNAME.

All this work as been done in other PRs that extracted patches from this one, for clarity.

@bassosimone bassosimone changed the title feat(measurexlite): make CNAME available feat(dns): expose more low-level fields Aug 23, 2022
@bassosimone bassosimone marked this pull request as ready for review August 23, 2022 13:49
@bassosimone bassosimone requested a review from hellais as a code owner August 23, 2022 13:49
bassosimone added a commit to ooni/spec that referenced this pull request Aug 23, 2022
@bassosimone bassosimone merged commit c9943df into master Aug 23, 2022
@bassosimone bassosimone deleted the issue/1516 branch August 23, 2022 14:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

measurexlite: include raw dns reply, rcode, and getaddrinfo retval
1 participant