diff options
author | wolfbeast <mcwerewolf@gmail.com> | 2018-09-01 23:45:10 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@gmail.com> | 2018-09-01 23:45:10 +0200 |
commit | 1425f020c47b3cbe134f71717299714aead28502 (patch) | |
tree | 47c50413b1bb972617454b100f60c10a4516ca36 /xpcom/build/XPCOMInit.cpp | |
parent | 69627ad410935edf4a74a4d4678105d51a662263 (diff) | |
download | UXP-1425f020c47b3cbe134f71717299714aead28502.tar UXP-1425f020c47b3cbe134f71717299714aead28502.tar.gz UXP-1425f020c47b3cbe134f71717299714aead28502.tar.lz UXP-1425f020c47b3cbe134f71717299714aead28502.tar.xz UXP-1425f020c47b3cbe134f71717299714aead28502.zip |
Remove support for TLS session caches in TLSServerSocket.
This resolves #738
Diffstat (limited to 'xpcom/build/XPCOMInit.cpp')
-rw-r--r-- | xpcom/build/XPCOMInit.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/xpcom/build/XPCOMInit.cpp b/xpcom/build/XPCOMInit.cpp index e8ee5828a..b89f51a98 100644 --- a/xpcom/build/XPCOMInit.cpp +++ b/xpcom/build/XPCOMInit.cpp @@ -123,6 +123,8 @@ extern nsresult nsStringInputStreamConstructor(nsISupports*, REFNSIID, void**); #include "nsMemoryInfoDumper.h" #include "nsSecurityConsoleMessage.h" #include "nsMessageLoop.h" +#include "nss.h" +#include "ssl.h" #include "nsStatusReporterManager.h" @@ -1043,6 +1045,17 @@ ShutdownXPCOM(nsIServiceManager* aServMgr) sInitializedJS = false; } + // At this point all networking threads should have been joined and the + // component manager is shut down. Any remaining objects that hold NSS + // resources (should!) have been released, so we can safely shut down NSS. + if (NSS_IsInitialized()) { + SSL_ClearSessionCache(); + // XXX: It would be nice if we can enforce this shutdown. + if (NSS_Shutdown() != SECSuccess) { + NS_WARNING("NSS Shutdown failed - some resources are still in use"); + } + } + // Release our own singletons // Do this _after_ shutting down the component manager, because the // JS component loader will use XPConnect to call nsIModule::canUnload, |