From f88a6a6d6d16744b942970e9ba8a0ccd22e5c7b3 Mon Sep 17 00:00:00 2001 From: hackademix Date: Mon, 10 Sep 2018 11:34:22 +0200 Subject: Streamlined child policy content scripts. --- src/content/content.js | 2 +- src/content/dynamicNS.js | 4 ++-- src/content/staticNS.js | 11 +++++------ 3 files changed, 8 insertions(+), 9 deletions(-) (limited to 'src/content') diff --git a/src/content/content.js b/src/content/content.js index b185f4f..fc76906 100644 --- a/src/content/content.js +++ b/src/content/content.js @@ -54,7 +54,7 @@ var notifyPage = async () => { debug(`No answer to fetchChildPolicy message. This should not be happening.`); return; } - ns.setup(childPolicy.CURRENT, childPolicy.MARKER); + ns.setup(childPolicy.permissions, childPolicy.MARKER); return; } diff --git a/src/content/dynamicNS.js b/src/content/dynamicNS.js index f865e8b..51a2701 100644 --- a/src/content/dynamicNS.js +++ b/src/content/dynamicNS.js @@ -7,8 +7,8 @@ if (!this.ns) { let deferredSetup = null; let nsStub = this.ns = { config: {}, - setup(CURRENT, MARKER) { - deferredSetup = [CURRENT, MARKER]; + setup(permissions, MARKER) { + deferredSetup = [permissions, MARKER]; }, merge: ns => { ns.config = Object.assign(ns.config, nsStub.config); diff --git a/src/content/staticNS.js b/src/content/staticNS.js index 5deb1ab..6179da0 100644 --- a/src/content/staticNS.js +++ b/src/content/staticNS.js @@ -33,9 +33,8 @@ backlog.add(eventName); }, - setup(DEFAULT, MARKER) { - this.config.DEFAULT = DEFAULT; - if(!this.config.CURRENT) this.config.CURRENT = DEFAULT; + setup(permissions, MARKER) { + this.config.permissions = permissions; // ugly hack: since now we use registerContentScript instead of the // filterRequest dynamic script injection hack, we use window.name @@ -70,13 +69,13 @@ }, window.wrappedJSObject) }); } - if (!this.config.DEFAULT || this.config.tabInfo.unrestricted) { + if (!this.config.permissions || this.config.tabInfo.unrestricted) { debug("%s is loading unrestricted by user's choice (%o).", document.URL, this.config); this.allows = () => true; this.capabilities = Object.assign( new Set(["script"]), { has() { return true; } }); } else { - let perms = this.config.CURRENT; + let perms = this.config.permissions; this.capabilities = new Set(perms.capabilities); new DocumentCSP(document).apply(this.capabilities, this.embeddingDocument); } @@ -84,7 +83,7 @@ this.canScript = this.allows("script"); this.fire("capabilities"); }, - config: { DEFAULT: null, CURRENT: null, tabInfo: {}, MARKER: "" }, + config: { permissions: null, tabInfo: {}, MARKER: "" }, allows(cap) { return this.capabilities && this.capabilities.has(cap); -- cgit v1.2.3