Open Bug 1370772 Opened 7 years ago Updated 2 years ago

Load GMPs from C:\ProgramData on Windows

Categories

(Core :: Audio/Video: GMP, defect, P2)

x86_64
Windows
defect

Tracking

()

People

(Reporter: cpearce, Unassigned)

References

(Blocks 2 open bugs)

Details

(Keywords: stale-bug)

We've had a number of GMP process crashes reported on Windows as [@ mozilla::gmp::GMPChild::ProcessingError] and we think one cause of this is users having their Firefox profile stored in a directory which is behind a junction or symlink.

To solve this, we can have the GMP executed from C:\ProgramData, as that's much less likely to be stored behind a symlink/junction (moving ProgramData causes Windows Update to not work, so I assume people are unlikely to do this).

We'd need to either copy the GMP into C:\ProgramData right before executing it, or store it there permanently.

I think we should set the Access Controls on the GMP DLL in C:\ProgramData to be only accessible to the current user, so that other users can't tamper with the DLL before we execute it.
It seems that by default (at least on Windows 10) files created in C:\ProgramData have read+exec permissions by the Users group. So we don't need to worry about other users writing to the files we write into C:\ProgramData; they won't have write permissions unless they already have admin privileges.
Is there a way to implement this before a patch/fix is available? We recently upgraded our terminal servers to ESR 52.2.1 and we are hitting this issue.

I am also available to test, if needed.

Thanks
This is an assigned P1 bug without activity in two weeks. 

If you intend to continue working on this bug for the current release/iteration/sprint, remove the 'stale-bug' keyword.

Otherwise we'll reset the priority of the bug back to '--' on Monday, August 28th.
Keywords: stale-bug
Mass change P1->P2 to align with new Mozilla triage process
Priority: P1 → P2
Assignee: cpearce → nobody
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.