Closed Bug 1584613 Opened 20 days ago Closed 20 days ago

Parental control detection doesn't work on Windows 10

Categories

(Core :: General, defect, P1, critical)

defect

Tracking

()

VERIFIED FIXED
mozilla71
Tracking Status
relnote-firefox --- 69+
firefox69 blocking verified
firefox70 + verified
firefox71 + verified

People

(Reporter: nhi, Assigned: mhowell)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Priority: -- → P1
Assignee: nobody → mhowell
Status: NEW → ASSIGNED

The Windows parental controls API (e.g. IWindowsParentalControls) appears to
have been removed entirely from at least more recent builds of Windows 10. The
interfaces are still defined, but at runtime creating instances of them fails.
This patch enables us to tell if web filtering is enabled for the current user
on Windows 10 without going through that API by directly reading the relevant
registry value.

All methods of nsIParentalControlsService other than parentalControlsEnabled
have been left unimplemented because it isn't obvious how to implement them
in this environment, since no replacement for the old API seems to have been
provided. For example, it appears that loggingEnabled could be implemented
using the same registry key, but the logging mechanism is unlikely to be
compatible with the old one, so reporting that it is enabled may be unsafe.

Pushed by mhowell@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/60ad88a4c359
Fix detecting web filtering parental control state on Windows 10. r=aklotz
Blocks: 1573840

Comment on attachment 9097038 [details]
Bug 1584613 - Fix detecting web filtering parental control state on Windows 10. r=aklotz

Beta/Release Uplift Approval Request

  • User impact if declined: This bug makes parental controls always appear to be disabled on Windows 10, meaning that DoH rollout logic cannot tell that it should not enable DoH because parental controls are in use.
  • Is this code covered by automated tests?: No
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce: I've verified the fix using the STR from the original issue reported at https://github.com/mozilla/doh-rollout/issues/107.
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): This is a small, targeted change limited to the parental controls service for Windows, and the new code only runs in the situation where the old code was likely not working anyway, so any regressions are highly unlikely.
  • String changes made/needed:
Attachment #9097038 - Flags: approval-mozilla-release?
Attachment #9097038 - Flags: approval-mozilla-beta?
Status: ASSIGNED → RESOLVED
Closed: 20 days ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla71

Comment on attachment 9097038 [details]
Bug 1584613 - Fix detecting web filtering parental control state on Windows 10. r=aklotz

DoH fix which may need backport to m-r. Approved for 70.0b11.

Attachment #9097038 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
  • Tested this using Nightly 71.0a1 (Build ID: 20190929213508) (64-bit) and the issue is no longer reproducible.
  • Firefox detects Windows 10 Parental Control and displays the "Prefer:Safe" header in the "Request headers" section from Web Console's Network tab.

Comment on attachment 9097038 [details]
Bug 1584613 - Fix detecting web filtering parental control state on Windows 10. r=aklotz

DoH rollout blocker. Approved for 69.0.2.

Attachment #9097038 - Flags: approval-mozilla-release? → approval-mozilla-release+
Flags: qe-verify+
  • Tested this using Beta 70.0b11 (Build ID: 20190930132843) (64-bit) and the issue is no longer reproducible.
  • Firefox detects Windows 10 Parental Control and displays the "Prefer:Safe" header in the "Request headers" section from Web Console's Network tab.
QA Whiteboard: [qa-triaged]
  • Tested this using 69.0.2 RC-build1 (Build ID: 20191001234643) (64-bit) and the issue is no longer reproducible.
  • Firefox detects Windows 10 Parental Control and displays the "Prefer:Safe" header in the "Request headers" section from Web Console's Network tab.
Flags: qe-verify+
Status: RESOLVED → VERIFIED

Added to the Firefox 69.0.2 release notes:

Fixed detection of the Windows 10 Parental Controls feature being enabled

Regressions: 1586228
You need to log in before you can comment on or make changes to this bug.