Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(458)

Unified Diff: net/third_party/nss/patches/cachelocks.patch

Issue 992733002: Remove //net (except for Android test stuff) and sdch (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/third_party/nss/patches/cachecerts.patch ('k') | net/third_party/nss/patches/chacha20poly1305.patch » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/third_party/nss/patches/cachelocks.patch
diff --git a/net/third_party/nss/patches/cachelocks.patch b/net/third_party/nss/patches/cachelocks.patch
deleted file mode 100644
index d52bf532cc7c2ee6963c3939cd8641b7937cb00d..0000000000000000000000000000000000000000
--- a/net/third_party/nss/patches/cachelocks.patch
+++ /dev/null
@@ -1,233 +0,0 @@
-diff -pu a/nss/lib/ssl/ssl3con.c b/nss/lib/ssl/ssl3con.c
---- a/nss/lib/ssl/ssl3con.c 2014-01-17 18:10:16.783281701 -0800
-+++ b/nss/lib/ssl/ssl3con.c 2014-01-17 18:11:03.734060469 -0800
-@@ -5678,7 +5678,6 @@ SSL3_ShutdownServerCache(void)
- }
-
- PZ_Unlock(symWrapKeysLock);
-- ssl_FreeSessionCacheLocks();
- return SECSuccess;
- }
-
-@@ -5730,7 +5729,7 @@ getWrappingKey( sslSocket * ss,
-
- pSymWrapKey = &symWrapKeys[symWrapMechIndex].symWrapKey[exchKeyType];
-
-- ssl_InitSessionCacheLocks(PR_TRUE);
-+ ssl_InitSessionCacheLocks();
-
- PZ_Lock(symWrapKeysLock);
-
-diff -pu a/nss/lib/ssl/sslimpl.h b/nss/lib/ssl/sslimpl.h
---- a/nss/lib/ssl/sslimpl.h 2014-01-17 18:10:16.793281867 -0800
-+++ b/nss/lib/ssl/sslimpl.h 2014-01-17 18:11:03.734060469 -0800
-@@ -1913,9 +1913,7 @@ extern SECStatus ssl_InitSymWrapKeysLock
-
- extern SECStatus ssl_FreeSymWrapKeysLock(void);
-
--extern SECStatus ssl_InitSessionCacheLocks(PRBool lazyInit);
--
--extern SECStatus ssl_FreeSessionCacheLocks(void);
-+extern SECStatus ssl_InitSessionCacheLocks(void);
-
- /***************** platform client auth ****************/
-
-diff -pu a/nss/lib/ssl/sslnonce.c b/nss/lib/ssl/sslnonce.c
---- a/nss/lib/ssl/sslnonce.c 2014-01-17 17:59:03.242109996 -0800
-+++ b/nss/lib/ssl/sslnonce.c 2014-01-17 18:11:03.754060801 -0800
-@@ -35,91 +35,55 @@ static PZLock * cacheLock = NULL;
- #define LOCK_CACHE lock_cache()
- #define UNLOCK_CACHE PZ_Unlock(cacheLock)
-
--static SECStatus
--ssl_InitClientSessionCacheLock(void)
--{
-- cacheLock = PZ_NewLock(nssILockCache);
-- return cacheLock ? SECSuccess : SECFailure;
--}
--
--static SECStatus
--ssl_FreeClientSessionCacheLock(void)
--{
-- if (cacheLock) {
-- PZ_DestroyLock(cacheLock);
-- cacheLock = NULL;
-- return SECSuccess;
-- }
-- PORT_SetError(SEC_ERROR_NOT_INITIALIZED);
-- return SECFailure;
--}
--
--static PRBool LocksInitializedEarly = PR_FALSE;
--
--static SECStatus
--FreeSessionCacheLocks()
--{
-- SECStatus rv1, rv2;
-- rv1 = ssl_FreeSymWrapKeysLock();
-- rv2 = ssl_FreeClientSessionCacheLock();
-- if ( (SECSuccess == rv1) && (SECSuccess == rv2) ) {
-- return SECSuccess;
-- }
-- return SECFailure;
--}
-+static PRCallOnceType lockOnce;
-
-+/* FreeSessionCacheLocks is a callback from NSS_RegisterShutdown which destroys
-+ * the session cache locks on shutdown and resets them to their initial
-+ * state. */
- static SECStatus
--InitSessionCacheLocks(void)
-+FreeSessionCacheLocks(void* appData, void* nssData)
- {
-- SECStatus rv1, rv2;
-- PRErrorCode rc;
-- rv1 = ssl_InitSymWrapKeysLock();
-- rv2 = ssl_InitClientSessionCacheLock();
-- if ( (SECSuccess == rv1) && (SECSuccess == rv2) ) {
-- return SECSuccess;
-- }
-- rc = PORT_GetError();
-- FreeSessionCacheLocks();
-- PORT_SetError(rc);
-- return SECFailure;
--}
-+ static const PRCallOnceType pristineCallOnce;
-+ SECStatus rv;
-
--/* free the session cache locks if they were initialized early */
--SECStatus
--ssl_FreeSessionCacheLocks()
--{
-- PORT_Assert(PR_TRUE == LocksInitializedEarly);
-- if (!LocksInitializedEarly) {
-+ if (!cacheLock) {
- PORT_SetError(SEC_ERROR_NOT_INITIALIZED);
- return SECFailure;
- }
-- FreeSessionCacheLocks();
-- LocksInitializedEarly = PR_FALSE;
-- return SECSuccess;
--}
-
--static PRCallOnceType lockOnce;
-+ PZ_DestroyLock(cacheLock);
-+ cacheLock = NULL;
-
--/* free the session cache locks if they were initialized lazily */
--static SECStatus ssl_ShutdownLocks(void* appData, void* nssData)
--{
-- PORT_Assert(PR_FALSE == LocksInitializedEarly);
-- if (LocksInitializedEarly) {
-- PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
-- return SECFailure;
-+ rv = ssl_FreeSymWrapKeysLock();
-+ if (rv != SECSuccess) {
-+ return rv;
- }
-- FreeSessionCacheLocks();
-- memset(&lockOnce, 0, sizeof(lockOnce));
-+
-+ lockOnce = pristineCallOnce;
- return SECSuccess;
- }
-
--static PRStatus initSessionCacheLocksLazily(void)
-+/* InitSessionCacheLocks is called, protected by lockOnce, to create the
-+ * session cache locks. */
-+static PRStatus
-+InitSessionCacheLocks(void)
- {
-- SECStatus rv = InitSessionCacheLocks();
-- if (SECSuccess != rv) {
-+ SECStatus rv;
-+
-+ cacheLock = PZ_NewLock(nssILockCache);
-+ if (cacheLock == NULL) {
- return PR_FAILURE;
- }
-- rv = NSS_RegisterShutdown(ssl_ShutdownLocks, NULL);
-+ rv = ssl_InitSymWrapKeysLock();
-+ if (rv != SECSuccess) {
-+ PRErrorCode error = PORT_GetError();
-+ PZ_DestroyLock(cacheLock);
-+ cacheLock = NULL;
-+ PORT_SetError(error);
-+ return PR_FAILURE;
-+ }
-+
-+ rv = NSS_RegisterShutdown(FreeSessionCacheLocks, NULL);
- PORT_Assert(SECSuccess == rv);
- if (SECSuccess != rv) {
- return PR_FAILURE;
-@@ -127,34 +91,18 @@ static PRStatus initSessionCacheLocksLaz
- return PR_SUCCESS;
- }
-
--/* lazyInit means that the call is not happening during a 1-time
-- * initialization function, but rather during dynamic, lazy initialization
-- */
- SECStatus
--ssl_InitSessionCacheLocks(PRBool lazyInit)
-+ssl_InitSessionCacheLocks(void)
- {
-- if (LocksInitializedEarly) {
-- return SECSuccess;
-- }
--
-- if (lazyInit) {
-- return (PR_SUCCESS ==
-- PR_CallOnce(&lockOnce, initSessionCacheLocksLazily)) ?
-- SECSuccess : SECFailure;
-- }
--
-- if (SECSuccess == InitSessionCacheLocks()) {
-- LocksInitializedEarly = PR_TRUE;
-- return SECSuccess;
-- }
--
-- return SECFailure;
-+ return (PR_SUCCESS ==
-+ PR_CallOnce(&lockOnce, InitSessionCacheLocks)) ?
-+ SECSuccess : SECFailure;
- }
-
--static void
-+static void
- lock_cache(void)
- {
-- ssl_InitSessionCacheLocks(PR_TRUE);
-+ ssl_InitSessionCacheLocks();
- PZ_Lock(cacheLock);
- }
-
-diff -pu a/nss/lib/ssl/sslsnce.c b/nss/lib/ssl/sslsnce.c
---- a/nss/lib/ssl/sslsnce.c 2014-01-17 17:49:26.072517368 -0800
-+++ b/nss/lib/ssl/sslsnce.c 2014-01-17 18:11:03.774061133 -0800
-@@ -1353,7 +1353,7 @@ SSL_ConfigServerSessionIDCache( int
- PRUint32 ssl3_timeout,
- const char * directory)
- {
-- ssl_InitSessionCacheLocks(PR_FALSE);
-+ ssl_InitSessionCacheLocks();
- return SSL_ConfigServerSessionIDCacheInstance(&globalCache,
- maxCacheEntries, ssl2_timeout, ssl3_timeout, directory, PR_FALSE);
- }
-@@ -1467,7 +1467,7 @@ SSL_ConfigServerSessionIDCacheWithOpt(
- PRBool enableMPCache)
- {
- if (!enableMPCache) {
-- ssl_InitSessionCacheLocks(PR_FALSE);
-+ ssl_InitSessionCacheLocks();
- return ssl_ConfigServerSessionIDCacheInstanceWithOpt(&globalCache,
- ssl2_timeout, ssl3_timeout, directory, PR_FALSE,
- maxCacheEntries, maxCertCacheEntries, maxSrvNameCacheEntries);
-@@ -1512,7 +1512,7 @@ SSL_InheritMPServerSIDCacheInstance(cach
- return SECSuccess; /* already done. */
- }
-
-- ssl_InitSessionCacheLocks(PR_FALSE);
-+ ssl_InitSessionCacheLocks();
-
- ssl_sid_lookup = ServerSessionIDLookup;
- ssl_sid_cache = ServerSessionIDCache;
« no previous file with comments | « net/third_party/nss/patches/cachecerts.patch ('k') | net/third_party/nss/patches/chacha20poly1305.patch » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698