Closed Bug 1513176 Opened 5 years ago Closed 5 years ago

mozglue.dll erroneously being reported as untrusted in untrusted modules ping

Categories

(Core :: General, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla66
Tracking Status
firefox66 --- fixed

People

(Reporter: ccorcoran, Assigned: ccorcoran)

References

Details

Attachments

(1 file)

According to https://sql.telemetry.mozilla.org/queries/60448, the most frequent untrusted module being reported is mozglue.dll. From its trust flags (25), it looks like it should be trusted (it has the Mozilla digital signature).

Trust flags are defined here: https://searchfox.org/mozilla-central/rev/fd62b95c187a40b328d9e7fd9d848833a6942b57/toolkit/xre/ModuleEvaluator_windows.h#22
Assignee: nobody → ccorcoran
Nightly is reporting mozglue.dll as being untrusted in the untrusted modules
ping. Until now, xpcshell tests hard-code mozglue to appear as untrusted in
order to cover certain code paths related to startup modules.

This patch:
1. Checks explicitly for the xpcshell environment and only applies this logic
   during xpcshell tests.
2. Uses a purpose-build DLL, "untrusted-startup-test-dll.dll", instead of
   mozglue. This is more explicit and doesn't interfere with any "true"
   processing of mozglue.
Pushed by aklotz@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/9ef3943abe13
Prevent mozglue.dll from appearing erroneously in the untrusted modules ping;r=aklotz
https://hg.mozilla.org/mozilla-central/rev/9ef3943abe13
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
(In reply to Carl Corcoran [:ccorcoran] from comment #1)
> Created attachment 9031817 [details]

| -#if ENABLE_TESTS
[...]
|    int scoreThreshold = 100;
[...]
| +#ifdef ENABLE_TESTS
[...]
|  #else
|    static const int scoreThreshold = 100;

The last declaration is superfluous.

It causes a compiler error:

| 83:41.89 s:/Projects/mozi/mozilla/toolkit/xre/ModuleEvaluator_windows.cpp(221,20):  error: redefinition of 'scoreThreshold' with a different type: 'const int' vs 'int'
| 83:41.89   static const int scoreThreshold = 100;
| 83:41.89                    ^
| 83:41.89 s:/Projects/mozi/mozilla/toolkit/xre/ModuleEvaluator_windows.cpp(207,7):  note: previous definition is here
| 83:41.89   int scoreThreshold = 100;
| 83:41.89       ^
Depends on: 1516363
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: