[nss-softokn] - Update to NSS_3_13_RC0 post bootstrapping

Elio Maldonado emaldonado at fedoraproject.org
Tue Oct 11 19:32:07 UTC 2011


commit 6f87cb10324808843bbf6bdc9119b3257ee2c736
Author: Elio Maldonado <emaldona at redhat.com>
Date:   Tue Oct 11 12:23:58 2011 -0700

    - Update to NSS_3_13_RC0 post bootstrapping
    
    - Don't incude util in sources for the lookaside cache
    - Reenable building the fipstest tool
    - Restore full cli argument parsing in the sectool library

 nss-softokn.spec                         |   54 ++----------
 nss-split-softokn.sh                     |    8 +-
 softoken-minimal-test-dependencies.patch |  149 +++++++++++-------------------
 sources                                  |    2 +-
 temporary-rebase.patch                   |   34 -------
 5 files changed, 67 insertions(+), 180 deletions(-)
---
diff --git a/nss-softokn.spec b/nss-softokn.spec
index 59d0b1b..d94ba97 100644
--- a/nss-softokn.spec
+++ b/nss-softokn.spec
@@ -17,7 +17,7 @@
 Summary:          Network Security Services Softoken Module
 Name:             nss-softokn
 Version:          3.13
-Release:          0.1%{?dist}.rc0.2
+Release:          0.1%{?dist}.rc0.3
 License:          MPLv1.1 or GPLv2+ or LGPLv2+
 URL:              http://www.mozilla.org/projects/security/pki/nss/
 Group:            System Environment/Libraries
@@ -51,7 +51,6 @@ Source3:          nss-softokn-config.in
 
 Patch2:           nss-softokn-3.12.4-prelink.patch
 Patch4:           softoken-minimal-test-dependencies.patch
-Patch5:           temporary-rebase.patch
 
 %description
 Network Security Services Softoken Cryptographic Module
@@ -107,8 +106,6 @@ Header and Library files for doing development with Network Security Services.
 # FIXME uncomment these when we are ready
 # to resume testing of part of the build
 %patch4 -p0 -b .crypto
-%patch5 -p0 -b .temporary
-# patch 5 won't be needed after a while
 
 #rm -rf ./mozilla/security/nss/lib/util
 
@@ -144,15 +141,7 @@ NSPR_LIB_DIR=`/usr/bin/pkg-config --libs-only-L nspr | sed 's/-L//'`
 export NSPR_INCLUDE_DIR
 export NSPR_LIB_DIR
 
-# FIXME Change NSSUTIL_INCLUDE_DIR_LAST back to NSSUTIL_INCLUDE_DIR
-# when we are ready for it again. This is diabled because the headers
-# in the sytem are the old ones and they have changes with 3.13
-# The -I$NSSUTIL_INCLUDE_DIR appears first in list and the sytem headers
-# get selected instead of the ones in the tree. We can use gcc's -iquote
-# as CFLAGS += -iquote${NSSUTIL_INCLUDE_DIR_LAST} and have it included last
-# We are prtially bootstrapped so have them both for now
 export NSSUTIL_INCLUDE_DIR=`/usr/bin/pkg-config --cflags-only-I nss-util | sed 's/-I//'`
-export NSSUTIL_INCLUDE_DIR_LAST=`/usr/bin/pkg-config --cflags-only-I nss-util | sed 's/-I//'`
 export NSSUTIL_LIB_DIR=%{_libdir}
 
 NSS_USE_SYSTEM_SQLITE=1
@@ -246,8 +235,6 @@ cd ./mozilla/security/nss/tests/
 %global nss_ssl_tests " "
 %global nss_ssl_run " "
 
-# FIXME uncomment these when we are ready to resume testing of part of the build
-# We can run the tests now
 HOST=localhost DOMSUF=localdomain PORT=$MYRAND NSS_CYCLES=%{?nss_cycles} NSS_TESTS=%{?nss_tests} NSS_SSL_TESTS=%{?nss_ssl_tests} NSS_SSL_RUN=%{?nss_ssl_run} ./all.sh
 
 cd ../../../../
@@ -327,39 +314,6 @@ done
 %{__install} -p -m 644 ./mozilla/dist/pkgconfig/nss-softokn.pc $RPM_BUILD_ROOT/%{_libdir}/pkgconfig/nss-softokn.pc
 %{__install} -p -m 755 ./mozilla/dist/pkgconfig/nss-softokn-config $RPM_BUILD_ROOT/%{_bindir}/nss-softokn-config
 
-# this is temporary until the new version of nss-util-devel is installed
-# remove the nss-util-devel headers
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/base64.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/ciferfam.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/nssb64.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/nssb64t.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/nsslocks.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/nssilock.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/nssilckt.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/nssrwlk.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/nssrwlkt.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/nssutil.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/pkcs11.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/pkcs11f.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/pkcs11n.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/pkcs11p.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/pkcs11t.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/pkcs11u.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/portreg.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secasn1.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secasn1t.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/seccomon.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secder.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secdert.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secdig.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secdigt.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secerr.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secitem.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secoid.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secoidt.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/secport.h
-rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/utilrename.h
-
 
 %clean
 %{__rm} -rf $RPM_BUILD_ROOT
@@ -420,6 +374,12 @@ rm -rf $RPM_BUILD_ROOT/%{_includedir}/nss3/utilrename.h
 %{_includedir}/nss3/shsign.h
 
 %changelog
+* Tue Oct 11 2011 Elio Maldonado <emaldona at redhat.com> - 3.13-0.1.rc0.3
+- Update to NSS_3_13_RC0 post bootstrapping
+- Don't incude util in sources for the lookaside cache
+- Reenable building the fipstest tool
+- Restore full cli argument parsing in the sectool library
+
 * Sun Oct 09 2011 Elio Maldonado <emaldona at redhat.com> - 3.13-0.1.rc0.2
 - Update to NSS_3_13_RC0 bootstrapping the system phase 2
 - Reenable the cipher test suite
diff --git a/nss-split-softokn.sh b/nss-split-softokn.sh
old mode 100644
new mode 100755
index 3c8a9ca..49c4a40
--- a/nss-split-softokn.sh
+++ b/nss-split-softokn.sh
@@ -54,8 +54,10 @@ mkdir ${WORK_DIR}/${softokn_dir}/mozilla/security/nss/lib
 # copy entire freebl and softoken directories recursively
 cp -a ${nss_source_dir}/mozilla/security/nss/lib/freebl ${WORK_DIR}/${softokn_dir}/mozilla/security/nss/lib/freebl
 cp -a ${nss_source_dir}/mozilla/security/nss/lib/softoken ${WORK_DIR}/${softokn_dir}/mozilla/security/nss/lib/softoken
-# Copy util because some headers have changed, won't be needed in next update
-cp -a ${nss_source_dir}/mozilla/security/nss/lib/util ${WORK_DIR}/${softokn_dir}/mozilla/security/nss/lib/util
+# On boostrapping we may need to copy util because some headers have changed
+# Alternatively, we can bootsrap by rebasing nss and nss-util first and
+# when the system is boostrap then rebase nss-sotokn
+# cp -a ${nss_source_dir}/mozilla/security/nss/lib/util ${WORK_DIR}/${softokn_dir}/mozilla/security/nss/lib/util
 
 # and some Makefiles and related files
 cp ${nss_source_dir}/mozilla/security/nss/Makefile ${WORK_DIR}/${softokn_dir}/mozilla/security/nss
@@ -113,7 +115,7 @@ popd
 
 # cleanup after ourselves
 rm -fr ${nss_source_dir}
-rm -rf ${SOFTOKN_WORK}
+rm -rf ${WORK_DIR}
 
 
 
diff --git a/softoken-minimal-test-dependencies.patch b/softoken-minimal-test-dependencies.patch
index bb6dbe0..27f0750 100644
--- a/softoken-minimal-test-dependencies.patch
+++ b/softoken-minimal-test-dependencies.patch
@@ -1,6 +1,6 @@
 diff -up mozilla/security/nss/cmd/lib/manifest.mn.crypto mozilla/security/nss/cmd/lib/manifest.mn
 --- mozilla/security/nss/cmd/lib/manifest.mn.crypto	2011-09-16 12:16:50.000000000 -0700
-+++ mozilla/security/nss/cmd/lib/manifest.mn	2011-10-09 18:01:45.297861283 -0700
++++ mozilla/security/nss/cmd/lib/manifest.mn	2011-10-11 10:40:37.259477337 -0700
 @@ -48,11 +48,6 @@ PRIVATE_EXPORTS	= secutil.h \
  		  $(NULL)
  
@@ -15,7 +15,7 @@ diff -up mozilla/security/nss/cmd/lib/manifest.mn.crypto mozilla/security/nss/cm
  
 diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/lib/secutil.c
 --- mozilla/security/nss/cmd/lib/secutil.c.crypto	2011-09-16 12:16:50.000000000 -0700
-+++ mozilla/security/nss/cmd/lib/secutil.c	2011-10-09 18:01:45.299861311 -0700
++++ mozilla/security/nss/cmd/lib/secutil.c	2011-10-11 11:04:17.699269836 -0700
 @@ -48,10 +48,7 @@
  #include "prenv.h"
  #include "prnetdb.h"
@@ -578,7 +578,7 @@ diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/
  
  #define INDENT_MULT	4
  void
-@@ -975,2504 +464,74 @@ SECU_PrintInteger(FILE *out, SECItem *i,
+@@ -975,2464 +464,86 @@ SECU_PrintInteger(FILE *out, SECItem *i,
  }
  
  static void
@@ -597,7 +597,7 @@ diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/
 -	column = level*INDENT_MULT;
 -    }
 -    fprintf(out, "\""); column++;
- 
+-
 -    for (i = 0; i < si->len; i++) {
 -	unsigned char val = si->data[i];
 -	if (column > 76) {
@@ -607,7 +607,7 @@ diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/
 -
 -	fprintf(out,"%c", printable[val]); column++;
 -    }
--
+ 
 -    fprintf(out, "\""); column++;
 -    if (column != level*INDENT_MULT || column > 76) {
 -	secu_Newline(out);
@@ -692,13 +692,14 @@ diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/
 +	curveOID.data = pk->u.ec.DEREncodedParams.data + 2;
 +	SECU_PrintObjectID(out, &curveOID, "Curve", level +1);
      }
--
++}
++#endif /* NSS_ENABLE_ECC */
+ 
 -    if (m != NULL)
 -	fprintf(out, "\n");
--
+ 
 -    PORT_Free(timeString);
- }
-+#endif /* NSS_ENABLE_ECC */
+-}
  
 -/*
 - * Format and print the UTC Time "t".  If the tag message "m" is not NULL,
@@ -707,16 +708,28 @@ diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/
 - */
 -void
 -SECU_PrintUTCTime(FILE *out, SECItem *t, char *m, int level)
--{
++#if defined(DEBUG) || defined(FORCE_PR_ASSERT)
++/* Returns true iff a[i].flag has a duplicate in a[i+1 : count-1]  */
++static PRBool HasShortDuplicate(int i, secuCommandFlag *a, int count)
+ {
 -    int64 time;
 -    SECStatus rv;
 -
 -    rv = DER_UTCTimeToTime(&time, t);
 -    if (rv != SECSuccess)
 -	return;
--
++	char target = a[i].flag;
++	int j;
+ 
 -    secu_PrintTime(out, time, m, level);
--}
++	/* duplicate '\0' flags are okay, they are used with long forms */
++	for (j = i+1; j < count; j++) {
++		if (a[j].flag && a[j].flag == target) {
++			return PR_TRUE;
++		}
++	}
++	return PR_FALSE;
+ }
  
 -/*
 - * Format and print the Generalized Time "t".  If the tag message "m"
@@ -725,35 +738,36 @@ diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/
 - */
 -void
 -SECU_PrintGeneralizedTime(FILE *out, SECItem *t, char *m, int level)
-+SECStatus
-+SECU_ParseCommandLine(int argc, char **argv, char *progName,
-+		      const secuCommand *cmd)
++/* Returns true iff a[i].longform has a duplicate in a[i+1 : count-1] */
++static PRBool HasLongDuplicate(int i, secuCommandFlag *a, int count)
  {
 -    int64 time;
 -    SECStatus rv;
 -
--
++	int j;	
++	char *target = a[i].longform;
+ 
 -    rv = DER_GeneralizedTimeToTime(&time, t);
 -    if (rv != SECSuccess)
 -	return;
-+    PRBool found;
-+    PLOptState *optstate;
-+    PLOptStatus status;
-+    char *optstring;
-+    PLLongOpt *longopts = NULL;
-+    int i, j;
-+    int lcmd = 0, lopt = 0;
++	if (!target)
++		return PR_FALSE;
  
 -    secu_PrintTime(out, time, m, level);
--}
-+    PR_ASSERT(HasNoDuplicates(cmd->commands, cmd->numCommands));
-+    PR_ASSERT(HasNoDuplicates(cmd->options, cmd->numOptions));
++	for (j = i+1; j < count; j++) {
++		if (a[j].longform && strcmp(a[j].longform, target) == 0) {
++			return PR_TRUE;
++		}
++	}
++	return PR_FALSE;
+ }
  
 -/*
 - * Format and print the UTC or Generalized Time "t".  If the tag message
 - * "m" is not NULL, do indent formatting based on "level" and add a newline
 - * afterward; otherwise just print the formatted time string only.
-- */
++/* Returns true iff a has no short or long form duplicates
+  */
 -void
 -SECU_PrintTimeChoice(FILE *out, SECItem *t, char *m, int level)
 -{
@@ -3079,60 +3093,11 @@ diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/
 -/* Returns true iff a has no short or long form duplicates
 - */
 -PRBool HasNoDuplicates(secuCommandFlag *a, int count)
--{
--    int i;
--
--	for (i = 0; i < count; i++) {
--		if (a[i].flag && HasShortDuplicate(i, a, count)) {
--			return PR_FALSE;
--		}
--		if (a[i].longform && HasLongDuplicate(i, a, count)) {
--			return PR_FALSE;
--		}
--	}
--	return PR_TRUE;
--}
--#endif
--
--SECStatus
--SECU_ParseCommandLine(int argc, char **argv, char *progName,
--		      const secuCommand *cmd)
--{
--    PRBool found;
--    PLOptState *optstate;
--    PLOptStatus status;
--    char *optstring;
--    PLLongOpt *longopts = NULL;
--    int i, j;
--    int lcmd = 0, lopt = 0;
--
--    PR_ASSERT(HasNoDuplicates(cmd->commands, cmd->numCommands));
--    PR_ASSERT(HasNoDuplicates(cmd->options, cmd->numOptions));
--
--    optstring = (char *)PORT_Alloc(cmd->numCommands + 2*cmd->numOptions+1);
--    if (optstring == NULL)
--        return SECFailure;
--    
--    j = 0;
--    for (i=0; i<cmd->numCommands; i++) {
--	if (cmd->commands[i].flag) /* single character option ? */
--	    optstring[j++] = cmd->commands[i].flag;
--	if (cmd->commands[i].longform)
--	    lcmd++;
-+    optstring = (char *)PORT_Alloc(cmd->numCommands + 2*cmd->numOptions+1);
-+    if (optstring == NULL)
-+        return SECFailure;
-+    
-+    j = 0;
-+    for (i=0; i<cmd->numCommands; i++) {
-+	if (cmd->commands[i].flag) /* single character option ? */
-+	    optstring[j++] = cmd->commands[i].flag;
-+	if (cmd->commands[i].longform)
-+	    lcmd++;
-     }
-     for (i=0; i<cmd->numOptions; i++) {
- 	if (cmd->options[i].flag) {
-@@ -3611,144 +670,6 @@ SECU_PrintPRandOSError(char *progName) 
++PRBool HasNoDuplicates(secuCommandFlag *a, int count)
+ {
+     int i;
+ 
+@@ -3611,144 +722,6 @@ SECU_PrintPRandOSError(char *progName) 
  }
  
  
@@ -3277,7 +3242,7 @@ diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/
  SECOidTag 
  SECU_StringToSignatureAlgTag(const char *alg)
  {
-@@ -3775,298 +696,6 @@ SECU_StringToSignatureAlgTag(const char 
+@@ -3775,298 +748,6 @@ SECU_StringToSignatureAlgTag(const char 
  }
  
  
@@ -3576,7 +3541,7 @@ diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/
  /* Caller ensures that dst is at least item->len*2+1 bytes long */
  void
  SECU_SECItemToHex(const SECItem * item, char * dst)
-@@ -4130,39 +759,3 @@ SECU_SECItemHexStringToBinary(SECItem* s
+@@ -4130,39 +811,3 @@ SECU_SECItemHexStringToBinary(SECItem* s
      return SECSuccess;
  }
  
@@ -3618,7 +3583,7 @@ diff -up mozilla/security/nss/cmd/lib/secutil.c.crypto mozilla/security/nss/cmd/
 -
 diff -up mozilla/security/nss/cmd/lib/secutil.h.crypto mozilla/security/nss/cmd/lib/secutil.h
 --- mozilla/security/nss/cmd/lib/secutil.h.crypto	2011-09-16 12:16:50.000000000 -0700
-+++ mozilla/security/nss/cmd/lib/secutil.h	2011-10-09 18:03:11.008090160 -0700
++++ mozilla/security/nss/cmd/lib/secutil.h	2011-10-11 10:40:37.266477442 -0700
 @@ -38,7 +38,10 @@
  
  #include "seccomon.h"
@@ -3995,8 +3960,8 @@ diff -up mozilla/security/nss/cmd/lib/secutil.h.crypto mozilla/security/nss/cmd/
  #endif /* _SEC_UTIL_H_ */
 diff -up mozilla/security/nss/cmd/manifest.mn.crypto mozilla/security/nss/cmd/manifest.mn
 --- mozilla/security/nss/cmd/manifest.mn.crypto	2010-12-06 09:22:48.000000000 -0800
-+++ mozilla/security/nss/cmd/manifest.mn	2011-10-09 18:01:45.300861325 -0700
-@@ -41,46 +41,8 @@ DEPTH	= ../..
++++ mozilla/security/nss/cmd/manifest.mn	2011-10-11 11:30:54.592692661 -0700
+@@ -41,46 +41,9 @@ DEPTH	= ../..
  REQUIRES = nss nspr libdbm
  
  DIRS = lib  \
@@ -4030,6 +3995,7 @@ diff -up mozilla/security/nss/cmd/manifest.mn.crypto mozilla/security/nss/cmd/ma
 - selfserv  \
 - signtool \
 - signver \
++ fipstest \
   shlibsign \
 - smimetools  \
 - ssltap  \
@@ -4043,16 +4009,9 @@ diff -up mozilla/security/nss/cmd/manifest.mn.crypto mozilla/security/nss/cmd/ma
   $(NULL)
  
  TEMPORARILY_DONT_BUILD = \
-@@ -95,5 +57,6 @@ TEMPORARILY_DONT_BUILD = \
- # to build (requires allxpstr.h)
- #
- DONT_BULD = jar \
-+ fipstest \
-  perror \
- $(NULL)
 diff -up mozilla/security/nss/cmd/platlibs.mk.crypto mozilla/security/nss/cmd/platlibs.mk
 --- mozilla/security/nss/cmd/platlibs.mk.crypto	2010-06-11 17:58:33.000000000 -0700
-+++ mozilla/security/nss/cmd/platlibs.mk	2011-10-09 18:01:45.301861339 -0700
++++ mozilla/security/nss/cmd/platlibs.mk	2011-10-11 10:40:37.319478239 -0700
 @@ -92,44 +92,13 @@ DEFINES += -DNSS_USE_STATIC_LIBS
  # $(PROGRAM) has explicit dependencies on $(EXTRA_LIBS)
  CRYPTOLIB=$(SOFTOKEN_LIB_DIR)/$(LIB_PREFIX)freebl.$(LIB_SUFFIX)
@@ -4151,7 +4110,7 @@ diff -up mozilla/security/nss/cmd/platlibs.mk.crypto mozilla/security/nss/cmd/pl
  	-L$(NSPR_LIB_DIR) \
 diff -up mozilla/security/nss/tests/all.sh.crypto mozilla/security/nss/tests/all.sh
 --- mozilla/security/nss/tests/all.sh.crypto	2010-01-29 11:58:40.000000000 -0800
-+++ mozilla/security/nss/tests/all.sh	2011-10-09 18:01:45.301861339 -0700
++++ mozilla/security/nss/tests/all.sh	2011-10-11 11:06:41.884531933 -0700
 @@ -303,18 +303,18 @@ run_cycles()
  
  ############################## main code ###############################
diff --git a/sources b/sources
index 89d759d..32e5fa2 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-d321185dfed4c3cbd2bea46d380d4db4  nss-softokn-3.13-stripped.tar.bz2
+94357f97372f6ba81b0e7d653b889c8a  nss-softokn-3.13-stripped.tar.bz2


More information about the scm-commits mailing list