source: chapter08/openssl.xml@ 9d1c903

multilib
Last change on this file since 9d1c903 was 9d1c903, checked in by Thomas Trepl (Moody) <thomas@…>, 2 years ago

Adopt instructions for work with v3.x

  • Property mode set to 100644
File size: 8.3 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
8<sect1 id="ch-system-openssl" role="wrap">
9 <?dbhtml filename="openssl.html"?>
10
11 <sect1info condition="script">
12 <productname>openssl</productname>
13 <productnumber>&openssl-version;</productnumber>
14 <address>&openssl-url;</address>
15 </sect1info>
16
17 <title>OpenSSL-&openssl-version;</title>
18
19 <indexterm zone="ch-system-openssl">
20 <primary sortas="a-OpenSSL">OpenSSL</primary>
21 </indexterm>
22
23 <sect2 role="package">
24 <title/>
25
26 <para>The OpenSSL package contains management tools and libraries relating
27 to cryptography. These are useful for providing cryptographic functions
28 to other packages, such as OpenSSH, email applications, and web browsers
29 (for accessing HTTPS sites). </para>
30
31 <segmentedlist>
32 <segtitle>&buildtime;</segtitle>
33 <segtitle>&diskspace;</segtitle>
34
35 <seglistitem>
36 <seg>&openssl-fin-sbu;</seg>
37 <seg>&openssl-fin-du;</seg>
38 </seglistitem>
39 </segmentedlist>
40
41 </sect2>
42
43 <sect2 role="installation">
44 <title>Installation of OpenSSL</title>
45
46 <para>Prepare OpenSSL for compilation:</para>
47
48<screen><userinput remap="configure">./config --prefix=/usr \
49 --openssldir=/etc/ssl \
50 --libdir=lib \
51 shared \
52 zlib-dynamic</userinput></screen>
53
54 <para>Compile the package:</para>
55
56<screen><userinput remap="make">make</userinput></screen>
57
58 <para>To test the results, issue:</para>
59
60<screen><userinput remap="test">make test</userinput></screen>
61
62 <para>One test, 30-test_afalg.t, is known to fail on some kernel
63 configurations (depending on inconsistent values of
64 CONFIG_CRYPTO_USER_API* settings.) If it fails, it can safely be
65 ignored.</para>
66
67 <para>Install the package:</para>
68
69<screen><userinput remap="install">sed -i '/INSTALL_LIBS/s/libcrypto.a libssl.a//' Makefile
70make MANSUFFIX=ssl install</userinput></screen>
71
72 <para>Add the version to the documentation directory name, to be
73 consistent with other packages:</para>
74
75<screen><userinput remap="install">mv -v /usr/share/doc/openssl /usr/share/doc/openssl-&openssl-version;</userinput></screen>
76
77 <para>If desired, install some additional documentation:</para>
78
79<screen><userinput remap="install">cp -vfr doc/* /usr/share/doc/openssl-&openssl-version;</userinput></screen>
80
81 <note>
82 <para>
83 You should update OpenSSL when a new version which fixes vulnerabilities
84 is announced. The releases run in series, with a letter for each release
85 after the initial release (e.g. 1.1.1, 1.1.1a, 1.1.1b, etc). Because LFS
86 installs only the shared libraries, there is no need to recompile packages
87 which link to <filename class="libraryfile">libcrypto.so</filename> or
88 <filename class="libraryfile">libssl.so</filename>
89 <emphasis>when upgrading in the same series.</emphasis>
90 </para>
91
92 <para>
93 However, any running programs linked to those libraries need to be stopped
94 and restarted. Read the related entries in
95 <xref linkend='pkgmgmt-upgrade-issues'/> for details.
96 </para>
97
98 </note>
99
100 </sect2>
101
102 <!-- - - - - - - - - - -->
103 <!-- Multilib - 32bit -->
104 <!-- - - - - - - - - - -->
105
106 <sect2 arch="ml_32,ml_all" role="installation">
107 <title>Installation of OpenSSL - 32bit</title>
108
109 <para>Clean previous build:</para>
110
111<screen><userinput remap="pre">make distclean</userinput></screen>
112
113 <para>Prepare OpenSSL for compilation:</para>
114
115<screen><userinput remap="configure">CFLAGS="-m32 -march=i686 -Wall -O3" CXXFLAGS="$CFLAGS" \
116./config --prefix=/usr \
117 --openssldir=/etc/ssl \
118 --libdir=lib32 \
119 shared \
120 zlib-dynamic \
121 linux-generic32</userinput></screen>
122
123 <para>Compile the package:</para>
124
125<screen><userinput remap="make">make</userinput></screen>
126
127 <para>Install the package:</para>
128
129<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
130cp -Rv DESTDIR/usr/lib32/* /usr/lib32
131rm -rf DESTDIR</userinput></screen>
132
133 </sect2><!-- m32 -->
134
135 <!-- - - - - - - - - - -->
136 <!-- Multilib - x32bit -->
137 <!-- - - - - - - - - - -->
138
139 <sect2 arch="ml_x32,ml_all" role="installation">
140 <title>Installation of OpenSSL - x32bit</title>
141
142 <para>Clean previous build:</para>
143
144<screen><userinput remap="pre">make distclean</userinput></screen>
145
146 <para>Prepare OpenSSL for compilation:</para>
147
148<screen><userinput remap="configure">CFLAGS="-mx32 -march=x86-64 -Wall -O3" CXXFLAGS="$CFLAGS" \
149./config --prefix=/usr \
150 --openssldir=/etc/ssl \
151 --libdir=libx32 \
152 shared \
153 zlib-dynamic \
154 linux-x32</userinput></screen>
155
156 <para>Compile the package:</para>
157
158<screen><userinput remap="make">make</userinput></screen>
159
160 <para>Install the package:</para>
161
162<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
163cp -Rv DESTDIR/usr/libx32/* /usr/libx32
164rm -rf DESTDIR</userinput></screen>
165
166 </sect2><!-- mx32 -->
167
168 <sect2 id="contents-openssl" role="content">
169 <title>Contents of OpenSSL</title>
170
171 <segmentedlist>
172 <segtitle>Installed programs</segtitle>
173 <segtitle>Installed libraries</segtitle>
174 <segtitle>Installed directories</segtitle>
175
176 <seglistitem>
177 <seg>
178 c_rehash and openssl
179 </seg>
180 <seg>
181 libcrypto.so and libssl.so
182 </seg>
183 <seg>
184 /etc/ssl,
185 /usr/include/openssl,
186 /usr/lib/engines and
187 /usr/share/doc/openssl-&openssl-version;
188 </seg>
189 </seglistitem>
190 </segmentedlist>
191
192 <variablelist>
193 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
194 <?dbfo list-presentation="list"?>
195 <?dbhtml list-presentation="table"?>
196
197 <varlistentry id="c_rehash">
198 <term><command>c_rehash</command></term>
199 <listitem>
200 <para>
201 is a <application>Perl</application> script that scans all files in
202 a directory and adds symbolic links to their hash values
203 </para>
204 <indexterm zone="ch-system-openssl c_rehash">
205 <primary sortas="b-c_rehash">c_rehash</primary>
206 </indexterm>
207 </listitem>
208 </varlistentry>
209
210 <varlistentry id="openssl-prog">
211 <term><command>openssl</command></term>
212 <listitem>
213 <para>
214 is a command-line tool for using the various cryptography functions
215 of <application>OpenSSL</application>'s crypto library from the
216 shell. It can be used for various functions which are documented in
217 <command>man 1 openssl</command>
218 </para>
219 <indexterm zone="ch-system-openssl openssl-prog">
220 <primary sortas="b-openssl">openssl</primary>
221 </indexterm>
222 </listitem>
223 </varlistentry>
224
225 <varlistentry id="libcrypto">
226 <term><filename class="libraryfile">libcrypto.so</filename></term>
227 <listitem>
228 <para>
229 implements a wide range of cryptographic algorithms used in various
230 Internet standards. The services provided by this library are used
231 by the <application>OpenSSL</application> implementations of SSL,
232 TLS and S/MIME, and they have also been used to implement
233 <application>OpenSSH</application>,
234 <application>OpenPGP</application>, and other cryptographic
235 standards
236 </para>
237 <indexterm zone="ch-system-openssl libcrypto">
238 <primary sortas="c-libcrypto">libcrypto.so</primary>
239 </indexterm>
240 </listitem>
241 </varlistentry>
242
243 <varlistentry id="libssl">
244 <term><filename class="libraryfile">libssl.so</filename></term>
245 <listitem>
246 <para>
247 implements the Transport Layer Security (TLS v1) protocol.
248 It provides a rich API, documentation
249 on which can be found by running <command>man 3 ssl</command>
250 </para>
251 <indexterm zone="ch-system-openssl libssl">
252 <primary sortas="c-libssl">libssl.so</primary>
253 </indexterm>
254 </listitem>
255 </varlistentry>
256
257 </variablelist>
258
259 </sect2>
260
261</sect1>
Note: See TracBrowser for help on using the repository browser.