source: postlfs/security/nss.xml@ 3597eb6

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 3597eb6 was 3597eb6, checked in by Randy McMurchy <randy@…>, 18 years ago

Added the 'User Notes' wiki link to each package page; changed all instances of .[so,a] to .{so,a} (brackets changed to braces); changed all replaceable tags to use angle brackets instead of square brackets to encapsulate the text - commit #7

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@5835 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 <para condition="html" role="usernotes">User Notes:
95 <ulink url="&blfs-wiki;/nss"/></para>
96
97 </sect2>
98
99 <sect2 role="installation">
100 <title>Installation of NSS</title>
101
102 <para>Install <application>NSS</application> by running the following
103 commands:</para>
104
105<screen><userinput>bash
106
107export WORKINGDIR=$PWD &amp;&amp;
108export BUILD_OPT=1 &amp;&amp;
109
110patch -Np1 -i ../nss-&nss-version;-fedora_fixes-1.patch &amp;&amp;
111
112cd mozilla/security/nss &amp;&amp;
113make nss_build_all &amp;&amp;
114cd ../.. &amp;&amp;
115
116export NSS_LINUXDIR=$(basename `ls -d $WORKINGDIR/mozilla/dist/Linux*`)</userinput></screen>
117
118 <para>To test the results, you'll need to set the domain name of your
119 system in the <envar>DOMSUF</envar> environment variable. Most of the tests
120 will fail if you don't provide the correct domain name. A self-generated
121 log file will be parsed at the end of the test to display how many tests
122 passed. It should return 770. To run the tests, ensure you change the
123 <command>export DOMSUF</command> command below to an appropriate value,
124 e.g., <parameter>mydomain.com</parameter> and issue the following
125 commands:</para>
126
127<screen><userinput>bash
128
129export DOMSUF=<replaceable>&lt;validdomain.name&gt;</replaceable> &amp;&amp;
130export PATH=$PATH:$WORKINGDIR/mozilla/dist/$NSS_LINUXDIR/bin &amp;&amp;
131export TEST_RESULTSDIR=$WORKINGDIR/mozilla/tests_results/security &amp;&amp;
132
133cd security/nss/tests &amp;&amp;
134sed -i 's/gmake/make/' common/init.sh &amp;&amp;
135./all.sh &amp;&amp;
136
137grep Passed $TEST_RESULTSDIR/$(hostname).1/results.html | wc -l &amp;&amp;
138
139exit</userinput></screen>
140
141 <caution>
142 <para>If you switch to the <systemitem class="username">root</systemitem>
143 user using a method that does not inherit the environment from the
144 unprivileged user, ensure that
145 <systemitem class="username">root</systemitem>'s
146 <envar>NSS_LINUXDIR</envar> environment variable is set correctly before
147 proceeding with the installation commands.</para>
148 </caution>
149
150 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
151
152<screen role="root"><userinput>install -v -m755 nsprpub/$NSS_LINUXDIR/config/nspr-config \
153 security/nss/cmd/config/nss-config \
154 /usr/bin &amp;&amp;
155install -v -m755 -d /usr/lib/pkgconfig &amp;&amp;
156install -v -m644 nsprpub/lib/pkgconfig/nspr.pc \
157 security/nss/lib/pkgconfig/nss.pc \
158 /usr/lib/pkgconfig &amp;&amp;
159
160cd dist &amp;&amp;
161
162install -v -m755 $NSS_LINUXDIR/lib/*.so /usr/lib &amp;&amp;
163install -v -m644 $NSS_LINUXDIR/lib/{*.chk,libcrmf.a} /usr/lib &amp;&amp;
164
165install -v -m755 -d /usr/include/{nss,nspr} &amp;&amp;
166install -v -m644 {public,private}/nss/* /usr/include/nss &amp;&amp;
167cp -v -RL $NSS_LINUXDIR/include/* /usr/include/nspr &amp;&amp;
168chmod -v 644 /usr/include/nspr/prvrsion.h</userinput></screen>
169
170 <para>Now as the unprivileged user, exit the <command>bash</command>
171 shell started at the beginning of the installation to restore the
172 environment to the original state.</para>
173
174<screen><userinput>exit</userinput></screen>
175
176 </sect2>
177
178 <sect2 role="commands">
179 <title>Command Explanations</title>
180
181 <para><command>bash</command>: Shells are started as many environment
182 variables are created during the installation process. Exiting the shells
183 serves the purpose of restoring the environment and returning back to the
184 original directory when the installation is complete.</para>
185
186 <para><command>export WORKINGDIR=$PWD</command>: This variable is set
187 because many of the commands are dependent on knowing the full path of
188 certain directories. <envar>WORKINGDIR</envar> establishes a known path
189 so that all others can be determined relative to this.</para>
190
191 <para><command>export BUILD_OPT=1</command>: This variable is set so that
192 the build is performed with no debugging symbols built into the binaries
193 and that the default compiler optimizations are used.</para>
194
195 <para><command>export NSS_LINUXDIR=...</command>: This variable is set so
196 that the exact name of the architecture specific directories where the
197 binaries are stored in the source tree can be determined.</para>
198
199 <para><command>make nss_build_all</command>: This command builds the NSPR
200 and <application>NSS</application> libraries and creates a
201 <filename class='directory'>dist</filename> directory which houses all the
202 programs, libraries and interface headers. None of the programs created by
203 this process are installed onto the system using the default instructions.
204 If you need any of these programs installed, you can find them in the
205 <filename class='directory'>mozilla/dist/bin</filename> directory of the
206 source tree.</para>
207
208 <para><command>export PATH=...</command>: This command sets the
209 <envar>PATH</envar> environment variable to include the executables in
210 the source tree as some of them are required to run the test suite.</para>
211
212 <para><command>sed -i 's/gmake/make/' common/init.sh</command>: This
213 command changes the command used to compile some test programs.</para>
214
215 </sect2>
216
217 <sect2 role="content">
218 <title>Contents</title>
219
220 <segmentedlist>
221 <segtitle>Installed Programs</segtitle>
222 <segtitle>Installed Libraries</segtitle>
223 <segtitle>Installed Directories</segtitle>
224
225 <seglistitem>
226 <seg>nspr-config and nss-config</seg>
227 <seg>libcrmf.a, libfreebl3.so, libnspr4.so, libnss3.so, libnssckbi.so,
228 libplc4.so, libplds4.so, libsmime3.so, libsoftokn3.so and
229 libssl3.so</seg>
230 <seg>/usr/include/nspr and /usr/include/nss</seg>
231 </seglistitem>
232 </segmentedlist>
233
234 <variablelist>
235 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
236 <?dbfo list-presentation="list"?>
237 <?dbhtml list-presentation="table"?>
238
239 <varlistentry id="nspr-config">
240 <term><command>nspr-config</command></term>
241 <listitem>
242 <para>is used to determine the NSPR installation settings
243 of the installed NSPR libraries.</para>
244 <indexterm zone="nss nspr-config">
245 <primary sortas="b-nspr-config">nspr-config</primary>
246 </indexterm>
247 </listitem>
248 </varlistentry>
249
250 <varlistentry id="nss-config">
251 <term><command>nss-config</command></term>
252 <listitem>
253 <para>is used to determine the NSS library settings
254 of the installed NSS libraries.</para>
255 <indexterm zone="nss nss-config">
256 <primary sortas="b-nss-config">nss-config</primary>
257 </indexterm>
258 </listitem>
259 </varlistentry>
260 </variablelist>
261
262 <para>The <filename class='libraryfile'>libnspr4.so</filename>,
263 <filename class='libraryfile'>libplc4.so</filename> and
264 <filename class='libraryfile'>libplds4.so</filename> libraries make up the
265 Netscape Portable Runtime (NSPR) libraries. These libraries provide a
266 platform-neutral API for system level and libc like functions. The API
267 is used in the Mozilla client, many of the Netscape/AOL/iPlanet offerings
268 and other software applications.</para>
269
270 <para>The <filename class='libraryfile'>libcrmf.a</filename>,
271 <filename class='libraryfile'>libfreebl.so</filename>,
272 <filename class='libraryfile'>libnss3.so</filename>,
273 <filename class='libraryfile'>libnssckbi.so</filename>,
274 <filename class='libraryfile'>libsmime3.so</filename>,
275 <filename class='libraryfile'>libsoftokn3.so</filename> and
276 <filename class='libraryfile'>libnssl3.so</filename> libraries make up
277 the <application>NSS</application> libraries.</para>
278
279 </sect2>
280
281</sect1>
Note: See TracBrowser for help on using the repository browser.