diff --git a/docshell/base/nsAboutRedirector.cpp b/docshell/base/nsAboutRedirector.cpp index 56efb7aed723..7b10bd1b682f 100644 --- a/docshell/base/nsAboutRedirector.cpp +++ b/docshell/base/nsAboutRedirector.cpp @@ -108,7 +108,7 @@ static const RedirEntry kRedirMap[] = { {"credits", "https://www.mozilla.org/credits/", nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT | nsIAboutModule::URI_MUST_LOAD_IN_CHILD}, - {"fingerprinting", + {"fingerprintingprotection", "chrome://global/content/usercharacteristics/usercharacteristics.html", nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT | nsIAboutModule::HIDE_FROM_ABOUTABOUT | nsIAboutModule::ALLOW_SCRIPT | diff --git a/docshell/build/components.conf b/docshell/build/components.conf index bcc6542d673c..4742adc30a7d 100644 --- a/docshell/build/components.conf +++ b/docshell/build/components.conf @@ -16,7 +16,7 @@ about_pages = [ 'crashgpu', 'crashextensions', 'credits', - 'fingerprinting', + 'fingerprintingprotection', 'httpsonlyerror', 'license', 'logging', diff --git a/dom/security/nsContentSecurityUtils.cpp b/dom/security/nsContentSecurityUtils.cpp index 7bcbbdd002f1..1f0801361758 100644 --- a/dom/security/nsContentSecurityUtils.cpp +++ b/dom/security/nsContentSecurityUtils.cpp @@ -1363,20 +1363,20 @@ void nsContentSecurityUtils::AssertAboutPageHasCSP(Document* aDocument) { "about: page must contain a CSP denying object-src"); // preferences and downloads allow legacy inline scripts through hash src. - MOZ_ASSERT(!foundScriptSrc || - StringBeginsWith(aboutSpec, "about:preferences"_ns) || - StringBeginsWith(aboutSpec, "about:settings"_ns) || - StringBeginsWith(aboutSpec, "about:downloads"_ns) || - StringBeginsWith(aboutSpec, "about:fingerprinting"_ns) || - StringBeginsWith(aboutSpec, "about:asrouter"_ns) || - StringBeginsWith(aboutSpec, "about:newtab"_ns) || - StringBeginsWith(aboutSpec, "about:logins"_ns) || - StringBeginsWith(aboutSpec, "about:compat"_ns) || - StringBeginsWith(aboutSpec, "about:welcome"_ns) || - StringBeginsWith(aboutSpec, "about:profiling"_ns) || - StringBeginsWith(aboutSpec, "about:studies"_ns) || - StringBeginsWith(aboutSpec, "about:home"_ns), - "about: page must not contain a CSP including script-src"); + MOZ_ASSERT( + !foundScriptSrc || StringBeginsWith(aboutSpec, "about:preferences"_ns) || + StringBeginsWith(aboutSpec, "about:settings"_ns) || + StringBeginsWith(aboutSpec, "about:downloads"_ns) || + StringBeginsWith(aboutSpec, "about:fingerprintingprotection"_ns) || + StringBeginsWith(aboutSpec, "about:asrouter"_ns) || + StringBeginsWith(aboutSpec, "about:newtab"_ns) || + StringBeginsWith(aboutSpec, "about:logins"_ns) || + StringBeginsWith(aboutSpec, "about:compat"_ns) || + StringBeginsWith(aboutSpec, "about:welcome"_ns) || + StringBeginsWith(aboutSpec, "about:profiling"_ns) || + StringBeginsWith(aboutSpec, "about:studies"_ns) || + StringBeginsWith(aboutSpec, "about:home"_ns), + "about: page must not contain a CSP including script-src"); MOZ_ASSERT(!foundWorkerSrc, "about: page must not contain a CSP including worker-src"); diff --git a/toolkit/components/resistfingerprinting/RFPHelper.sys.mjs b/toolkit/components/resistfingerprinting/RFPHelper.sys.mjs index ddb83124ff4b..3fe83bca0f5e 100644 --- a/toolkit/components/resistfingerprinting/RFPHelper.sys.mjs +++ b/toolkit/components/resistfingerprinting/RFPHelper.sys.mjs @@ -118,7 +118,7 @@ class _RFPHelper { UserCharacteristicsDataDone: { wantUntrusted: true }, }, }, - matches: ["about:fingerprinting"], + matches: ["about:fingerprintingprotection"], remoteTypes: ["privilegedabout"], }); } @@ -324,6 +324,11 @@ class _RFPHelper { } _registerLetterboxingActor() { + /* + * It turns out that this triggers a warning that we're registering a Desktop-only actor + * in toolkit (which will also run on mobile.) It just happens this actor only handles + * letterboxing, which isn't used on mobile, but we should resolve this. + */ ChromeUtils.registerWindowActor("RFPHelper", { parent: { esModuleURI: "resource:///actors/RFPHelperParent.sys.mjs", diff --git a/toolkit/components/resistfingerprinting/UserCharacteristicsPageService.sys.mjs b/toolkit/components/resistfingerprinting/UserCharacteristicsPageService.sys.mjs index a981652c8184..eaf62ff42337 100644 --- a/toolkit/components/resistfingerprinting/UserCharacteristicsPageService.sys.mjs +++ b/toolkit/components/resistfingerprinting/UserCharacteristicsPageService.sys.mjs @@ -169,7 +169,7 @@ export class UserCharacteristicsPageService { }; let userCharacteristicsPageURI = Services.io.newURI( - "about:fingerprinting" + "about:fingerprintingprotection" ); browser.loadURI(userCharacteristicsPageURI, loadURIOptions); diff --git a/toolkit/components/resistfingerprinting/content/usercharacteristics.html b/toolkit/components/resistfingerprinting/content/usercharacteristics.html index 5c8b9a553b8c..f178ab5c3daa 100644 --- a/toolkit/components/resistfingerprinting/content/usercharacteristics.html +++ b/toolkit/components/resistfingerprinting/content/usercharacteristics.html @@ -10,7 +10,7 @@ http-equiv="Content-Security-Policy" content="default-src data: resource: chrome:; style-src-elem chrome:; object-src 'none'; script-src chrome:" /> - about:fingerprinting + about:fingerprintingprotection { submitted = true; - // Did we assign a value we got out of about:fingerprinting? + // Did we assign a value we got out of about:fingerprintingprotection? Assert.notEqual("", Glean.characteristics.canvasdata1.testGetValue()); }); GleanPings.userCharacteristics.submit();