Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 Feb 2013 14:11:14 GMT
From:      svn-freebsd-gecko@chruetertee.ch
To:        freebsd-gecko@freebsd.org
Subject:   [SVN-Commit] r1171 - in trunk: security/nss/files www/firefox-nightly/files
Message-ID:  <201302161411.r1GEBEQm096043@trillian.chruetertee.ch>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Sat Feb 16 14:11:14 2013
New Revision: 1171

Log:
move r1157 workaround back to Nightly

Added:
   trunk/www/firefox-nightly/files/patch-bug834091
Deleted:
   trunk/security/nss/files/patch-bug834091

Deleted: trunk/security/nss/files/patch-bug834091
==============================================================================
--- trunk/security/nss/files/patch-bug834091	Sat Feb 16 14:11:14 2013	(r1170)
+++ /dev/null	00:00:00 1970	(deleted)
@@ -1,150 +0,0 @@
-commit 8d8975b
-Author: Carmen Jiménez Cabezas <macajc@gmail.com>
-Date:   Fri Jan 25 15:36:36 2013 -0800
-
-    Bug 834091: Verify certificate chain for signed B2G apps as of the current time (now) instead of the signing time, r=bsmith
-    
-    --HG--
-    extra : amend_source : 86d8ca2b28259aaf41983740b809ef8a51befc4f
-    extra : rebase_source : e5a1c1199756e929f14852f5c83ba28d097449f4
----
- .../manager/ssl/src/JARSignatureVerification.cpp   |   6 +-
- security/nss/lib/pkcs7/p7decode.c                  |  41 +++-
- security/nss/lib/pkcs7/secpkcs7.h                  |  17 ++
- security/nss/lib/smime/smime.def                   |   6 +
- security/patches/README                            |   4 +
- security/patches/bug-834091.patch                  | 216 +++++++++++++++++++++
- 6 files changed, 281 insertions(+), 9 deletions(-)
-
-diff --git lib/pkcs7/p7decode.c lib/pkcs7/p7decode.c
-index d0d02d7..dc3339a 100644
---- lib/pkcs7/p7decode.c
-+++ lib/pkcs7/p7decode.c
-@@ -1281,7 +1281,8 @@ sec_pkcs7_verify_signature(SEC_PKCS7ContentInfo *cinfo,
- 			   SECCertUsage certusage,
- 			   const SECItem *detached_digest,
- 			   HASH_HashType digest_type,
--			   PRBool keepcerts)
-+			   PRBool keepcerts,
-+			   PRTime atTime)
- {
-     SECAlgorithmID **digestalgs, *bulkid;
-     const SECItem *digest;
-@@ -1299,7 +1300,8 @@ sec_pkcs7_verify_signature(SEC_PKCS7ContentInfo *cinfo,
-     SECItem *content_type;
-     PK11SymKey *sigkey;
-     SECItem *encoded_stime;
--    int64 stime;
-+    PRTime stime;
-+    PRTime verificationTime;
-     SECStatus rv;
- 
-     /*
-@@ -1436,8 +1438,10 @@ sec_pkcs7_verify_signature(SEC_PKCS7ContentInfo *cinfo,
-      * in a time (and for non-S/MIME callers to pass in nothing, or
-      * maybe make them pass in the current time, always?).
-      */
-+    verificationTime = atTime ? atTime
-+			      : (encoded_stime ? stime : PR_Now());
-     if (CERT_VerifyCert (certdb, cert, PR_TRUE, certusage,
--			 encoded_stime != NULL ? stime : PR_Now(),
-+			 verificationTime,
- 			 cinfo->pwfn_arg, NULL) != SECSuccess)
- 	{
- 	/*
-@@ -1757,7 +1761,7 @@ SEC_PKCS7VerifySignature(SEC_PKCS7ContentInfo *cinfo,
- 			 PRBool keepcerts)
- {
-     return sec_pkcs7_verify_signature (cinfo, certusage,
--				       NULL, HASH_AlgNULL, keepcerts);
-+				       NULL, HASH_AlgNULL, keepcerts, 0);
- }
- 
- /*
-@@ -1779,9 +1783,34 @@ SEC_PKCS7VerifyDetachedSignature(SEC_PKCS7ContentInfo *cinfo,
- {
-     return sec_pkcs7_verify_signature (cinfo, certusage,
- 				       detached_digest, digest_type,
--				       keepcerts);
-+				       keepcerts, 0);
- }
- 
-+/*
-+ * SEC_PKCS7VerifyDetachedSignatureAtTime
-+ *      Look at a PKCS7 contentInfo and check if the signature matches
-+ *      a passed-in digest (calculated, supposedly, from detached contents).
-+ *      The verification checks that the signing cert is valid and trusted
-+ *      for the purpose specified by "certusage" at time "atTime"
-+ *      if "atTime" is non-zero, or at the current time (as returned by
-+ *      PR_Now) otherwise.
-+ */
-+PRBool
-+SEC_PKCS7VerifyDetachedSignatureAtTime(SEC_PKCS7ContentInfo *cinfo,
-+				       SECCertUsage certusage,
-+				       const SECItem *detached_digest,
-+				       HASH_HashType digest_type,
-+				       PRBool keepcerts,
-+				       PRTime atTime)
-+{
-+    if (!atTime) {
-+	atTime = PR_Now();
-+    }
-+
-+    return sec_pkcs7_verify_signature (cinfo, certusage,
-+				       detached_digest, digest_type,
-+				       keepcerts, atTime);
-+}
- 
- /*
-  * Return the asked-for portion of the name of the signer of a PKCS7
-@@ -1844,7 +1873,7 @@ sec_pkcs7_get_signer_cert_info(SEC_PKCS7ContentInfo *cinfo, int selector)
- 	 * some valid usage to pass in.
- 	 */
- 	(void) sec_pkcs7_verify_signature (cinfo, certUsageEmailSigner,
--					   NULL, HASH_AlgNULL, PR_FALSE);
-+					   NULL, HASH_AlgNULL, PR_FALSE, 0);
- 	signercert = signerinfos[0]->cert;
- 	if (signercert == NULL)
- 	    return NULL;
-diff --git lib/pkcs7/secpkcs7.h lib/pkcs7/secpkcs7.h
-index a50f5ae..d1dd7b9 100644
---- lib/pkcs7/secpkcs7.h
-+++ lib/pkcs7/secpkcs7.h
-@@ -133,6 +133,23 @@ extern PRBool SEC_PKCS7VerifyDetachedSignature(SEC_PKCS7ContentInfo *cinfo,
- 					       HASH_HashType digest_type,
- 					       PRBool keepcerts);
- 
-+
-+/*
-+ * SEC_PKCS7VerifyDetachedSignatureAtTime
-+ *      Look at a PKCS7 contentInfo and check if the signature matches
-+ *      a passed-in digest (calculated, supposedly, from detached contents).
-+ *      The verification checks that the signing cert is valid and trusted
-+ *      for the purpose specified by "certusage" at time "atTime"
-+ *      if "atTime" is non-zero, or at the current time (as returned by
-+ *      PR_Now) otherwise.
-+ */
-+extern PRBool SEC_PKCS7VerifyDetachedSignatureAtTime(SEC_PKCS7ContentInfo *cinfo,
-+						     SECCertUsage certusage,
-+						     const SECItem *detached_digest,
-+						     HASH_HashType digest_type,
-+						     PRBool keepcerts,
-+						     PRTime atTime);
-+
- /*
-  * SEC_PKCS7GetSignerCommonName, SEC_PKCS7GetSignerEmailAddress
-  *      The passed-in contentInfo is espected to be Signed, and these
-diff --git lib/smime/smime.def lib/smime/smime.def
-index 623eaa4..b205d1c 100644
---- lib/smime/smime.def
-+++ lib/smime/smime.def
-@@ -267,3 +267,9 @@ NSSSMIME_GetVersion;
- ;+    local:
- ;+       *;
- ;+};
-+;+NSS_3.14.2 {    # NSS 3.14.2 release
-+;+    global:
-+SEC_PKCS7VerifyDetachedSignatureAtTime;
-+;+    local:
-+;+       *;
-+;+};

Added: trunk/www/firefox-nightly/files/patch-bug834091
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ trunk/www/firefox-nightly/files/patch-bug834091	Sat Feb 16 14:11:14 2013	(r1171)
@@ -0,0 +1,35 @@
+commit 8d8975b
+Author: Carmen Jiménez Cabezas <macajc@gmail.com>
+Date:   Fri Jan 25 15:36:36 2013 -0800
+
+    Bug 834091: Verify certificate chain for signed B2G apps as of the current time (now) instead of the signing time, r=bsmith
+    
+    --HG--
+    extra : amend_source : 86d8ca2b28259aaf41983740b809ef8a51befc4f
+    extra : rebase_source : e5a1c1199756e929f14852f5c83ba28d097449f4
+---
+ .../manager/ssl/src/JARSignatureVerification.cpp   |   6 +-
+ security/nss/lib/pkcs7/p7decode.c                  |  41 +++-
+ security/nss/lib/pkcs7/secpkcs7.h                  |  17 ++
+ security/nss/lib/smime/smime.def                   |   6 +
+ security/patches/README                            |   4 +
+ security/patches/bug-834091.patch                  | 216 +++++++++++++++++++++
+ 6 files changed, 281 insertions(+), 9 deletions(-)
+
+diff --git security/manager/ssl/src/JARSignatureVerification.cpp security/manager/ssl/src/JARSignatureVerification.cpp
+index d0a8b98..8e694d3 100644
+--- security/manager/ssl/src/JARSignatureVerification.cpp
++++ security/manager/ssl/src/JARSignatureVerification.cpp
+@@ -586,9 +586,9 @@
+   }
+ 
+   // Verify that the signature file is a valid signature of the SF file
+-  if (!SEC_PKCS7VerifyDetachedSignatureAtTime(p7_info, certUsageObjectSigner,
+-                                              &sfCalculatedDigest.get(),
+-                                              HASH_AlgSHA1, false, PR_Now())) {
++  if (!SEC_PKCS7VerifyDetachedSignature(p7_info, certUsageObjectSigner,
++                                        &sfCalculatedDigest.get(), HASH_AlgSHA1,
++                                        false)) {
+     PRErrorCode error = PR_GetError();
+     const char * errorName = PR_ErrorToName(error);
+     PR_LOG(gPIPNSSLog, PR_LOG_DEBUG, ("Failed to verify detached signature: %s",



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201302161411.r1GEBEQm096043>