source: postlfs/security/nss.xml@ 9f12e36

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

Removed 'keywordset' blocks and extra spaces from the XML files (note this was by accident as I meant to do just in the gnome directory but I was in the root of BOOK when I ran the script, but this was going to happen anyway so I don't think it is a big deal)

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

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