Bug 1443870 - remove content-process blocklist service, r=florian

MozReview-Commit-ID: KmlQ99rA201

--HG--
extra : rebase_source : 47220b6b994e9c4e8ed81e85a81a87ce1fbb4e9c
This commit is contained in:
Gijs Kruitbosch 2018-03-14 12:12:01 +00:00
Родитель 014fcdedcd
Коммит 2ed3415c7c
4 изменённых файлов: 0 добавлений и 113 удалений

Просмотреть файл

@ -417,7 +417,6 @@
@RESPATH@/components/amInstallTrigger.js
@RESPATH@/components/amWebAPI.js
@RESPATH@/components/nsBlocklistService.js
@RESPATH@/components/nsBlocklistServiceContent.js
#ifdef MOZ_UPDATER
@RESPATH@/components/nsUpdateService.manifest
@RESPATH@/components/nsUpdateService.js

Просмотреть файл

@ -1,8 +1,6 @@
component {66354bc9-7ed1-4692-ae1d-8da97d6b205e} nsBlocklistService.js process=main
contract @mozilla.org/extensions/blocklist;1 {66354bc9-7ed1-4692-ae1d-8da97d6b205e} process=main
category profile-after-change nsBlocklistService @mozilla.org/extensions/blocklist;1 process=main
component {e0a106ed-6ad4-47a4-b6af-2f1c8aa4712d} nsBlocklistServiceContent.js process=content
contract @mozilla.org/extensions/blocklist;1 {e0a106ed-6ad4-47a4-b6af-2f1c8aa4712d} process=content
category update-timer nsBlocklistService @mozilla.org/extensions/blocklist;1,getService,blocklist-background-update-timer,extensions.blocklist.interval,86400
component {4399533d-08d1-458c-a87a-235f74451cfa} addonManager.js

Просмотреть файл

@ -28,7 +28,6 @@ EXTRA_COMPONENTS += [
'amInstallTrigger.js',
'amWebAPI.js',
'nsBlocklistService.js',
'nsBlocklistServiceContent.js',
]
EXTRA_PP_COMPONENTS += [

Просмотреть файл

@ -1,109 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm");
ChromeUtils.import("resource://gre/modules/Services.jsm");
const kMissingAPIMessage = "Unsupported blocklist call in the child process.";
/*
* A lightweight blocklist proxy for the content process that traps plugin
* related blocklist checks and forwards them to the parent. This interface is
* primarily designed to insure overlays work.. it does not control plugin
* or addon loading.
*/
function Blocklist() {
this.init();
}
Blocklist.prototype = {
classID: Components.ID("{e0a106ed-6ad4-47a4-b6af-2f1c8aa4712d}"),
QueryInterface: XPCOMUtils.generateQI([Ci.nsIObserver,
Ci.nsIBlocklistService]),
init() {
Services.cpmm.addMessageListener("Blocklist:blocklistInvalidated", this);
Services.obs.addObserver(this, "xpcom-shutdown");
},
uninit() {
Services.cpmm.removeMessageListener("Blocklist:blocklistInvalidated", this);
Services.obs.removeObserver(this, "xpcom-shutdown");
},
observe(aSubject, aTopic, aData) {
switch (aTopic) {
case "xpcom-shutdown":
this.uninit();
break;
}
},
// Message manager message handlers
receiveMessage(aMsg) {
switch (aMsg.name) {
case "Blocklist:blocklistInvalidated":
Services.obs.notifyObservers(null, "blocklist-updated");
Services.cpmm.sendAsyncMessage("Blocklist:content-blocklist-updated");
break;
default:
throw new Error("Unknown blocklist message received from content: " + aMsg.name);
}
},
/*
* A helper that queries key data from a plugin or addon object
* and generates a simple data wrapper suitable for ipc. We hand
* these directly to the nsBlockListService in the parent which
* doesn't query for much.. allowing us to get away with this.
*/
flattenObject(aTag) {
// Based on debugging the nsBlocklistService, these are the props the
// parent side will check on our objects.
let props = ["name", "description", "filename", "version"];
let dataWrapper = {};
for (let prop of props) {
dataWrapper[prop] = aTag[prop];
}
return dataWrapper;
},
// We support the addon methods here for completeness, but content currently
// only calls getPluginBlocklistState.
isAddonBlocklisted(aAddon, aAppVersion, aToolkitVersion) {
return true;
},
getAddonBlocklistState(aAddon, aAppVersion, aToolkitVersion) {
return Ci.nsIBlocklistService.STATE_BLOCKED;
},
get isLoaded() {
// Lie until we fix bug 1443870.
return true;
},
getPluginBlocklistState(aPluginTag, aAppVersion, aToolkitVersion) {
throw new Error(kMissingAPIMessage);
},
getAddonBlocklistURL(aAddon, aAppVersion, aToolkitVersion) {
throw new Error(kMissingAPIMessage);
},
getPluginBlocklistURL(aPluginTag) {
throw new Error(kMissingAPIMessage);
},
getPluginInfoURL(aPluginTag) {
throw new Error(kMissingAPIMessage);
}
};
this.NSGetFactory = XPCOMUtils.generateNSGetFactory([Blocklist]);