Bug 1468362: Remove ADDON_SINGING buildconfig setting. r=aswan
authorKris Maglione <maglione.k@gmail.com>
Tue, 12 Jun 2018 13:56:58 -0400
changeset 477258 8e02d4ae900f113df8d694a4683233b2429aa713
parent 477257 655e07acc431b5031c111e80e1594ae0819a4672
child 477259 7f07e22575ae36d17c93b25bc1fe2b667732d557
push id9380
push usercsabou@mozilla.com
push dateWed, 20 Jun 2018 21:48:50 +0000
treeherdermozilla-beta@e7553bb78c59 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersaswan
bugs1468362
milestone62.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1468362: Remove ADDON_SINGING buildconfig setting. r=aswan MozReview-Commit-ID: MeD4VQPVf6
browser/config/mozconfigs/win32/mingw32
browser/confvars.sh
build/mozconfig.common
mobile/android/confvars.sh
old-configure.in
python/mozbuild/mozbuild/mozinfo.py
testing/mozharness/configs/merge_day/release_to_esr.py
toolkit/components/telemetry/tests/unit/test_TelemetryEnvironment.js
toolkit/modules/AppConstants.jsm
toolkit/mozapps/extensions/internal/AddonSettings.jsm
toolkit/mozapps/extensions/internal/XPIDatabase.jsm
toolkit/mozapps/extensions/internal/XPIInstall.jsm
toolkit/mozapps/extensions/internal/XPIProvider.jsm
toolkit/mozapps/extensions/test/xpcshell/test_proxy.js
toolkit/mozapps/extensions/test/xpcshell/test_temporary.js
toolkit/mozapps/extensions/test/xpcshell/test_webextension.js
toolkit/mozapps/extensions/test/xpcshell/test_webextension_install.js
toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini
--- a/browser/config/mozconfigs/win32/mingw32
+++ b/browser/config/mozconfigs/win32/mingw32
@@ -9,17 +9,16 @@
 unset MAKECAB
 
 # Sets:
 #  build/mozconfig.common
 #    AUTOCLOBBER=1
 #    --enable-crashreporter
 #    --enable-release
 #    LLVM_CONFIG
-#    MOZ_ADDON_SIGNING
 #    MOZ_REQUIRE_SIGNING
 #    --enable-js-shell
 #  build/mozconfig.automation
 #    MOZ_AUTOMATION_ flags
 #  build/mozconfig.rust
 #    TOOLTOOL_DIR
 #    RUSTC
 #    CARGO
--- a/browser/confvars.sh
+++ b/browser/confvars.sh
@@ -62,13 +62,10 @@ fi
 # ASan reporter builds should have different channel ids
 if [ "${MOZ_ASAN_REPORTER}" = "1" ]; then
     ACCEPTED_MAR_CHANNEL_IDS="${ACCEPTED_MAR_CHANNEL_IDS}-asan"
     MAR_CHANNEL_ID="${MAR_CHANNEL_ID}-asan"
 fi
 
 MOZ_PROFILE_MIGRATOR=1
 
-# Enable checking that add-ons are signed by the trusted root
-MOZ_ADDON_SIGNING=1
-
 # Include the DevTools client, not just the server (which is the default)
 MOZ_DEVTOOLS=all
--- a/build/mozconfig.common
+++ b/build/mozconfig.common
@@ -9,18 +9,16 @@
 # architectures, though note that if you want to override options set in
 # another mozconfig file, you'll need to use mozconfig.common.override instead
 # of this file.
 
 mk_add_options AUTOCLOBBER=1
 
 ac_add_options --enable-crashreporter
 
-# Enable checking that add-ons are signed by the trusted root
-MOZ_ADDON_SIGNING=${MOZ_ADDON_SIGNING-1}
 # Disable enforcing that add-ons are signed by the trusted root
 MOZ_REQUIRE_SIGNING=${MOZ_REQUIRE_SIGNING-0}
 
 ac_add_options --enable-js-shell
 
 . "$topsrcdir/build/mozconfig.automation"
 . "$topsrcdir/build/mozconfig.rust"
 . "$topsrcdir/build/mozconfig.cache"
--- a/mobile/android/confvars.sh
+++ b/mobile/android/confvars.sh
@@ -34,11 +34,8 @@ MOZ_XULRUNNER=
 
 MOZ_CAPTURE=1
 MOZ_RAW=1
 
 # use custom widget for html:select
 MOZ_USE_NATIVE_POPUP_WINDOWS=1
 
 MOZ_APP_ID={aa3c5121-dab2-40e2-81ca-7ea25febc110}
-
-# Enable checking that add-ons are signed by the trusted root
-MOZ_ADDON_SIGNING=1
--- a/old-configure.in
+++ b/old-configure.in
@@ -4115,20 +4115,16 @@ AC_SUBST_LIST(MOZ_FIX_LINK_PATHS)
 
 AC_SUBST(MOZ_POST_PROGRAM_COMMAND)
 AC_SUBST(MOZ_LINKER_EXTRACT)
 
 if test -n "$MOZ_BINARY_EXTENSIONS"; then
   AC_DEFINE(MOZ_BINARY_EXTENSIONS)
 fi
 
-AC_SUBST(MOZ_ADDON_SIGNING)
-if test "$MOZ_ADDON_SIGNING" = 1; then
-  AC_DEFINE(MOZ_ADDON_SIGNING)
-fi
 AC_SUBST(MOZ_REQUIRE_SIGNING)
 if test "$MOZ_REQUIRE_SIGNING" = 1; then
   AC_DEFINE(MOZ_REQUIRE_SIGNING)
 fi
 
 dnl ========================================================
 dnl = Mac bundle name prefix
 dnl ========================================================
--- a/python/mozbuild/mozbuild/mozinfo.py
+++ b/python/mozbuild/mozbuild/mozinfo.py
@@ -86,17 +86,16 @@ def build_dict(config, env=os.environ):
     # FIXME(emilio): We need to update a lot of WPT expectations before removing this.
     d['stylo'] = True
     d['asan'] = substs.get('MOZ_ASAN') == '1'
     d['tsan'] = substs.get('MOZ_TSAN') == '1'
     d['ubsan'] = substs.get('MOZ_UBSAN') == '1'
     d['telemetry'] = substs.get('MOZ_TELEMETRY_REPORTING') == '1'
     d['tests_enabled'] = substs.get('ENABLE_TESTS') == "1"
     d['bin_suffix'] = substs.get('BIN_SUFFIX', '')
-    d['addon_signing'] = substs.get('MOZ_ADDON_SIGNING') == '1'
     d['require_signing'] = substs.get('MOZ_REQUIRE_SIGNING') == '1'
     d['allow_legacy_extensions'] = substs.get('MOZ_ALLOW_LEGACY_EXTENSIONS') == '1'
     d['official'] = bool(substs.get('MOZILLA_OFFICIAL'))
     d['updater'] = substs.get('MOZ_UPDATER') == '1'
     d['artifact'] = substs.get('MOZ_ARTIFACT_BUILDS') == '1'
     d['ccov'] = substs.get('MOZ_CODE_COVERAGE') == '1'
     d['cc_type'] = substs.get('CC_TYPE')
 
--- a/testing/mozharness/configs/merge_day/release_to_esr.py
+++ b/testing/mozharness/configs/merge_day/release_to_esr.py
@@ -14,22 +14,16 @@ config = {
         # File, from, to
         ("browser/confvars.sh",
          "ACCEPTED_MAR_CHANNEL_IDS=firefox-mozilla-release",
          "ACCEPTED_MAR_CHANNEL_IDS=firefox-mozilla-esr"),
         ("browser/confvars.sh",
          "MAR_CHANNEL_ID=firefox-mozilla-release",
          "MAR_CHANNEL_ID=firefox-mozilla-esr"),
         ("build/mozconfig.common",
-         "# Enable checking that add-ons are signed by the trusted root",
-         "# Disable checking that add-ons are signed by the trusted root"),
-        ("build/mozconfig.common",
-         "MOZ_ADDON_SIGNING=${MOZ_ADDON_SIGNING-1}",
-         "MOZ_ADDON_SIGNING=${MOZ_ADDON_SIGNING-0}"),
-        ("build/mozconfig.common",
          "# Enable enforcing that add-ons are signed by the trusted root",
          "# Disable enforcing that add-ons are signed by the trusted root"),
         ("build/mozconfig.common",
          "MOZ_REQUIRE_SIGNING=${MOZ_REQUIRE_SIGNING-1}",
          "MOZ_REQUIRE_SIGNING=${MOZ_REQUIRE_SIGNING-0}"),
     ],
     "vcs_share_base": os.path.join(ABS_WORK_DIR, 'hg-shared'),
     # "hg_share_base": None,
--- a/toolkit/components/telemetry/tests/unit/test_TelemetryEnvironment.js
+++ b/toolkit/components/telemetry/tests/unit/test_TelemetryEnvironment.js
@@ -672,17 +672,17 @@ function checkSystemSection(data) {
           Assert.equal(typeof product, "string", "Each element of " + f + " must be a string");
         }
       }
     }
   }
 }
 
 function checkActiveAddon(data, partialRecord) {
-  let signedState = mozinfo.addon_signing ? "number" : "undefined";
+  let signedState = "number";
   // system add-ons have an undefined signState
   if (data.isSystem)
     signedState = "undefined";
 
   const EXPECTED_ADDON_FIELDS_TYPES = {
     version: "string",
     scope: "number",
     type: "string",
@@ -1213,17 +1213,17 @@ add_task(async function test_addonsAndPl
     appDisabled: false,
     version: "1.0",
     scope: 1,
     type: "extension",
     foreignInstall: false,
     hasBinaryComponents: false,
     installDay: ADDON_INSTALL_DATE,
     updateDay: ADDON_INSTALL_DATE,
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
     isSystem: false,
     isWebExtension: true,
     multiprocessCompatible: true,
   };
   const SYSTEM_ADDON_ID = "tel-system-xpi@tests.mozilla.org";
   const EXPECTED_SYSTEM_ADDON_DATA = {
     blocklisted: false,
     description: "A system addon which is shipped with Firefox.",
@@ -1253,17 +1253,17 @@ add_task(async function test_addonsAndPl
     appDisabled: false,
     version: "1.0",
     scope: 1,
     type: "extension",
     foreignInstall: false,
     hasBinaryComponents: false,
     installDay: WEBEXTENSION_ADDON_INSTALL_DATE,
     updateDay: WEBEXTENSION_ADDON_INSTALL_DATE,
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
     isSystem: false,
     isWebExtension: true,
     multiprocessCompatible: true,
   };
 
   const EXPECTED_PLUGIN_DATA = {
     name: FLASH_PLUGIN_NAME,
     version: FLASH_PLUGIN_VERSION,
@@ -1370,17 +1370,17 @@ add_task(async function test_signedAddon
     appDisabled: false,
     version: "1.0",
     scope: 1,
     type: "extension",
     foreignInstall: false,
     hasBinaryComponents: false,
     installDay: ADDON_INSTALL_DATE,
     updateDay: ADDON_INSTALL_DATE,
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_SIGNED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_SIGNED,
   };
 
   let deferred = PromiseUtils.defer();
   TelemetryEnvironment.registerChangeListener("test_signedAddon", deferred.resolve);
 
   // Install the addon.
   let addon = await installXPIFromURL(ADDON_INSTALL_URL);
 
@@ -1455,18 +1455,17 @@ add_task(async function test_collectionW
     appDisabled: false,
     version: "1.0",
     scope: 1,
     type: "extension",
     foreignInstall: false,
     hasBinaryComponents: false,
     installDay: ADDON_INSTALL_DATE,
     updateDay: ADDON_INSTALL_DATE,
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_MISSING :
-                                         AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_MISSING,
   };
 
   let receivedNotifications = 0;
 
   let registerCheckpointPromise = (aExpected) => {
     return new Promise(resolve => TelemetryEnvironment.registerChangeListener(
       "testBrokenAddon_collection" + aExpected, (reason, data) => {
         Assert.equal(reason, "addons-changed");
--- a/toolkit/modules/AppConstants.jsm
+++ b/toolkit/modules/AppConstants.jsm
@@ -217,23 +217,16 @@ this.AppConstants = Object.freeze({
 
   MOZ_PLACES:
 #ifdef MOZ_PLACES
   true,
 #else
   false,
 #endif
 
-  MOZ_ADDON_SIGNING:
-#ifdef MOZ_ADDON_SIGNING
-  true,
-#else
-  false,
-#endif
-
   MOZ_REQUIRE_SIGNING:
 #ifdef MOZ_REQUIRE_SIGNING
   true,
 #else
   false,
 #endif
 
   MOZ_ALLOW_LEGACY_EXTENSIONS:
--- a/toolkit/mozapps/extensions/internal/AddonSettings.jsm
+++ b/toolkit/mozapps/extensions/internal/AddonSettings.jsm
@@ -21,18 +21,16 @@ function makeConstant(name, value) {
   Object.defineProperty(AddonSettings, name, {
     configurable: false,
     enumerable: false,
     writable: false,
     value,
   });
 }
 
-makeConstant("ADDON_SIGNING", AppConstants.MOZ_ADDON_SIGNING);
-
 if (AppConstants.MOZ_REQUIRE_SIGNING && !Cu.isInAutomation) {
   makeConstant("REQUIRE_SIGNING", true);
   makeConstant("LANGPACKS_REQUIRE_SIGNING", true);
 } else {
   XPCOMUtils.defineLazyPreferenceGetter(AddonSettings, "REQUIRE_SIGNING",
                                         PREF_SIGNATURES_REQUIRED, false);
   XPCOMUtils.defineLazyPreferenceGetter(AddonSettings, "LANGPACKS_REQUIRE_SIGNING",
                                         PREF_LANGPACK_SIGNATURES, false);
--- a/toolkit/mozapps/extensions/internal/XPIDatabase.jsm
+++ b/toolkit/mozapps/extensions/internal/XPIDatabase.jsm
@@ -2537,17 +2537,16 @@ this.XPIDatabaseReconcile = {
    *        the addon manifests. Default to false.
    * @returns {AddonInternal}
    *        The new addon.
    */
   updateCompatibility(aLocation, aOldAddon, aAddonState, aReloadMetadata) {
     logger.debug(`Updating compatibility for add-on ${aOldAddon.id} in ${aLocation.name}`);
 
     let checkSigning = (aOldAddon.signedState === undefined &&
-                        AddonSettings.ADDON_SIGNING &&
                         SIGNED_TYPES.has(aOldAddon.type));
 
     let manifest = null;
     if (checkSigning || aReloadMetadata) {
       try {
         let file = new nsIFile(aAddonState.path);
         manifest = XPIInstall.syncLoadManifestFromFile(file, aLocation);
       } catch (err) {
--- a/toolkit/mozapps/extensions/internal/XPIInstall.jsm
+++ b/toolkit/mozapps/extensions/internal/XPIInstall.jsm
@@ -955,19 +955,19 @@ function shouldVerifySignedState(aAddon)
   // Updated system add-ons should always have their signature checked
   if (aAddon.location.name == KEY_APP_SYSTEM_ADDONS)
     return true;
 
   // We don't care about signatures for default system add-ons
   if (aAddon.location.name == KEY_APP_SYSTEM_DEFAULTS)
     return false;
 
-  // Otherwise only check signatures if signing is enabled and the add-on is one
-  // of the signed types.
-  return AddonSettings.ADDON_SIGNING && XPIDatabase.SIGNED_TYPES.has(aAddon.type);
+  // Otherwise only check signatures if the add-on is one of the signed
+  // types.
+  return XPIDatabase.SIGNED_TYPES.has(aAddon.type);
 }
 
 /**
  * Verifies that a bundle's contents are all correctly signed by an
  * AMO-issued certificate
  *
  * @param {nsIFile} aBundle
  *        The nsIFile for the bundle to check, either a directory or zip file.
--- a/toolkit/mozapps/extensions/internal/XPIProvider.jsm
+++ b/toolkit/mozapps/extensions/internal/XPIProvider.jsm
@@ -187,17 +187,16 @@ function awaitPromise(promise) {
     result = val;
   });
 
   Services.tm.spinEventLoopUntil(() => success !== undefined);
 
   if (!success)
     throw result;
   return result;
-
 }
 
 /**
  * Returns a nsIFile instance for the given path, relative to the given
  * base file, if provided.
  *
  * @param {string} path
  *        The (possibly relative) path of the file.
--- a/toolkit/mozapps/extensions/test/xpcshell/test_proxy.js
+++ b/toolkit/mozapps/extensions/test/xpcshell/test_proxy.js
@@ -50,17 +50,17 @@ add_task(async function() {
 
     Assert.notEqual(addon, null);
     Assert.equal(addon.version, "1.0");
     Assert.equal(addon.name, "Test Bootstrap 1 (proxy)");
     Assert.ok(addon.isCompatible);
     Assert.ok(!addon.appDisabled);
     Assert.ok(addon.isActive);
     Assert.equal(addon.type, "extension");
-    Assert.equal(addon.signedState, mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_UNKNOWN : AddonManager.SIGNEDSTATE_NOT_REQUIRED);
+    Assert.equal(addon.signedState, AddonManager.SIGNEDSTATE_UNKNOWN);
 
     Assert.ok(proxyFile.exists());
 
     await addon.uninstall();
   }
   unpackedAddon.remove(true);
 
   await promiseRestartManager();
--- a/toolkit/mozapps/extensions/test/xpcshell/test_temporary.js
+++ b/toolkit/mozapps/extensions/test/xpcshell/test_temporary.js
@@ -110,17 +110,17 @@ add_task(async function() {
 
   checkAddon(ID, addon, {
     version: "1.0",
     name: "Test Bootstrap 1",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     type: "extension",
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
   });
 
   let onShutdown = waitForBootstrapEvent("shutdown", ID);
   let onUninstall = waitForBootstrapEvent("uninstall", ID);
 
   await promiseRestartManager();
 
   let shutdown = await onShutdown;
@@ -148,17 +148,17 @@ add_task(async function() {
 
   checkAddon(ID, addon, {
     version: "2.0",
     name: "Test Bootstrap 1",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     type: "extension",
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
   });
 
   let tempdir = gTmpD.clone();
 
   let bootstrapJS = await OS.File.read("data/test_temporary/bootstrap.js", {encoding: "utf-8"});
 
   for (let newversion of ["1.0", "3.0"]) {
     for (let packed of [false, true]) {
@@ -245,17 +245,17 @@ add_task(async function() {
       // temporary add-on is installed and started
       checkAddon(ID, addon, {
         version: newversion,
         name: "Test Bootstrap 1 (temporary)",
         isCompatible: true,
         appDisabled: false,
         isActive: true,
         type: "extension",
-        signedState: mozinfo.addon_signing ? signedState : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+        signedState,
       });
 
       // Now restart, the temporary addon will go away which should
       // be the opposite action (ie, if the temporary addon was an
       // upgrade, then removing it is a downgrade and vice versa)
       reason = reason == BOOTSTRAP_REASONS.ADDON_UPGRADE ?
                BOOTSTRAP_REASONS.ADDON_DOWNGRADE :
                BOOTSTRAP_REASONS.ADDON_UPGRADE;
@@ -307,17 +307,17 @@ add_task(async function() {
       // existing add-on is back
       checkAddon(ID, addon, {
         version: "2.0",
         name: "Test Bootstrap 1",
         isCompatible: true,
         appDisabled: false,
         isActive: true,
         type: "extension",
-        signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+        signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
       });
 
       Services.obs.notifyObservers(target, "flush-cache-entry");
       target.remove(true);
     }
   }
 
   // remove original add-on
@@ -354,17 +354,17 @@ add_task(async function test_samefile() 
   // temporary add-on is installed and started
   checkAddon(ID, addon, {
     version: "1.0",
     name: "Test WebExtension 1 (temporary)",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     type: "extension",
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
   });
 
   Services.obs.notifyObservers(webext, "flush-cache-entry");
   webext.remove(false);
   webext = createTempWebExtensionFile({
     manifest: {
       version: "2.0",
       name: "Test WebExtension 1 (temporary)",
@@ -382,17 +382,17 @@ add_task(async function test_samefile() 
   checkAddon(ID, addon, {
     version: "2.0",
     name: "Test WebExtension 1 (temporary)",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     type: "extension",
     isWebExtension: true,
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
   });
 
   await addon.uninstall();
 });
 
 function promiseWriteWebExtensionToDir(dir, manifest) {
   return AddonTestUtils.promiseWriteFilesToDir(dir.path, {
     "manifest.json": ExtensionTestCommon.generateManifest(manifest),
@@ -463,17 +463,17 @@ add_task(async function() {
   // temporary add-on is installed and started
   checkAddon(ID, addon, {
     version: "2.0",
     name: "Test Bootstrap 1 (temporary)",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     type: "extension",
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_UNKNOWN : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_UNKNOWN,
   });
 
   await addon.uninstall();
 
   Monitor.checkInstalled(ID);
   Monitor.checkStarted(ID);
 
   addon = await promiseAddonByID(ID);
@@ -481,17 +481,17 @@ add_task(async function() {
   // existing add-on is back
   checkAddon(ID, addon, {
     version: "1.0",
     name: "Test Bootstrap 1",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     type: "extension",
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
   });
 
   unpacked_addon.remove(true);
   await addon.uninstall();
 
   Monitor.checkNotInstalled(ID);
   Monitor.checkNotStarted(ID);
 
@@ -715,17 +715,17 @@ add_task(async function() {
   // temporary add-on is installed and started
   checkAddon(ID, tempAddon, {
     version: "2.0",
     name: "Test Bootstrap 1 (temporary)",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     type: "extension",
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_UNKNOWN : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_UNKNOWN,
   });
 
   await tempAddon.uninstall();
   unpacked_addon.remove(true);
 
   await addon.enable();
   await new Promise(executeSoon);
   addon = await promiseAddonByID(ID);
@@ -736,17 +736,17 @@ add_task(async function() {
   // existing add-on is back
   checkAddon(ID, addon, {
     version: "1.0",
     name: "Test Bootstrap 1",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     type: "extension",
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
   });
 
   await addon.uninstall();
 
   Monitor.checkNotInstalled(ID);
   Monitor.checkNotStarted(ID);
 
   await promiseRestartManager();
@@ -765,17 +765,17 @@ add_task(async function() {
   checkAddon(ID, addon, {
     version: "1.0",
     name: "Test Bootstrap 1",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     type: "extension",
     isWebExtension: false,
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
   });
 
   await AddonManager.installTemporaryAddon(XPIS.test_bootstrap1_1);
 
   Monitor.checkInstalled(ID, "1.0");
   Monitor.checkStarted(ID, "1.0");
 
   await promiseRestartManager();
--- a/toolkit/mozapps/extensions/test/xpcshell/test_webextension.js
+++ b/toolkit/mozapps/extensions/test/xpcshell/test_webextension.js
@@ -90,17 +90,17 @@ add_task(async function test_1() {
     version: "1.0",
     name: "Web Extension Name",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     isSystem: false,
     type: "extension",
     isWebExtension: true,
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
     iconURL: `${uri}icon48.png`,
     icon64URL: `${uri}icon64.png`,
   });
 
   // Should persist through a restart
   await promiseShutdownManager();
 
   equal(GlobalManager.extensionMap.size, 0);
@@ -117,17 +117,17 @@ add_task(async function test_1() {
   checkAddon(ID, addon, {
     version: "1.0",
     name: "Web Extension Name",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     isSystem: false,
     type: "extension",
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
     iconURL: `${uri}icon48.png`,
     icon64URL: `${uri}icon64.png`,
   });
 
   await addon.disable();
 
   equal(GlobalManager.extensionMap.size, 0);
 
@@ -163,17 +163,17 @@ add_task(async function test_2() {
   checkAddon(ID, addon, {
     version: "1.0",
     name: "Web Extension Name",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     isSystem: false,
     type: "extension",
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
   });
 
   await addon.uninstall();
 
   await promiseRestartManager();
 });
 
 add_task(async function test_manifest_localization() {
@@ -405,17 +405,17 @@ add_task(async function testThemeExtensi
     name: "Web Extension Name",
     isCompatible: true,
     appDisabled: false,
     isActive: false,
     userDisabled: true,
     isSystem: false,
     type: "theme",
     isWebExtension: true,
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
   });
 
   await addon.uninstall();
 
   // Also test one without a proper 'theme' section.
   addon = await promiseInstallWebExtension({
     manifest: {
       "author": "Some author",
@@ -451,17 +451,17 @@ add_task(async function test_theme_upgra
 
   checkAddon(ID, addon, {
     version: "1.0",
     name: "Test WebExtension 1 (temporary)",
     isCompatible: true,
     appDisabled: false,
     isActive: true,
     type: "extension",
-    signedState: mozinfo.addon_signing ? AddonManager.SIGNEDSTATE_PRIVILEGED : AddonManager.SIGNEDSTATE_NOT_REQUIRED,
+    signedState: AddonManager.SIGNEDSTATE_PRIVILEGED,
   });
 
   // Create a webextension theme with the same ID
   addon = await promiseInstallWebExtension({
     manifest: {
       version: "2.0",
       name: "Test WebExtension 1 (temporary)",
       applications: {
--- a/toolkit/mozapps/extensions/test/xpcshell/test_webextension_install.js
+++ b/toolkit/mozapps/extensions/test/xpcshell/test_webextension_install.js
@@ -15,39 +15,31 @@ add_task(async function setup() {
 
 const IMPLICIT_ID_XPI = "data/webext-implicit-id.xpi";
 const IMPLICIT_ID_ID = "webext_implicit_id@tests.mozilla.org";
 
 // webext-implicit-id.xpi has a minimal manifest with no
 // applications or browser_specific_settings, so its id comes
 // from its signature, which should be the ID constant defined below.
 add_task(async function test_implicit_id() {
-  // This test needs to read the xpi certificate which only works
-  // if signing is enabled.
-  ok(AddonSettings.ADDON_SIGNING, "Add-on signing is enabled");
-
   let addon = await promiseAddonByID(IMPLICIT_ID_ID);
   equal(addon, null, "Add-on is not installed");
 
   await promiseInstallFile(do_get_file(IMPLICIT_ID_XPI));
 
   addon = await promiseAddonByID(IMPLICIT_ID_ID);
   notEqual(addon, null, "Add-on is installed");
 
   await addon.uninstall();
 });
 
 // We should also be able to install webext-implicit-id.xpi temporarily
 // and it should look just like the regular install (ie, the ID should
 // come from the signature)
 add_task(async function test_implicit_id_temp() {
-  // This test needs to read the xpi certificate which only works
-  // if signing is enabled.
-  ok(AddonSettings.ADDON_SIGNING, "Add-on signing is enabled");
-
   let addon = await promiseAddonByID(IMPLICIT_ID_ID);
   equal(addon, null, "Add-on is not installed");
 
   let xpifile = do_get_file(IMPLICIT_ID_XPI);
   await AddonManager.installTemporaryAddon(xpifile);
 
   addon = await promiseAddonByID(IMPLICIT_ID_ID);
   notEqual(addon, null, "Add-on is installed");
--- a/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini
+++ b/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini
@@ -71,17 +71,16 @@ tags = blocklist
 # Times out during parallel runs on desktop
 requesttimeoutfactor = 2
 tags = blocklist
 [test_bootstrap.js]
 [test_bootstrap_const.js]
 [test_bootstrap_globals.js]
 [test_bootstrapped_chrome_manifest.js]
 [test_cache_certdb.js]
-run-if = addon_signing
 [test_cacheflush.js]
 [test_childprocess.js]
 [test_compatoverrides.js]
 [test_corrupt.js]
 [test_corruptfile.js]
 [test_crash_annotation_quoting.js]
 [test_db_path.js]
 head =
@@ -190,31 +189,25 @@ skip-if = os != 'win'
 skip-if = os == "android" || os == "win"
 tags = webextensions
 [test_safemode.js]
 [test_schema_change.js]
 [test_seen.js]
 [test_shutdown.js]
 [test_sideloads.js]
 [test_signed_inject.js]
-run-if = addon_signing
 # Bug 1394122
 skip-if = true
 [test_signed_install.js]
-run-if = addon_signing
 run-sequentially = Uses hardcoded ports in xpi files.
 [test_signed_langpack.js]
-run-if = addon_signing
 [test_signed_long.js]
-run-if = addon_signing
 [test_signed_updatepref.js]
-run-if = addon_signing
 skip-if = require_signing || !allow_legacy_extensions
 [test_signed_verify.js]
-run-if = addon_signing
 [test_softblocked.js]
 tags = blocklist
 [test_sourceURI.js]
 [test_startup.js]
 # Bug 676992: test consistently fails on Android
 fail-if = os == "android"
 [test_strictcompatibility.js]
 [test_switch_os.js]