Closed Bug 1626057 Opened 4 years ago Closed 4 years ago

Implement TRR steering platform APIs

Categories

(Core :: Networking: DNS, task, P2)

task

Tracking

()

RESOLVED FIXED
mozilla77
Tracking Status
firefox77 --- fixed

People

(Reporter: valentin, Assigned: valentin)

References

Details

(Whiteboard: [necko-triaged][trr])

Attachments

(7 files, 1 obsolete file)

We need the rollout addon to be able to query a DNS name and map the CNAME response to one of the TRR URIs in our list.
That URI should be used for that network, if no user choices are present that say it shouldn't be used.

TBD:

  • who checks that we don't overwrite a user set trr.uri pref?
    Should we do it in the addon or platform? I assume it should be the platform, but it's unclear how we would differentiate trr.uri set by the user, from trr.uri set by the rollout, when we start migrating users to other providers. We need to figure out a way to do that.
  • who resets the URI on network change?
    Again, I assume it would be the platform, and the addon just runs heuristics again, and if needed calls the method again. During this time we'd be using the "default" URI.
Attachment #9136919 - Attachment description: Bug 1626057 - [WIP] doh-rollout steering detection → Bug 1626057 - [WIP] doh-rollout steering detection r=dragana

Considering that we want to have multiple default TRR providers that are
chosen by the doh-rollout addon, it becomes too complex for the addon
to keep track of all of the prefs it changes, while at the same time
figuring out if the user has ever touched the same prefs.

As such, we will make the distinction that doh-rollout.uri is only
set by the rollout addon, and network.trr.uri is only set by user action.
So, when the any of the uri prefs change, we choose them like this:

  1. The user provider URI
  2. The addon chosen URI
  3. The default pref URI

Depends on D69373

This patch also exposes nsIDNSService.currentTrrURI to be used by the UI
to display the URI currently in use by the TRR service.

Depends on D71659

Summary: Implement TRR steering heuristics → Implement TRR platform APIs
Blocks: 1631609

Comment on attachment 9136919 [details]
Bug 1626057 - [WIP] doh-rollout steering detection r=dragana

Revision D68889 was moved to bug 1631609. Setting attachment 9136919 [details] to obsolete.

Attachment #9136919 - Attachment is obsolete: true
Summary: Implement TRR platform APIs → Implement TRR steering platform APIs
Regressions: 1633614
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla77
No longer regressions: 1633614
Group: mozilla-employee-confidential
Regressions: 1732361
No longer regressions: 1732361
Regressions: 1732961
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: