source: postlfs/security/nss.xml@ 30f88917

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 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 30f88917 was 30f88917, checked in by Randy McMurchy <randy@…>, 18 years ago

Added new package Network Security Services, NSS-3.11

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

  • Property mode set to 100644
File size: 11.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/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_11_RTM/src/nss-&nss-version;.tar.gz">
8 <!ENTITY nss-download-ftp "ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_11_RTM/src/nss-&nss-version;.tar.gz">
9 <!ENTITY nss-md5sum "9be73bd73e361e5e36edf77f456fa20a">
10 <!ENTITY nss-size "5.0 MB">
11 <!ENTITY nss-buildsize "67.6 MB">
12 <!ENTITY nss-time "1.0 SBU (additional 0.5 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 <keywordset>
22 <keyword role="package">nss-&nss-version;.tar</keyword>
23 <keyword role="ftpdir">nss</keyword>
24 </keywordset>
25 </sect1info>
26
27 <title>NSS-&nss-version;</title>
28
29 <indexterm zone="nss">
30 <primary sortas="a-NSS">NSS</primary>
31 </indexterm>
32
33 <sect2 role="package">
34 <title>Introduction to NSS</title>
35
36 <para>The Network Security Services (<application>NSS</application>)
37 package is a set of libraries designed to support cross-platform
38 development of security-enabled client and server applications.
39 Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5,
40 PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other
41 security standards. This is useful for implementing SSL and S/MIME or
42 other Internet security standards into an application.</para>
43
44 <para>The <application>NSS</application> package requires the Netscape
45 Portable Runtime (NSPR) libraries as a prerequisite for building. The
46 <application>NSS</application> package tarball contains the code necessary
47 to build the NSPR libraries. These libraries are built and installed using
48 the instructions below. Essentially, the <application>NSS</application>
49 package is now a combined <application>NSS</application>/NSPR
50 installation.</para>
51
52
53 <bridgehead renderas="sect3">Package Information</bridgehead>
54 <itemizedlist spacing="compact">
55 <listitem>
56 <para>Download (HTTP): <ulink url="&nss-download-http;"/></para>
57 </listitem>
58 <listitem>
59 <para>Download (FTP): <ulink url="&nss-download-ftp;"/></para>
60 </listitem>
61 <listitem>
62 <para>Download MD5 sum: &nss-md5sum;</para>
63 </listitem>
64 <listitem>
65 <para>Download size: &nss-size;</para>
66 </listitem>
67 <listitem>
68 <para>Estimated disk space required: &nss-buildsize;</para>
69 </listitem>
70 <listitem>
71 <para>Estimated build time: &nss-time;</para>
72 </listitem>
73 </itemizedlist>
74
75 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
76 <itemizedlist spacing="compact">
77 <listitem>
78 <para>Required patch: <ulink
79 url="&patch-root;/nss-&nss-version;-fedora_fixes-1.patch"/></para>
80 </listitem>
81 </itemizedlist>
82
83 <!--
84 <bridgehead renderas="sect3">NSS Dependencies</bridgehead>
85
86 <bridgehead renderas="sect4">Required</bridgehead>
87 <para role="required"><xref linkend=""/></para>
88
89 <bridgehead renderas="sect4">Optional</bridgehead>
90 <para role="optional"><ulink
91 url="http://www.some.url/">DEPENDENCY</ulink></para>
92 -->
93
94 </sect2>
95
96 <sect2 role="installation">
97 <title>Installation of NSS</title>
98
99 <para>Install <application>NSS</application> by running the following
100 commands:</para>
101
102<screen><userinput>bash
103
104export WORKINGDIR=$PWD &amp;&amp;
105export BUILD_OPT=1 &amp;&amp;
106
107patch -Np1 -i ../nss-&nss-version;-fedora_fixes-1.patch &amp;&amp;
108
109cd mozilla/security/nss &amp;&amp;
110make nss_build_all &amp;&amp;
111cd ../.. &amp;&amp;
112
113export NSS_LINUXDIR=$(basename `ls -d $WORKINGDIR/mozilla/dist/Linux*`)</userinput></screen>
114
115 <para>To test the results, you'll need to set the domain name of your
116 system in the <envar>DOMSUF</envar> environment variable. Most of the tests
117 will fail if you don't provide the correct domain name. A self-generated
118 log file will be parsed at the end of the test to display how many tests
119 passed. It should return 770. To run the tests, ensure you change the
120 <command>export DOMSUF</command> command below to an appropriate value,
121 e.g., <parameter>mydomain.com</parameter> and issue the following
122 commands:</para>
123
124<screen><userinput>bash
125
126export DOMSUF=<replaceable>[validdomain.name]</replaceable> &amp;&amp;
127export PATH=$PATH:$WORKINGDIR/mozilla/dist/$NSS_LINUXDIR/bin &amp;&amp;
128export TEST_RESULTSDIR=$WORKINGDIR/mozilla/tests_results/security &amp;&amp;
129
130cd security/nss/tests &amp;&amp;
131sed -i 's/gmake/make/' common/init.sh &amp;&amp;
132./all.sh &amp;&amp;
133
134grep Passed $TEST_RESULTSDIR/$(hostname).1/results.html | wc -l &amp;&amp;
135
136exit</userinput></screen>
137
138 <caution>
139 <para>If you switch to the <systemitem class="username">root</systemitem>
140 user using a method that does not inherit the environment from the
141 unprivileged user, ensure that
142 <systemitem class="username">root</systemitem>'s
143 <envar>NSS_LINUXDIR</envar> environment variable is set correctly before
144 proceeding with the installation commands.</para>
145 </caution>
146
147 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
148
149<screen role="root"><userinput>install -v -m755 nsprpub/$NSS_LINUXDIR/config/nspr-config \
150 security/nss/cmd/config/nss-config \
151 /usr/bin &amp;&amp;
152install -v -m644 nsprpub/lib/pkgconfig/nspr.pc \
153 security/nss/lib/pkgconfig/nss.pc \
154 /usr/lib/pkgconfig &amp;&amp;
155
156cd dist &amp;&amp;
157
158install -v -m755 \
159 $NSS_LINUXDIR/lib/lib{nspr4,plc4,plds4}.so \
160 $NSS_LINUXDIR/lib/lib{freebl3,nss3,nssckbi,smime3,softokn3,ssl3}.so \
161 /usr/lib &amp;&amp;
162install -v -m644 \
163 $NSS_LINUXDIR/lib/lib{freebl3,softokn3}.chk \
164 $NSS_LINUXDIR/lib/libcrmf.a \
165 /usr/lib &amp;&amp;
166
167install -v -m755 -d /usr/include/{nss,nspr} &amp;&amp;
168install -v -m644 {public,private}/nss/* /usr/include/nss &amp;&amp;
169cp -v -RL $NSS_LINUXDIR/include/* /usr/include/nspr &amp;&amp;
170chmod -v 644 /usr/include/nspr/prvrsion.h</userinput></screen>
171
172 <para>Now as the unprivileged user, exit the <command>bash</command>
173 shell started at the beginning of the installation to restore the
174 environment to the original state.</para>
175
176<screen><userinput>exit</userinput></screen>
177
178 </sect2>
179
180 <sect2 role="commands">
181 <title>Command Explanations</title>
182
183 <para><command>bash</command>: Shells are started as many environment
184 variables are created during the installation process. Exiting the shells
185 serves the purpose of restoring the environment and returning back to the
186 original directory when the installation is complete.</para>
187
188 <para><command>export WORKINGDIR=$PWD</command>: This variable is set
189 because many of the commands are dependent on knowing the full path of
190 certain directories. <envar>WORKINGDIR</envar> establishes a known path
191 so that all others can be determined relative to this.</para>
192
193 <para><command>export BUILD_OPT=1</command>: This variable is set so that
194 the build is performed with no debugging symbols built into the binaries
195 and that the default compiler optimizations are used.</para>
196
197 <para><command>export NSS_LINUXDIR=...</command>: This variable is set so
198 that the exact name of the architecture specific directories where the
199 binaries are stored in the source tree can be determined.</para>
200
201 <para><command>make nss_build_all</command>: This command builds the NSPR
202 and <application>NSS</application> libraries and creates a
203 <filename class='directory'>dist</filename> directory which houses all the
204 programs, libraries and interface headers. None of the programs created by
205 this process are installed onto the system using the default instructions.
206 If you need any of these programs installed, you can find them in the
207 <filename class='directory'>mozilla/dist/bin</filename> directory of the
208 source tree.</para>
209
210 <para><command>export PATH=</command>: This command sets the
211 <envar>PATH</envar> environment variable to include the executables in
212 the source tree as some of them are required to run the test suite.</para>
213
214 <para><command>sed -i 's/gmake/make/' common/init.sh</command>: This
215 command changes the command used to compile some test programs.</para>
216
217 </sect2>
218
219 <sect2 role="content">
220 <title>Contents</title>
221
222 <segmentedlist>
223 <segtitle>Installed Programs</segtitle>
224 <segtitle>Installed Libraries</segtitle>
225 <segtitle>Installed Directories</segtitle>
226
227 <seglistitem>
228 <seg>nspr-config and nss-config</seg>
229 <seg>libcrmf.a, libfreebl3.so, libnspr4.so, libnss3.so, libnssckbi.so,
230 libplc4.so, libplds4.so, libsmime3.so, libsoftokn3.so and
231 libssl3.so</seg>
232 <seg>/usr/include/nspr and /usr/include/nss</seg>
233 </seglistitem>
234 </segmentedlist>
235
236 <variablelist>
237 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
238 <?dbfo list-presentation="list"?>
239 <?dbhtml list-presentation="table"?>
240
241 <varlistentry id="nspr-config">
242 <term><command>nspr-config</command></term>
243 <listitem>
244 <para>is used to determine the NSPR installation settings
245 of the installed NSPR libraries.</para>
246 <indexterm zone="nss nspr-config">
247 <primary sortas="b-nspr-config">nspr-config</primary>
248 </indexterm>
249 </listitem>
250 </varlistentry>
251
252 <varlistentry id="nss-config">
253 <term><command>nss-config</command></term>
254 <listitem>
255 <para>is used to determine the NSS library settings
256 of the installed NSS libraries.</para>
257 <indexterm zone="nss nss-config">
258 <primary sortas="b-nss-config">nss-config</primary>
259 </indexterm>
260 </listitem>
261 </varlistentry>
262 </variablelist>
263
264 <para>The <filename class='libraryfile'>libnspr4.so</filename>,
265 <filename class='libraryfile'>libplc4.so</filename> and
266 <filename class='libraryfile'>libplds4.so</filename> libraries make up the
267 Netscape Portable Runtime (NSPR) libraries. These libraries provide a
268 platform-neutral API for system level and libc like functions. The API
269 is used in the Mozilla client, many of the Netscape/AOL/iPlanet offerings
270 and other software applications.</para>
271
272 <para>The <filename class='libraryfile'>libcrmf.a</filename>,
273 <filename class='libraryfile'>libfreebl.so</filename>,
274 <filename class='libraryfile'>libnss3.so</filename>,
275 <filename class='libraryfile'>libnssckbi.so</filename>,
276 <filename class='libraryfile'>libsmime3.so</filename>,
277 <filename class='libraryfile'>libsoftokn3.so</filename> and
278 <filename class='libraryfile'>libnssl3.so</filename> libraries make up
279 the <application>NSS</application> libraries.</para>
280
281 </sect2>
282
283</sect1>
Note: See TracBrowser for help on using the repository browser.