NSS-3.11.7
      
      
        
          Introduction to NSS
        
        
          The Network Security Services (NSS) package is a set of libraries designed to
          support cross-platform development of security-enabled client and
          server applications. Applications built with NSS can support SSL v2
          and v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3
          certificates, and other security standards. This is useful for
          implementing SSL and S/MIME or other Internet security standards
          into an application.
        
        
          The NSS package requires the
          Netscape Portable Runtime (NSPR) libraries as a prerequisite for
          building. The NSS package tarball
          contains the code necessary to build the NSPR libraries. These
          libraries are built and installed using the instructions below.
          Essentially, the NSS package is
          now a combined NSS/NSPR
          installation.
        
        
          Package Information
        
        
        
          Additional Downloads
        
        
        
          User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/nss
        
       
      
        
          Installation of NSS
        
        
          Install NSS by running the
          following commands:
        
        
bash
export WORKINGDIR=$PWD &&
export BUILD_OPT=1 &&
patch -Np1 -i ../nss-3.11.7-with-nspr-4.6.7-fedora_fixes-1.patch &&
cd mozilla/security/nss &&
make nss_build_all &&
cd ../.. &&
export NSS_LINUXDIR=$(basename `ls -d $WORKINGDIR/mozilla/dist/Linux*`)
        
          To test the results, you'll need to set the domain name of your
          system in the DOMSUF environment
          variable. Most of the tests will fail if you don't provide the
          correct domain name. A self-generated log file will be parsed at
          the end of the test to display how many tests passed. It should
          return 800. To run the tests, ensure you change the export DOMSUF command below to an
          appropriate value, e.g., mydomain.com and issue the following
          commands:
        
        
bash
export DOMSUF=<validdomain.name> &&
export PATH=$PATH:$WORKINGDIR/mozilla/dist/$NSS_LINUXDIR/bin &&
export TEST_RESULTSDIR=$WORKINGDIR/mozilla/tests_results/security &&
cd security/nss/tests &&
sed -i 's/gmake/make/' common/init.sh &&
./all.sh &&
grep Passed $TEST_RESULTSDIR/$(hostname).1/results.html | wc -l &&
exit
        
          
          
            Caution
          
          
            If you switch to the root user
            using a method that does not inherit the environment from the
            unprivileged user, ensure that root's NSS_LINUXDIR environment variable is set correctly
            before proceeding with the installation commands.
          
         
        
          Now, as the root user:
        
        
install -v -m755 nsprpub/$NSS_LINUXDIR/config/nspr-config \
                 security/nss/cmd/config/nss-config \
    /usr/bin &&
install -v -m755 -d /usr/lib/pkgconfig &&
install -v -m644 nsprpub/lib/pkgconfig/nspr.pc \
                 security/nss/lib/pkgconfig/nss.pc \
    /usr/lib/pkgconfig &&
cd dist &&
install -v -m755 $NSS_LINUXDIR/lib/*.so /usr/lib &&
install -v -m644 $NSS_LINUXDIR/lib/{*.chk,libcrmf.a} /usr/lib &&
install -v -m755 -d /usr/include/{nss,nspr} &&
install -v -m644 {public,private}/nss/* /usr/include/nss &&
cp -v -RL $NSS_LINUXDIR/include/* /usr/include/nspr &&
chmod -v 644 /usr/include/nspr/prvrsion.h
        
          Now as the unprivileged user, exit the bash shell started at the
          beginning of the installation to restore the environment to the
          original state.
        
        
exit
       
      
        
          Command Explanations
        
        
          bash: Shells are
          started as many environment variables are created during the
          installation process. Exiting the shells serves the purpose of
          restoring the environment and returning back to the original
          directory when the installation is complete.
        
        
          export
          WORKINGDIR=$PWD: This variable is set because many
          of the commands are dependent on knowing the full path of certain
          directories. WORKINGDIR establishes a
          known path so that all others can be determined relative to this.
        
        
          export BUILD_OPT=1:
          This variable is set so that the build is performed with no
          debugging symbols built into the binaries and that the default
          compiler optimizations are used.
        
        
          export
          NSS_LINUXDIR=...: This variable is set so that the
          exact name of the architecture specific directories where the
          binaries are stored in the source tree can be determined.
        
        
          make nss_build_all:
          This command builds the NSPR and NSS libraries and creates a dist directory which houses all the programs,
          libraries and interface headers. None of the programs created by
          this process are installed onto the system using the default
          instructions. If you need any of these programs installed, you can
          find them in the mozilla/dist/bin
          directory of the source tree.
        
        
          export PATH=...: This
          command sets the PATH environment
          variable to include the executables in the source tree as some of
          them are required to run the test suite.
        
        
          sed -i 's/gmake/make/'
          common/init.sh: This command changes the command
          used to compile some test programs.
        
       
      
        
          Contents
        
        
          
            
              Installed Programs:
              nspr-config and nss-config
            
            
              Installed Libraries:
              libcrmf.a, libfreebl3.so, libnspr4.so,
              libnss3.so, libnssckbi.so, libplc4.so, libplds4.so,
              libsmime3.so, libsoftokn3.so and libssl3.so
            
            
              Installed Directories:
              /usr/include/nspr and
              /usr/include/nss
            
           
         
        
          
            Short Descriptions
          
          
            
            
              
                | 
                   
                    nspr-config
                   
                 | 
                
                   
                    is used to determine the NSPR installation settings of
                    the installed NSPR libraries.
                   
                 | 
              
              
                | 
                   
                    nss-config
                   
                 | 
                
                   
                    is used to determine the NSS library settings of the
                    installed NSS libraries.
                   
                 | 
              
            
          
         
        
          The libnspr4.so, libplc4.so and libplds4.so libraries make up the Netscape
          Portable Runtime (NSPR) libraries. These libraries provide a
          platform-neutral API for system level and libc like functions. The
          API is used in the Mozilla client, many of the Netscape/AOL/iPlanet
          offerings and other software applications.
        
        
          The libcrmf.a, libfreebl.so, libnss3.so, libnssckbi.so, libsmime3.so, libsoftokn3.so and libnssl3.so libraries make up the NSS libraries.
        
       
      
        Last updated on 2007-07-15 10:53:33 -0500