diff --git a/security/manager/ssl/public/nsIX509CertList.idl b/security/manager/ssl/public/nsIX509CertList.idl index d51b7b31ebfb..f1175efb98d0 100644 --- a/security/manager/ssl/public/nsIX509CertList.idl +++ b/security/manager/ssl/public/nsIX509CertList.idl @@ -22,10 +22,10 @@ interface nsIX509CertList : nsISupports { %{C++ -#define NS_X509CERRTLIST_CID { /* 959fb165-6517-487f-ab9b-d8913be53197 */ \ +#define NS_X509CERTLIST_CID { /* 959fb165-6517-487f-ab9b-d8913be53197 */ \ 0x959fb165, \ 0x6517, \ - 0x487f \ + 0x487f, \ {0xab, 0x9b, 0xd8, 0x91, 0x3b, 0xe5, 0x31, 0x97} \ } diff --git a/security/manager/ssl/src/nsNSSCertificate.cpp b/security/manager/ssl/src/nsNSSCertificate.cpp index 0f18c3f34fff..53ce8152231f 100644 --- a/security/manager/ssl/src/nsNSSCertificate.cpp +++ b/security/manager/ssl/src/nsNSSCertificate.cpp @@ -1553,6 +1553,11 @@ nsNSSCertList::nsNSSCertList(insanity::pkix::ScopedCERTCertList& certList, } } +nsNSSCertList::nsNSSCertList() +{ + mCertList = CERT_NewCertList(); +} + nsNSSCertList::~nsNSSCertList() { nsNSSShutDownPreventionLock locker; diff --git a/security/manager/ssl/src/nsNSSCertificate.h b/security/manager/ssl/src/nsNSSCertificate.h index fece6044d0ff..8be39f8e56e9 100644 --- a/security/manager/ssl/src/nsNSSCertificate.h +++ b/security/manager/ssl/src/nsNSSCertificate.h @@ -80,10 +80,12 @@ public: NS_DECL_THREADSAFE_ISUPPORTS NS_DECL_NSIX509CERTLIST - // certList is adopted + // certList is adopted nsNSSCertList(insanity::pkix::ScopedCERTCertList& certList, const nsNSSShutDownPreventionLock& proofOfLock); + nsNSSCertList(); + static CERTCertList* DupCertList(CERTCertList* aCertList, const nsNSSShutDownPreventionLock& proofOfLock); diff --git a/security/manager/ssl/src/nsNSSModule.cpp b/security/manager/ssl/src/nsNSSModule.cpp index cc34b35b179c..508f44668a35 100644 --- a/security/manager/ssl/src/nsNSSModule.cpp +++ b/security/manager/ssl/src/nsNSSModule.cpp @@ -186,6 +186,7 @@ NS_NSS_GENERIC_FACTORY_CONSTRUCTOR_BYPROCESS(nssEnsureOnChromeOnly, nsNSSCertificateFakeTransport) NS_NSS_GENERIC_FACTORY_CONSTRUCTOR(nssEnsure, nsNSSCertificateDB) NS_NSS_GENERIC_FACTORY_CONSTRUCTOR(nssEnsure, nsNSSCertCache) +NS_NSS_GENERIC_FACTORY_CONSTRUCTOR(nssEnsure, nsNSSCertList) #ifdef MOZ_XUL NS_NSS_GENERIC_FACTORY_CONSTRUCTOR(nssEnsure, nsCertTree) #endif @@ -223,6 +224,7 @@ NS_DEFINE_NAMED_CID(NS_PKCS11MODULEDB_CID); NS_DEFINE_NAMED_CID(NS_PSMCONTENTLISTEN_CID); NS_DEFINE_NAMED_CID(NS_X509CERT_CID); NS_DEFINE_NAMED_CID(NS_X509CERTDB_CID); +NS_DEFINE_NAMED_CID(NS_X509CERTLIST_CID); NS_DEFINE_NAMED_CID(NS_NSSCERTCACHE_CID); NS_DEFINE_NAMED_CID(NS_FORMPROCESSOR_CID); #ifdef MOZ_XUL @@ -261,6 +263,7 @@ static const mozilla::Module::CIDEntry kNSSCIDs[] = { { &kNS_PSMCONTENTLISTEN_CID, false, nullptr, PSMContentListenerConstructor }, { &kNS_X509CERT_CID, false, nullptr, nsNSSCertificateConstructor }, { &kNS_X509CERTDB_CID, false, nullptr, nsNSSCertificateDBConstructor }, + { &kNS_X509CERTLIST_CID, false, nullptr, nsNSSCertListConstructor }, { &kNS_NSSCERTCACHE_CID, false, nullptr, nsNSSCertCacheConstructor }, { &kNS_FORMPROCESSOR_CID, false, nullptr, nsKeygenFormProcessor::Create }, #ifdef MOZ_XUL @@ -302,6 +305,7 @@ static const mozilla::Module::ContractIDEntry kNSSContracts[] = { { NS_PKCS11MODULEDB_CONTRACTID, &kNS_PKCS11MODULEDB_CID }, { NS_PSMCONTENTLISTEN_CONTRACTID, &kNS_PSMCONTENTLISTEN_CID }, { NS_X509CERTDB_CONTRACTID, &kNS_X509CERTDB_CID }, + { NS_X509CERTLIST_CONTRACTID, &kNS_X509CERTLIST_CID }, { NS_NSSCERTCACHE_CONTRACTID, &kNS_NSSCERTCACHE_CID }, { NS_FORMPROCESSOR_CONTRACTID, &kNS_FORMPROCESSOR_CID }, #ifdef MOZ_XUL