Blame SOURCES/nss-lockcert-api-change.patch

744490
# HG changeset patch
744490
# User Franziskus Kiefer <franziskuskiefer@gmail.com>
744490
# Date 1486546862 -3600
744490
#      Wed Feb 08 10:41:02 2017 +0100
744490
# Node ID 896e3eb3a79933a51886949c7adb67ef37b721c0
744490
# Parent  a8d77070526320ad0edc7ba164ce97f10c4f7d94
744490
Bug 1278965 - tsan race in CERTCertificate, r=wtc,ttaubert
744490
744490
diff --git a/lib/certdb/cert.h b/lib/certdb/cert.h
744490
--- a/lib/certdb/cert.h
744490
+++ b/lib/certdb/cert.h
744490
@@ -1405,24 +1405,11 @@ void CERT_SetStatusConfig(CERTCertDBHand
744490
 void CERT_LockCertRefCount(CERTCertificate *cert);
744490
 
744490
 /*
744490
- * Free the cert reference count lock
744490
+ * Release the cert reference count lock
744490
  */
744490
 void CERT_UnlockCertRefCount(CERTCertificate *cert);
744490
 
744490
 /*
744490
- * Acquire the cert trust lock
744490
- * There is currently one global lock for all certs, but I'm putting a cert
744490
- * arg here so that it will be easy to make it per-cert in the future if
744490
- * that turns out to be necessary.
744490
- */
744490
-void CERT_LockCertTrust(const CERTCertificate *cert);
744490
-
744490
-/*
744490
- * Free the cert trust lock
744490
- */
744490
-void CERT_UnlockCertTrust(const CERTCertificate *cert);
744490
-
744490
-/*
744490
  * Digest the cert's subject public key using the specified algorithm.
744490
  * NOTE: this digests the value of the BIT STRING subjectPublicKey (excluding
744490
  * the tag, length, and number of unused bits) rather than the whole
744490
diff --git a/lib/certdb/certi.h b/lib/certdb/certi.h
744490
--- a/lib/certdb/certi.h
744490
+++ b/lib/certdb/certi.h
744490
@@ -378,14 +378,27 @@ PRUint32 cert_CountDNSPatterns(CERTGener
744490
 SECStatus cert_CheckLeafTrust(CERTCertificate* cert, SECCertUsage usage,
744490
                               unsigned int* failedFlags, PRBool* isTrusted);
744490
 
744490
 /*
744490
  * Acquire the cert temp/perm lock
744490
  */
744490
 void CERT_LockCertTempPerm(const CERTCertificate* cert);
744490
 
744490
 /*
744490
  * Release the temp/perm lock
744490
  */
744490
 void CERT_UnlockCertTempPerm(const CERTCertificate* cert);
744490
 
744490
+/*
744490
+ * Acquire the cert trust lock
744490
+ * There is currently one global lock for all certs, but I'm putting a cert
744490
+ * arg here so that it will be easy to make it per-cert in the future if
744490
+ * that turns out to be necessary.
744490
+ */
744490
+void CERT_LockCertTrust(const CERTCertificate* cert);
744490
+
744490
+/*
744490
+ * Release the cert trust lock
744490
+ */
744490
+void CERT_UnlockCertTrust(const CERTCertificate* cert);
744490
+
744490
 #endif /* _CERTI_H_ */