gecko-dev/toolkit/xre
Aaron Klotz a66f824994 Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell
* Significant cleanup to `ModuleEvaluator`
* `UntrustedModuleData` holds all of the accumulated untrusted module info for
  a single process.
* `ProcessedModuleLoadEvent` holds information about an individual untrusted
  module load in a Gecko-friendly, sanitized, format.
* Since multiple `ProcessModuleLoadEvent` objects may reference the same
  module, we store module metadata in a shared `ModuleInfo` structure.
* The `UntrustedModulesProcessor` receives the events from `mozglue` and
  processes them on a background thread:
** It does not start background processing until the main thread has gone idle.
   The idea here is that we do not want to add any more background work until
   we are reasonably confident that Gecko is no longer starting up or doing
   other intense activity.
** Background processing runs at a background priority level, *except* when
   results are requested by telemetry itself.
** Telemetry requests the data via `UntrustedModulesProcessor::GetProcessedData`
   which runs at normal priority and returns a promise to the caller.

Depends on D43159

Differential Revision: https://phabricator.services.mozilla.com/D43160

--HG--
rename : toolkit/xre/ModuleEvaluator_windows.cpp => toolkit/xre/ModuleEvaluator.cpp
rename : toolkit/xre/ModuleEvaluator_windows.cpp => toolkit/xre/ModuleEvaluator.h
rename : toolkit/xre/ModuleVersionInfo_windows.cpp => toolkit/xre/ModuleVersionInfo.cpp
rename : toolkit/xre/ModuleVersionInfo_windows.h => toolkit/xre/ModuleVersionInfo.h
rename : toolkit/xre/ModuleEvaluator_windows.cpp => toolkit/xre/UntrustedModulesData.cpp
rename : toolkit/xre/ModuleEvaluator_windows.h => toolkit/xre/UntrustedModulesData.h
rename : toolkit/xre/ModuleEvaluator_windows.cpp => toolkit/xre/UntrustedModulesProcessor.cpp
rename : toolkit/xre/ModuleEvaluator_windows.h => toolkit/xre/UntrustedModulesProcessor.h
extra : moz-landing-system : lando
2019-09-23 20:19:17 +00:00
..
test Bug 1578683 Turn on ESLint rule prefer-boolean-length-check for toolkit and browser r=Standard8 2019-09-14 09:39:26 +00:00
AutoSQLiteLifetime.cpp
AutoSQLiteLifetime.h
Bootstrap.cpp
Bootstrap.h
CmdLineAndEnvUtils.cpp
CmdLineAndEnvUtils.h Bug 1577706 - move checks for -url from toolkit into browser code, and make osint sanitizer app-agnostic, r=mossop 2019-09-03 17:01:33 +00:00
components.conf
CreateAppData.cpp
EventTracer.cpp
EventTracer.h
glxtest.cpp
LauncherRegistryInfo.cpp
LauncherRegistryInfo.h Bug 1576697 - Use LauncherResult in WinHeaderOnlyUtils.h instead of WindowsErrorResult. r=aklotz 2019-09-07 18:17:45 +00:00
MacApplicationDelegate.h
MacApplicationDelegate.mm
MacAutoreleasePool.h
MacAutoreleasePool.mm
MacLaunchHelper.h
MacLaunchHelper.mm
ModuleEvaluator.cpp Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
ModuleEvaluator.h Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
ModuleVersionInfo.cpp Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
ModuleVersionInfo.h Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
moz.build Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
nsAndroidStartup.cpp
nsAppRunner.cpp Bug 1490601 part 2 - Move C++ entry points to encoding_c_mem to mfbt/. r=jwalden 2019-09-18 08:26:34 +00:00
nsAppRunner.h
nsAppStartupNotifier.cpp
nsAppStartupNotifier.h
nsCommandLineServiceMac.h
nsCommandLineServiceMac.mm
nsConsoleWriter.cpp
nsEmbeddingModule.cpp
nsEmbedFunctions.cpp Bug 1542830: Part 4 - Modify mozglue to use new untrusted modules interfaces; r=mhowell 2019-09-23 20:18:41 +00:00
nsGDKErrorHandler.cpp
nsGDKErrorHandler.h
nsIAppStartupNotifier.h
nsINativeAppSupport.idl
nsIWinAppHelper.idl
nsIXREDirProvider.idl
nsNativeAppSupportBase.cpp
nsNativeAppSupportBase.h
nsNativeAppSupportCocoa.mm
nsNativeAppSupportDefault.cpp
nsNativeAppSupportUnix.cpp
nsNativeAppSupportWin.cpp
nsNativeAppSupportWin.h
nsSigHandlers.cpp
nsSigHandlers.h
nsUpdateDriver.cpp Bug 1577061: Modify nsUpdateDriver's GetCurrentWorkingDir to accept a nsACString& argument; r=mhowell 2019-08-28 17:29:06 +00:00
nsUpdateDriver.h
nsWindowsRestart.cpp
nsWindowsWMain.cpp
nsX11ErrorHandler.cpp
nsX11ErrorHandler.h
nsXREDirProvider.cpp Bug 1580282 - Remove checks for plugins that are part of extensions and support for loading plugins from the app and profile dir, r=mconley,mixedpuppy 2019-09-12 23:15:49 +00:00
nsXREDirProvider.h Bug 1580282 - Remove checks for plugins that are part of extensions and support for loading plugins from the app and profile dir, r=mconley,mixedpuppy 2019-09-12 23:15:49 +00:00
platform.ini
PolicyChecks.h
ProfileReset.cpp
ProfileReset.h
SafeMode.h
UIKitDirProvider.h
UIKitDirProvider.mm
UntrustedModulesData.cpp Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
UntrustedModulesData.h Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
UntrustedModulesProcessor.cpp Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
UntrustedModulesProcessor.h Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
updaterfileutils_osx.h
updaterfileutils_osx.mm
WinDllServices.cpp Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
WinDllServices.h Bug 1542830: Part 6 - Rewrite the untrusted modules processor in toolkit/xre; r=mhowell 2019-09-23 20:19:17 +00:00
WinTokenUtils.cpp Bug 1567219 - Add a metric to collect how many users launch a process with Admin but without UAC. r=aklotz 2019-08-28 02:17:49 +00:00
WinTokenUtils.h Bug 1576697 - Use LauncherResult in WinHeaderOnlyUtils.h instead of WindowsErrorResult. r=aklotz 2019-09-07 18:17:45 +00:00