3 %bcond_with purify # Compile openssl with \-DPURIFY, usefull when one wants to
4 # use valgrind debugger against openssl-linked programs
6 %include /usr/lib/rpm/macros.perl
7 Summary: OpenSSL Toolkit libraries for the "Secure Sockets Layer" (SSL v2/v3)
8 Summary(de): Secure Sockets Layer (SSL)-Kommunikationslibrary
9 Summary(es): Biblioteca C que suministra algoritmos y protocolos criptográficos
10 Summary(fr): Utilitaires de communication SSL (Secure Sockets Layer)
11 Summary(pl): Biblioteki OpenSSL (SSL v2/v3)
12 Summary(pt_BR): Uma biblioteca C que fornece vários algoritmos e protocolos criptográficos
13 Summary(ru): âÉÂÌÉÏÔÅËÉ É ÕÔÉÌÉÔÙ ÄÌÑ ÓÏÅÄÉÎÅÎÉÊ ÞÅÒÅÚ Secure Sockets Layer
14 Summary(uk): â¦Â̦ÏÔÅËÉ ÔÁ ÕÔÉ̦ÔÉ ÄÌÑ Ú'¤ÄÎÁÎØ ÞÅÒÅÚ Secure Sockets Layer
18 License: Apache-style License
20 Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz
21 # Source0-md5: 74a4d1b87e1e6e1ec95dbe58cb4c5b9a
22 Source1: %{name}-ca-bundle.crt
24 Source3: %{name}-ssl-certificate.sh
25 Patch0: %{name}-alpha-ccc.patch
26 Patch1: %{name}-optflags.patch
27 Patch2: %{name}-globalCA.diff
28 Patch3: %{name}-include.patch
29 Patch4: %{name}-md5-sparcv9.patch
30 Patch5: %{name}-ssl-algs.patch
31 Patch6: %{name}-CVE-2007-3108.patch
32 URL: http://www.openssl.org/
33 BuildRequires: perl-devel >= 1:5.6.1
34 BuildRequires: rpm-perlprov >= 4.1-13
35 BuildRequires: rpmbuild(macros) >= 1.213
36 BuildRequires: sed >= 4.0
38 Obsoletes: SSLeay-devel
39 Obsoletes: SSLeay-perl
40 Obsoletes: libopenssl0
41 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44 The OpenSSL Project is a collaborative effort to develop a robust,
45 commercial-grade, full-featured, and Open Source toolkit implementing
46 the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS
47 v1) protocols with full-strength cryptography world-wide. The project
48 is managed by a worldwide community of volunteers that use the
49 Internet to communicate, plan, and develop the OpenSSL tookit and its
50 related documentation.
52 OpenSSL is based on the excellent SSLeay library developed by Eric A.
53 Young and Tim J. Hudson. The OpenSSL toolkit is licensed under an
54 Apache-style licence, which basically means that you are free to get
55 and use it for commercial and non-commercial purposes subject to some
56 simple license conditions.
58 This package contains shared libraries only, install openssl-tools if
59 you want to use openssl cmdline tool.
62 Openssl enthält das OpenSSL Zertifikatsmanagementtool und shared
63 libraries, die verschiedene Verschlüsselungs- und
64 Entschlüsselungsalgorithmen und -protokolle, wie DES, RC4, RSA und SSL
65 zur Verfügung stellen.
68 Biblioteca C que suministra algoritmos y protocolos criptográficos.
71 OpenSSL est un outiil de gestion des certificats et les librairies
72 partagees qui fournit plusieurs protocoles et algorithmes de
73 codage/decodage, incluant DES, RC4, RSA et SSL.
76 Implementacja protoko³ów kryptograficznych Secure Socket Layer (SSL)
77 v2/v3 oraz Transport Layer Security (TLS v1).
80 Uma biblioteca C que fornece vários algoritmos e protocolos
81 criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas
82 compartilhadas e utilitários.
85 ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ,
86 ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES,
90 ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ ¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ
91 ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËÕ Ë¦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ
92 ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL.
95 Summary: OpenSSL command line tool and utilities
96 Summary(pl): Zestaw narzêdzi i skryptów
97 Group: Applications/Communications
98 Requires: %{name} = %{version}-%{release}
101 The OpenSSL Toolkit cmdline tool openssl and utility scripts.
103 %description tools -l pl
104 Zestaw narzêdzi i skryptów wywo³ywanych z linii poleceñ.
107 Summary: OpenSSL utilities written in Perl
108 Summary(pl): Narzêdzia OpenSSL napisane w perlu
109 Group: Applications/Communications
110 Requires: %{name} = %{version}-%{release}
112 %description tools-perl
113 OpenSSL Toolkit tools written in Perl.
115 %description tools-perl -l pl
116 Narzêdzia OpenSSL napisane w perlu.
119 Summary: Development part of OpenSSL Toolkit libraries
120 Summary(de): Secure Sockets Layer Kommunikationslibrary: statische libraries+header
121 Summary(es): Bibliotecas y archivos de inclusión para desarrollo OpenSSL
122 Summary(fr): Librairies statiques, headers et utilitaires pour communication SSL
123 Summary(pl): Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów
124 Summary(pt_BR): Bibliotecas e arquivos de inclusão para desenvolvimento OpenSSL
125 Summary(ru): âÉÂÌÉÏÔÅËÉ, ÈÅÄÅÒÙ É ÕÔÉÌÉÔÙ ÄÌÑ Secure Sockets Layer
126 Summary(uk): â¦Â̦ÏÔÅËÉ, ÈÅÄÅÒÉ ÔÁ ÕÔÉ̦ÔÉ ÄÌÑ Secure Sockets Layer
127 Group: Development/Libraries
128 Requires: %{name} = %{version}-%{release}
129 Obsoletes: libopenssl0-devel
132 Development part of OpenSSL library.
134 %description devel -l es
135 Bibliotecas y archivos de inclusión para desarrollo OpenSSL
137 %description devel -l pl
138 Czê¶æ biblioteki OpenSSL przeznaczona dla programistów.
140 %description devel -l pt_BR
141 Uma biblioteca C que fornece vários algoritmos e protocolos
142 criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas e
143 arquivos de inclusão para desenvolvimento.
145 %description devel -l ru
146 ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ,
147 ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES,
148 RC4, RSA É SSL. ÷ËÌÀÞÁÅÔ ÂÉÂÌÉÏÔÅËÉ É ÈÅÄÅÒÙ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ ÐÒÉÌÏÖÅÎÉÊ
149 Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ SSL.
151 %description devel -l uk
152 ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ ¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ
153 ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËÕ Ë¦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ
154 ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL. í¦ÓÔÉÔØ Â¦Â̦ÏÔÅËÉ ÔÁ
155 ÈÅÄÅÒÉ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ Ú ×ÉËÏÒÉÓÔÁÎÎÑÍ SSL.
158 Summary: Static OpenSSL libraries
159 Summary(pl): Statyczne wersje bibliotek z OpenSSL
160 Summary(pt_BR): Bibliotecas estáticas para desenvolvimento com openssl
161 Summary(ru): óÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ OpenSSL
162 Summary(uk): óÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ OpenSSL
163 Group: Development/Libraries
164 Requires: %{name}-devel = %{version}-%{release}
167 Static OpenSSL Toolkit libraries.
169 %description static -l pl
170 Statyczne wersje bibliotek z OpenSSL.
172 %description static -l pt_BR
173 Bibliotecas estáticas para desenvolvimento com openssl.
175 %description static -l ru
176 ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ,
177 ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES,
178 RC4, RSA É SSL. ÷ËÌÀÞÁÅÔ ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ
179 ÐÒÉÌÏÖÅÎÉÊ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ OpenSSL.
181 %description static -l uk
182 ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ ¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ
183 ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËÕ Ë¦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ
184 ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL. í¦ÓÔÉÔØ ÓÔÁÔÉÞΦ
185 ¦Â̦ÏÔÅËÉ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ Ú ×ÉËÏÒÉÓÔÁÎÎÑÍ SSL.
197 # conflicts with i386-only DES implementation
198 # (missing #ifdef OPENSSL_FIPS ... #endif)
199 :> fips-1.0/des/asm/fips-dx86-elf.s
202 %{__perl} -pi -e 's#%{_prefix}/local/bin/perl#%{__perl}#g' \
203 `grep -l -r "%{_prefix}/local/bin/perl" *`
207 %{__perl} util/perlpath.pl %{__perl}
209 OPTFLAGS="%{rpmcflags} %{?with_purify:-DPURIFY}"
213 # allow running on 80386 (default code uses bswapl available on i486+)
214 ./Configure --openssldir=%{_var}/lib/%{name} linux-elf shared 386
216 ./Configure --openssldir=%{_var}/lib/%{name} linux-elf shared
220 ./Configure --openssldir=%{_var}/lib/%{name} threads linux-alpha+bwx-gcc shared
223 ./Configure --openssldir=%{_var}/lib/%{name} linux-x86_64 shared
226 ./Configure --openssldir=%{_var}/lib/%{name} linux-ia64 shared
229 ./Configure --openssldir=%{_var}/lib/%{name} linux-ppc shared
232 ./Configure --openssldir=%{_var}/lib/%{name} threads linux-sparcv8 shared
235 ./Configure --openssldir=%{_var}/lib/%{name} threads linux-sparcv9 shared
238 ./Configure --openssldir=%{_var}/lib/%{name} threads linux64-sparcv9 shared
243 INSTALLTOP=%{_prefix}
247 INSTALLTOP=%{_prefix}
249 # Conv PODs to man pages. "openssl_" prefix is added to each manpage
250 # to avoid potential conflicts with others packages.
251 center="OpenSSL 0.9.7"
254 cd doc/apps || exit 1
255 %{__perl} -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
258 if [ $pod != "openssl.pod" ]; then
259 mv -f $pod openssl_$pod;
264 if [ $pod = "openssl_config.pod" ]; then
268 manpage=`basename $pod .pod`.$sec;
269 pod2man --section="$sec" --release="$rel" --center="$center" \
276 for dir in ssl crypto; do
278 if [ $dir = "ssl" ]; then
279 rel="OpenSSL SSL/TLS library"
280 elif [ $dir = "crypto" ]; then
281 rel="OpenSSL cryptographic library"
284 %{__perl} -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
287 sec=`[ "$pod" = "des_modes.pod" ] && echo 7 || echo 3`;
288 mv -f $pod openssl_$pod;
290 manpage=`basename $pod .pod`.$sec;
291 pod2man --section="$sec" --release="$rel" --center=" " $pod > $manpage;
298 #%%{__perl} Makefile.PL \
303 rm -rf $RPM_BUILD_ROOT
304 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \
305 $RPM_BUILD_ROOT{%{_mandir}/{pl/man1,man{1,3,5,7}},%{_datadir}/ssl} \
306 $RPM_BUILD_ROOT%{_pkgconfigdir}
310 INSTALLTOP=%{_prefix} \
311 INSTALL_PREFIX=$RPM_BUILD_ROOT \
314 if [ "%{_prefix}/lib/pkgconfig" != "%{_pkgconfigdir}" ] ; then
315 mv $RPM_BUILD_ROOT%{_prefix}/lib/pkgconfig/* \
316 $RPM_BUILD_ROOT%{_pkgconfigdir}
318 sed -i -e 's,^libdir=.*,libdir=%{_libdir},' $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc
320 install %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/ssl/ca-bundle.crt
321 install libcrypto.a libssl.a $RPM_BUILD_ROOT%{_libdir}
322 install lib*.so.*.* $RPM_BUILD_ROOT%{_libdir}
323 ln -sf libcrypto.so.*.* $RPM_BUILD_ROOT%{_libdir}/libcrypto.so
324 ln -sf libssl.so.*.* $RPM_BUILD_ROOT%{_libdir}/libssl.so
326 mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/openssl.cnf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
327 ln -s %{_sysconfdir}/%{name}/openssl.cnf \
328 $RPM_BUILD_ROOT%{_var}/lib/%{name}/%{name}.cnf
330 mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
331 rm -rf $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc
333 find $RPM_BUILD_ROOT%{_mandir} -type f | xargs rm -f
334 install doc/apps/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
335 install doc/apps/*.5 $RPM_BUILD_ROOT%{_mandir}/man5
336 install doc/ssl/*.3 doc/crypto/*.3 $RPM_BUILD_ROOT%{_mandir}/man3
337 install doc/crypto/*.7 $RPM_BUILD_ROOT%{_mandir}/man7
338 install %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1
339 install %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate
340 install fips-1.0/openssl_fips_fingerprint $RPM_BUILD_ROOT%{_bindir}
343 rm -rf $RPM_BUILD_ROOT
345 %post -p /sbin/ldconfig
346 %postun -p /sbin/ldconfig
349 %defattr(644,root,root,755)
350 %doc CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt
351 %doc doc/openssl_button.gif doc/openssl_button.html
352 %attr(755,root,root) %{_libdir}/libcrypto.so.*.*.*
353 %attr(755,root,root) %{_libdir}/libssl.so.*.*.*
354 %dir %{_var}/lib/%{name}
355 %dir %{_var}/lib/%{name}/certs
356 %dir %{_var}/lib/%{name}/private
358 %config(noreplace) %verify(not md5 mtime size) %{_datadir}/ssl/ca-bundle.crt
361 %defattr(644,root,root,755)
362 %dir %{_sysconfdir}/%{name}
364 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/openssl.cnf
365 %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/%{name}/openssl.cnf
367 %attr(755,root,root) %{_bindir}/%{name}
368 %attr(755,root,root) %{_bindir}/openssl_fips_fingerprint
369 %attr(754,root,root) %{_bindir}/ssl-certificate
371 %dir %{_libdir}/%{name}
372 %attr(755,root,root) %{_libdir}/%{name}/CA.sh
373 %attr(755,root,root) %{_libdir}/%{name}/c_hash
374 %attr(755,root,root) %{_libdir}/%{name}/c_info
375 %attr(755,root,root) %{_libdir}/%{name}/c_issuer
376 %attr(755,root,root) %{_libdir}/%{name}/c_name
378 %{_mandir}/man1/openssl.1*
379 %{_mandir}/man1/openssl_asn1parse.1*
380 %{_mandir}/man1/openssl_ca.1*
381 %{_mandir}/man1/openssl_ciphers.1*
382 %{_mandir}/man1/openssl_crl.1*
383 %{_mandir}/man1/openssl_crl2pkcs7.1*
384 %{_mandir}/man1/openssl_dgst.1*
385 %{_mandir}/man1/openssl_dhparam.1*
386 %{_mandir}/man1/openssl_dsa.1*
387 %{_mandir}/man1/openssl_dsaparam.1*
388 %{_mandir}/man1/openssl_enc.1*
389 %{_mandir}/man1/openssl_errstr.1*
390 %{_mandir}/man1/openssl_gendsa.1*
391 %{_mandir}/man1/openssl_genrsa.1*
392 %{_mandir}/man1/openssl_nseq.1*
393 %{_mandir}/man1/openssl_ocsp.1*
394 %{_mandir}/man1/openssl_passwd.1*
395 %{_mandir}/man1/openssl_pkcs12.1*
396 %{_mandir}/man1/openssl_pkcs7.1*
397 %{_mandir}/man1/openssl_pkcs8.1*
398 %{_mandir}/man1/openssl_rand.1*
399 %{_mandir}/man1/openssl_req.1*
400 %{_mandir}/man1/openssl_rsa.1*
401 %{_mandir}/man1/openssl_rsautl.1*
402 %{_mandir}/man1/openssl_s_client.1*
403 %{_mandir}/man1/openssl_s_server.1*
404 %{_mandir}/man1/openssl_s_time.1*
405 %{_mandir}/man1/openssl_sess_id.1*
406 %{_mandir}/man1/openssl_smime.1*
407 %{_mandir}/man1/openssl_speed.1*
408 %{_mandir}/man1/openssl_spkac.1*
409 %{_mandir}/man1/openssl_verify.1*
410 %{_mandir}/man1/openssl_version.1*
411 %{_mandir}/man1/openssl_x509.1*
413 %lang(pl) %{_mandir}/pl/man1/openssl.1*
416 %defattr(644,root,root,755)
417 %attr(755,root,root) %{_libdir}/%{name}/CA.pl
418 %attr(755,root,root) %{_bindir}/c_rehash
419 %{_mandir}/man1/openssl_CA.pl.1*
422 %defattr(644,root,root,755)
423 %attr(755,root,root) %{_libdir}/libcrypto.so
424 %attr(755,root,root) %{_libdir}/libssl.so
425 %{_includedir}/%{name}
426 %{_pkgconfigdir}/openssl.pc
427 %{_mandir}/man3/openssl*.3*
431 %defattr(644,root,root,755)