Updating the PSL while Firefox is running could cause principals to have
a different base domain before/after the update.
See bug 1582647 comment 30
Differential Revision: https://phabricator.services.mozilla.com/D55014
--HG--
extra : moz-landing-system : lando
Add static CopyFrom method which is to be used in a follow-up patch. The static method takes a nsIWritablePropertyBag so that we don't need to cast to the concrete class.
Differential Revision: https://phabricator.services.mozilla.com/D53923
--HG--
extra : moz-landing-system : lando
- Adds the `network.trr.enable_when_vpn_detected` defaulting to false. This means detecting a PPP adapter will make IsExcludedFromTRR always return true - it does not affect the `network.trr.mode` pref.
- Adds a test that when nsINetworkLinkService.vpnDetected is true we skip all TRR requests
- Makes it so we update the excludedDomains list and VPN detected status for TRR on any network:link-status-changed observer notification that is received.
Differential Revision: https://phabricator.services.mozilla.com/D53356
--HG--
extra : moz-landing-system : lando
- Since IsExcludedFromTRR may be called from multiple threads we should make sure that the member variables it uses are either atomic or locked.
- Makes IsTRRBlacklisted call IsExcludedFromTRR instead of querying variables again.
- Removes hardcoded checks for localhost and .local, since these are included in network.trr.builtin-excluded-domains
Differential Revision: https://phabricator.services.mozilla.com/D53984
--HG--
extra : moz-landing-system : lando
This patch fixes two issues where we may mistakenly load a TRR record even though the host is part of the excluded-domains list:
1. If a.com is part of the excluded domains, but b.com is not, then when we first resolve b.com using TRR, the server may also push the record for a.com; Previously we didn't check if the pushed record is also excluded, which could lead us to load it from the TRR cache.
2. If b.com is resolved using TRR, but later b.com is added to the excluded-domains list, we may mistakenly load b.com from the TRR cache, even though we should use platform DNS for it.
Differential Revision: https://phabricator.services.mozilla.com/D53354
--HG--
extra : moz-landing-system : lando
- Adds the `network.trr.enable_when_vpn_detected` defaulting to false. This means detecting a PPP adapter will make IsExcludedFromTRR always return true - it does not affect the `network.trr.mode` pref.
- Adds a test that when nsINetworkLinkService.vpnDetected is true we skip all TRR requests
- Makes it so we update the excludedDomains list and VPN detected status for TRR on any network:link-status-changed observer notification that is received.
Differential Revision: https://phabricator.services.mozilla.com/D53356
--HG--
extra : moz-landing-system : lando
Previously we had no way from excluding just one channel from TRR mode3.
The solution was to add the captive portal domain to the exclusion list.
Now the captive portal channel is marked with nsIRequest.DISABLE_TRR_MODE so
the exclusion is not necessary anymore.
Differential Revision: https://phabricator.services.mozilla.com/D48820
--HG--
extra : moz-landing-system : lando
* Makes it possible to selectively enable TRR for pbmode/container/window/etc
Differential Revision: https://phabricator.services.mozilla.com/D48363
--HG--
extra : moz-landing-system : lando
Previously we had no way from excluding just one channel from TRR mode3.
The solution was to add the captive portal domain to the exclusion list.
Now the captive portal channel is marked with nsIRequest.DISABLE_TRR_MODE so
the exclusion is not necessary anymore.
Differential Revision: https://phabricator.services.mozilla.com/D48820
--HG--
extra : moz-landing-system : lando
* Makes it possible to selectively enable TRR for pbmode/container/window/etc
Differential Revision: https://phabricator.services.mozilla.com/D48363
--HG--
extra : moz-landing-system : lando
Previously we had no way from excluding just one channel from TRR mode3.
The solution was to add the captive portal domain to the exclusion list.
Now the captive portal channel is marked with nsIRequest.DISABLE_TRR_MODE so
the exclusion is not necessary anymore.
Differential Revision: https://phabricator.services.mozilla.com/D48820
--HG--
extra : moz-landing-system : lando
* Makes it possible to selectively enable TRR for pbmode/container/window/etc
Differential Revision: https://phabricator.services.mozilla.com/D48363
--HG--
extra : moz-landing-system : lando
Lots of these callbacks have a non-`void*` final parameter, which UBSAN
complains about. This commit changes them to have a `void*` parameter.
This requires undoing the machinery added in the first two commits of bug
1473631: `TypePrefChangeFunc` and `PREF_CHANGE_METHOD`. The resulting code is
simpler (which is good) and more boilerplate-y (which is bad) but avoids the
undefined behaviour (which is good).
Differential Revision: https://phabricator.services.mozilla.com/D50901
--HG--
extra : moz-landing-system : lando