source: postlfs/security/nss.xml@ 99a1a4f

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 99a1a4f was 99a1a4f, checked in by DJ Lucas <dj@…>, 14 years ago

Installed additional utilities included with NSS.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@8277 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 8.5 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY nss-download-http "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_12_5_RTM/src/nss-&nss-version;.tar.gz">
8 <!ENTITY nss-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_12_5_RTM/src/nss-&nss-version;.tar.gz">
9 <!ENTITY nss-md5sum "50089cd0f14c690d41392fdbb1f69181">
10 <!ENTITY nss-size "5.1 MB">
11 <!ENTITY nss-buildsize "62 MB">
12 <!ENTITY nss-time "1.0 SBU (additional 0.9 SBU to run the test suite)">
13]>
14
15<sect1 id="nss" xreflabel="NSS-&nss-version;">
16 <?dbhtml filename="nss.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>NSS-&nss-version;</title>
24
25 <indexterm zone="nss">
26 <primary sortas="a-NSS">NSS</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to NSS</title>
31
32 <para>The Network Security Services (<application>NSS</application>)
33 package is a set of libraries designed to support cross-platform
34 development of security-enabled client and server applications.
35 Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5,
36 PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other
37 security standards. This is useful for implementing SSL and S/MIME or
38 other Internet security standards into an application.</para>
39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>Download (HTTP): <ulink url="&nss-download-http;"/></para>
44 </listitem>
45 <listitem>
46 <para>Download (FTP): <ulink url="&nss-download-ftp;"/></para>
47 </listitem>
48 <listitem>
49 <para>Download MD5 sum: &nss-md5sum;</para>
50 </listitem>
51 <listitem>
52 <para>Download size: &nss-size;</para>
53 </listitem>
54 <listitem>
55 <para>Estimated disk space required: &nss-buildsize;</para>
56 </listitem>
57 <listitem>
58 <para>Estimated build time: &nss-time;</para>
59 </listitem>
60 </itemizedlist>
61
62 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
63 <itemizedlist spacing="compact">
64 <listitem>
65 <para>Required patch: <ulink
66 url="&patch-root;/nss-&nss-version;-standalone-1.patch"/></para>
67 </listitem>
68 </itemizedlist>
69
70 <bridgehead renderas="sect3">NSS Dependencies</bridgehead>
71
72 <bridgehead renderas="sect4">Required</bridgehead>
73 <para role="required"><xref linkend="nspr"/></para>
74
75 <bridgehead renderas="sect4">Recommended</bridgehead>
76 <para role="recommended"><xref linkend="sqlite"/> (internal sqlite is
77 incompatable with existing or future installations)</para>
78
79
80 <para condition="html" role="usernotes">User Notes:
81 <ulink url="&blfs-wiki;/nss"/></para>
82
83 </sect2>
84
85 <sect2 role="installation">
86 <title>Installation of NSS</title>
87
88 <para>Install <application>NSS</application> by running the following
89 commands:</para>
90
91<screen><userinput>bash
92
93export BUILD_OPT=1 &amp;&amp;
94export NSS_USE_SYSTEM_SQLITE=1 &amp;&amp;
95export NSPR_INCLUDE_DIR=/usr/include/nspr &amp;&amp;
96export USE_SYSTEM_ZLIB=1 &amp;&amp;
97export ZLIB_LIBS=-lz &amp;&amp;
98patch -Np1 -i ../nss-&nss-version;-standalone-1.patch &amp;&amp;
99make -C mozilla/security/nss nss_build_all</userinput></screen>
100
101 <para>To test the results, you'll need to set the domain name of your
102 system in the <envar>DOMSUF</envar> environment variable. Most of the tests
103 will fail if you don't provide the correct domain name. A self-generated
104 log file will be parsed at the end of the test to display how many tests
105 passed. It should return 800. To run the tests, ensure you change the
106 <command>export DOMSUF</command> command below to an appropriate value,
107 e.g., <parameter>mydomain.com</parameter> and issue the following
108 commands:</para>
109
110<screen><userinput>bash
111
112export DOMSUF=<replaceable>&lt;validdomain.name&gt;</replaceable> &amp;&amp;
113export PATH=$PATH:$PWD/mozilla/dist/$NSS_LINUXDIR/bin &amp;&amp;
114export TEST_RESULTSDIR=$PWD/mozilla/tests_results/security &amp;&amp;
115
116cd mozilla/security/nss/tests &amp;&amp;
117sed -i 's/gmake/make/' common/init.sh &amp;&amp;
118./all.sh &amp;&amp;
119
120grep Passed $TEST_RESULTSDIR/$(hostname).1/results.html | wc -l &amp;&amp;
121
122exit</userinput></screen>
123
124 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
125
126<screen role="root"><userinput>export NSS_LINUXDIR=$(basename `ls -d $PWD/mozilla/dist/Linux*`) &amp;&amp;
127cd mozilla/dist &amp;&amp;
128install -v -m755 $NSS_LINUXDIR/lib/*.so /usr/lib &amp;&amp;
129install -v -m644 $NSS_LINUXDIR/lib/{*.chk,libcrmf.a} /usr/lib &amp;&amp;
130install -v -m755 -d /usr/include/nss &amp;&amp;
131install -v -m755 $NSS_LINUXDIR/bin/{certutil,nss-config,pk12util} /usr/bin &amp;&amp;
132install -v -m644 $NSS_LINUXDIR/lib/pkgconfig/nss.pc /usr/lib/pkgconfig &amp;&amp;
133cp -v -RL {public,private}/nss/* /usr/include/nss &amp;&amp;
134chmod 644 /usr/include/nss/*</userinput></screen>
135
136 <para>Now as the unprivileged user, exit the <command>bash</command>
137 shell started at the beginning of the installation to restore the
138 environment to the original state.</para>
139
140<screen><userinput>exit</userinput></screen>
141
142 </sect2>
143
144 <sect2 role="commands">
145 <title>Command Explanations</title>
146
147 <para><command>bash</command>: Shells are started as many environment
148 variables are created during the installation process. Exiting the shells
149 serves the purpose of restoring the environment and returning back to the
150 original directory when the installation is complete.</para>
151
152 <para><command>export BUILD_OPT=1</command>: This variable is set so that
153 the build is performed with no debugging symbols built into the binaries
154 and that the default compiler optimizations are used.</para>
155
156 <para><command>export NSPR_INCLUDE_DIR=/usr/include/nspr</command>: This
157 command sets the location of the nspr headers.</para>
158
159 <para><command>export USE_SYSTEM_*</command>: These commands ensure that
160 the system installed libraries are used instead of the in-tree
161 versions.</para>
162
163 <para><command>export ZLIB_LIBS=-lz</command>: This command provides the
164 needed linker flags to link to the system zlib.</para>
165
166 <para><command>export NSS_LINUXDIR=...</command>: This variable is set so
167 that the exact name of the architecture specific directories where the
168 binaries are stored in the source tree can be determined.</para>
169
170 <para><command>make -C mozilla/security/nss nss_build_all</command>: This
171 command builds the <application>NSS</application> libraries and creates a
172 <filename class='directory'>dist</filename> directory which houses all the
173 programs, libraries and interface headers. None of the programs created by
174 this process are installed onto the system using the default instructions
175 (except for <application>nss-config</application>). If you need any of
176 these programs installed, you can find them in the
177 <filename class='directory'>mozilla/*.OBJ/dist/bin</filename> directory of
178 the source tree.</para>
179
180 <para><command>sed -i 's/gmake/make/' common/init.sh</command>: This
181 command changes the command used to compile some test programs.</para>
182
183 </sect2>
184
185 <sect2 role="content">
186 <title>Contents</title>
187
188 <segmentedlist>
189 <segtitle>Installed Programs</segtitle>
190 <segtitle>Installed Libraries</segtitle>
191 <segtitle>Installed Directories</segtitle>
192
193 <seglistitem>
194 <seg>nss-config</seg>
195 <seg>libcrmf.a, libfreebl3.so, libnss3.so, libnssckbi.so,
196 libnssdbm3.so, libnssutil3.so, libsmime3.so, libsoftokn3.so
197 and libssl3.so</seg>
198 <seg>/usr/include/nss</seg>
199 </seglistitem>
200 </segmentedlist>
201
202 <variablelist>
203 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
204 <?dbfo list-presentation="list"?>
205 <?dbhtml list-presentation="table"?>
206
207 <varlistentry id="nss-config">
208 <term><command>nss-config</command></term>
209 <listitem>
210 <para>is used to determine the NSS library settings
211 of the installed NSS libraries.</para>
212 <indexterm zone="nss nss-config">
213 <primary sortas="b-nss-config">nss-config</primary>
214 </indexterm>
215 </listitem>
216 </varlistentry>
217 </variablelist>
218
219 </sect2>
220
221</sect1>
Note: See TracBrowser for help on using the repository browser.