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