Bug 1344441 - Move various Necko IDLs that really ought to be PSM IDLs. r?keeler,mcmanus draft
authorCykesiopka <cykesiopka.bmo@gmail.com>
Sun, 05 Mar 2017 18:30:31 +0800
changeset 493611 877b123c93abee4a541fbe9df99a236822020e7e
parent 493610 376d3e4d4a750adf58e011f65b530ecf65726652
child 547902 9b831bb61cb29e54c3d093c15d374c78f8ea98c3
push id47810
push usercykesiopka.bmo@gmail.com
push dateSun, 05 Mar 2017 10:32:41 +0000
reviewerskeeler, mcmanus
bugs1344441
milestone54.0a1
Bug 1344441 - Move various Necko IDLs that really ought to be PSM IDLs. r?keeler,mcmanus These IDLs conceptually are PSM APIs, and are implemented in PSM as well. nsICryptoFIPSInfo.idl is similar but is removed instead because: 1. It's unused even by addons. 2. The only thing it provides is also available through nsIPKCS11ModuleDB.idl. MozReview-Commit-ID: K8R0wDAhjLq
netwerk/base/moz.build
netwerk/base/nsICryptoFIPSInfo.idl
netwerk/base/nsICryptoHMAC.idl
netwerk/base/nsICryptoHash.idl
netwerk/base/nsINSSErrorsService.idl
security/manager/ssl/moz.build
security/manager/ssl/nsICryptoHMAC.idl
security/manager/ssl/nsICryptoHash.idl
security/manager/ssl/nsINSSErrorsService.idl
security/manager/ssl/nsNSSModule.cpp
security/manager/ssl/nsPKCS11Slot.cpp
security/manager/ssl/nsPKCS11Slot.h
--- a/netwerk/base/moz.build
+++ b/netwerk/base/moz.build
@@ -30,19 +30,16 @@ XPIDL_SOURCES += [
     'nsICaptivePortalService.idl',
     'nsIChannel.idl',
     'nsIChannelEventSink.idl',
     'nsIChannelWithDivertableParentListener.idl',
     'nsIChildChannel.idl',
     'nsIClassifiedChannel.idl',
     'nsIClassOfService.idl',
     'nsIContentSniffer.idl',
-    'nsICryptoFIPSInfo.idl',
-    'nsICryptoHash.idl',
-    'nsICryptoHMAC.idl',
     'nsIDashboard.idl',
     'nsIDashboardEventNotifier.idl',
     'nsIDeprecationWarner.idl',
     'nsIDivertableChannel.idl',
     'nsIDownloader.idl',
     'nsIEncodedChannel.idl',
     'nsIExternalProtocolHandler.idl',
     'nsIFileStreams.idl',
@@ -67,17 +64,16 @@ XPIDL_SOURCES += [
     'nsINetAddr.idl',
     'nsINetUtil.idl',
     'nsINetworkInfoService.idl',
     'nsINetworkInterceptController.idl',
     'nsINetworkLinkService.idl',
     'nsINetworkPredictor.idl',
     'nsINetworkPredictorVerifier.idl',
     'nsINetworkProperties.idl',
-    'nsINSSErrorsService.idl',
     'nsINullChannel.idl',
     'nsIParentChannel.idl',
     'nsIParentRedirectingChannel.idl',
     'nsIPermission.idl',
     'nsIPermissionManager.idl',
     'nsIPrivateBrowsingChannel.idl',
     'nsIProgressEventSink.idl',
     'nsIPrompt.idl',
deleted file mode 100644
--- a/netwerk/base/nsICryptoFIPSInfo.idl
+++ /dev/null
@@ -1,15 +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/. */
-
-#include "nsISupports.idl"
-
-[scriptable, uuid(99e81922-7318-4431-b3aa-78b3cb4119bb)]
-interface nsICryptoFIPSInfo : nsISupports
-{
-    readonly attribute boolean isFIPSModeActive;
-};
-
-%{C++
-#define NS_CRYPTO_FIPSINFO_SERVICE_CONTRACTID "@mozilla.org/crypto/fips-info-service;1"
-%}
--- a/security/manager/ssl/moz.build
+++ b/security/manager/ssl/moz.build
@@ -12,21 +12,24 @@ XPIDL_SOURCES += [
     'nsIASN1Sequence.idl',
     'nsIAssociatedContentSecurity.idl',
     'nsIBadCertListener2.idl',
     'nsICertBlocklist.idl',
     'nsICertificateDialogs.idl',
     'nsICertOverrideService.idl',
     'nsIClientAuthDialogs.idl',
     'nsIContentSignatureVerifier.idl',
+    'nsICryptoHash.idl',
+    'nsICryptoHMAC.idl',
     'nsIDataSignatureVerifier.idl',
     'nsIGenKeypairInfoDlg.idl',
     'nsIKeygenThread.idl',
     'nsIKeyModule.idl',
     'nsILocalCertService.idl',
+    'nsINSSErrorsService.idl',
     'nsINSSU2FToken.idl',
     'nsINSSVersion.idl',
     'nsIPK11Token.idl',
     'nsIPK11TokenDB.idl',
     'nsIPKCS11.idl',
     'nsIPKCS11Module.idl',
     'nsIPKCS11ModuleDB.idl',
     'nsIPKCS11Slot.idl',
rename from netwerk/base/nsICryptoHMAC.idl
rename to security/manager/ssl/nsICryptoHMAC.idl
rename from netwerk/base/nsICryptoHash.idl
rename to security/manager/ssl/nsICryptoHash.idl
rename from netwerk/base/nsINSSErrorsService.idl
rename to security/manager/ssl/nsINSSErrorsService.idl
--- a/security/manager/ssl/nsNSSModule.cpp
+++ b/security/manager/ssl/nsNSSModule.cpp
@@ -241,17 +241,16 @@ static const mozilla::Module::ContractID
   { NS_FORMPROCESSOR_CONTRACTID, &kNS_FORMPROCESSOR_CID },
 #ifdef MOZ_XUL
   { NS_CERTTREE_CONTRACTID, &kNS_CERTTREE_CID },
 #endif
   { NS_PKCS11_CONTRACTID, &kNS_PKCS11_CID },
   { NS_CRYPTO_HASH_CONTRACTID, &kNS_CRYPTO_HASH_CID },
   { NS_CRYPTO_HMAC_CONTRACTID, &kNS_CRYPTO_HMAC_CID },
   { "@mozilla.org/uriloader/psm-external-content-listener;1", &kNS_PSMCONTENTLISTEN_CID },
-  { NS_CRYPTO_FIPSINFO_SERVICE_CONTRACTID, &kNS_PKCS11MODULEDB_CID },
   { NS_NTLMAUTHMODULE_CONTRACTID, &kNS_NTLMAUTHMODULE_CID },
   { NS_KEYMODULEOBJECT_CONTRACTID, &kNS_KEYMODULEOBJECT_CID },
   { NS_KEYMODULEOBJECTFACTORY_CONTRACTID, &kNS_KEYMODULEOBJECTFACTORY_CID },
   { NS_DATASIGNATUREVERIFIER_CONTRACTID, &kNS_DATASIGNATUREVERIFIER_CID },
   { NS_CONTENTSIGNATUREVERIFIER_CONTRACTID, &kNS_CONTENTSIGNATUREVERIFIER_CID },
   { NS_CERTOVERRIDE_CONTRACTID, &kNS_CERTOVERRIDE_CID },
   { NS_RANDOMGENERATOR_CONTRACTID, &kNS_RANDOMGENERATOR_CID },
   { NS_NSSU2FTOKEN_CONTRACTID, &kNS_NSSU2FTOKEN_CID },
--- a/security/manager/ssl/nsPKCS11Slot.cpp
+++ b/security/manager/ssl/nsPKCS11Slot.cpp
@@ -355,17 +355,17 @@ nsPKCS11Module::ListSlots(nsISimpleEnume
         return rv;
       }
     }
   }
 
   return array->Enumerate(_retval);
 }
 
-NS_IMPL_ISUPPORTS(nsPKCS11ModuleDB, nsIPKCS11ModuleDB, nsICryptoFIPSInfo)
+NS_IMPL_ISUPPORTS(nsPKCS11ModuleDB, nsIPKCS11ModuleDB)
 
 nsPKCS11ModuleDB::nsPKCS11ModuleDB()
 {
 }
 
 nsPKCS11ModuleDB::~nsPKCS11ModuleDB()
 {
   nsNSSShutDownPreventionLock locker;
@@ -560,14 +560,8 @@ nsPKCS11ModuleDB::GetIsFIPSEnabled(bool*
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown()) {
     return NS_ERROR_NOT_AVAILABLE;
   }
 
   *aIsFIPSEnabled = PK11_IsFIPS();
   return NS_OK;
 }
-
-NS_IMETHODIMP
-nsPKCS11ModuleDB::GetIsFIPSModeActive(bool* aIsFIPSModeActive)
-{
-  return GetIsFIPSEnabled(aIsFIPSModeActive);
-}
--- a/security/manager/ssl/nsPKCS11Slot.h
+++ b/security/manager/ssl/nsPKCS11Slot.h
@@ -3,17 +3,16 @@
  * 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/. */
 
 #ifndef nsPKCS11Slot_h
 #define nsPKCS11Slot_h
 
 #include "ScopedNSSTypes.h"
-#include "nsICryptoFIPSInfo.h"
 #include "nsIPKCS11Module.h"
 #include "nsIPKCS11ModuleDB.h"
 #include "nsIPKCS11Slot.h"
 #include "nsISupports.h"
 #include "nsNSSShutDown.h"
 #include "nsString.h"
 #include "pk11func.h"
 
@@ -59,23 +58,21 @@ protected:
 private:
   mozilla::UniqueSECMODModule mModule;
 
   virtual void virtualDestroyNSSReference() override;
   void destructorSafeDestroyNSSReference();
 };
 
 class nsPKCS11ModuleDB : public nsIPKCS11ModuleDB
-                       , public nsICryptoFIPSInfo
                        , public nsNSSShutDownObject
 {
 public:
   NS_DECL_ISUPPORTS
   NS_DECL_NSIPKCS11MODULEDB
-  NS_DECL_NSICRYPTOFIPSINFO
 
   nsPKCS11ModuleDB();
 
 protected:
   virtual ~nsPKCS11ModuleDB();
 
   // Nothing to release.
   virtual void virtualDestroyNSSReference() override {}