2007-01-16 00:30:54 +01:00
|
|
|
#
|
2011-05-17 10:25:26 +02:00
|
|
|
# spec file for package perl-IO-Socket-SSL
|
2007-01-16 00:30:54 +01:00
|
|
|
#
|
2024-03-27 19:59:55 +01:00
|
|
|
# Copyright (c) 2024 SUSE LLC
|
2007-01-16 00:30:54 +01:00
|
|
|
#
|
2008-08-19 00:22:02 +02:00
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
2018-09-20 09:31:57 +02:00
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
2007-01-16 00:30:54 +01:00
|
|
|
#
|
|
|
|
|
2011-05-17 10:25:26 +02:00
|
|
|
|
2021-03-02 12:44:59 +01:00
|
|
|
%define cpan_name IO-Socket-SSL
|
2007-01-16 00:30:54 +01:00
|
|
|
Name: perl-IO-Socket-SSL
|
2024-03-27 19:59:55 +01:00
|
|
|
Version: 2.85.0
|
2011-12-08 12:15:34 +01:00
|
|
|
Release: 0
|
2024-03-27 19:59:55 +01:00
|
|
|
# 2.085 -> normalize -> 2.85.0
|
|
|
|
%define cpan_version 2.085
|
2018-02-16 09:46:31 +01:00
|
|
|
License: Artistic-1.0 OR GPL-1.0-or-later
|
2022-09-28 15:30:53 +02:00
|
|
|
Summary: Nearly transparent SSL encapsulation for IO::Socket::INET
|
2019-05-27 17:40:11 +02:00
|
|
|
URL: https://metacpan.org/release/%{cpan_name}
|
2023-11-16 17:37:34 +01:00
|
|
|
Source0: https://cpan.metacpan.org/authors/id/S/SU/SULLR/%{cpan_name}-%{cpan_version}.tar.gz
|
2015-04-19 09:10:15 +02:00
|
|
|
Source1: cpanspec.yml
|
2022-09-28 15:30:53 +02:00
|
|
|
# PATCH-FIX-UPSTREAM (bsc1200295) perl-IO-Socket-SSL doesn't follow system "PROFILE=SYSTEM" openSSL ciphers - https://git.centos.org/rpms/perl-IO-Socket-SSL/blob/e0b0ae04f5cdb41b1f29cb7d76c23abba7ac35e9/f/SOURCES/IO-Socket-SSL-2.066-use-system-default-cipher-list.patch
|
2022-06-13 09:59:32 +02:00
|
|
|
Patch0: perl-IO-Socket-SSL-use-system-default-cipher-list.patch
|
2020-02-19 07:19:15 +01:00
|
|
|
BuildArch: noarch
|
2010-11-24 22:06:13 +01:00
|
|
|
BuildRequires: perl
|
- update to 1.88
+ consider a value of '' the same as undef for SSL_ca_(path|file)
+ complain if given SSL_(key|cert|ca)_(file|path) do not exist or
if they are not readable
+ disabled client side SNI for openssl version < 1.0.0
+ added functions can_client_sni, can_server_sni, can_npn to check
avaibility of SNI and NPN features. Added more documentation for
SNI and NPN
+ Server Name Indication (SNI) support on the server side
+ sub error sets $SSL_ERROR etc only if there really is an error,
otherwise it will keep the latest error. This causes
IO::Socket::SSL->new.. to report the correct problem, even if
the problem is deeper in the code (like in connect)
+ deprecated set_ctx_defaults, new name ist set_defaults
+ changed handling of default path for SSL_(ca|cert|key)* keys: either
if one of these keys is user defined don't add defaults for the
others, e.g. don't mix user settings and defaults
+ cleaner handling of module defaults vs. global settings vs. socket
specific settings
+ prepare transition to a more secure default for SSL_verify_mode.
The use of the current default SSL_VERIFY_NONE will cause a big warning
for clients, unless SSL_verify_mode was explicitly set inside the
application to this insecure value.
In the near future the default will be SSL_VERIFY_PEER, and thus
causing verification failures in unchanged applications.
+ use getnameinfo instead of unpack_sockaddr_in6 to get PeerAddr and
PeerPort from sockaddr in _update_peer, because this provides scope
+ work around systems which don't defined AF_INET6
+ update_peer for IPv6 also
+ no longer depend on Socket.pm 1.95 for inet_pton, but use
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-IO-Socket-SSL?expand=0&rev=58
2013-05-12 01:06:34 +02:00
|
|
|
BuildRequires: perl-macros
|
2018-02-12 13:13:28 +01:00
|
|
|
#BuildRequires: perl(Mozilla::CA)
|
Accepting request 182138 from home:lnussel:branches:devel:languages:perl
- new version 0.951
* better document builtin defaults for key,cert,CA and how they are depreceated
* use Net::SSLeay::SSL_CTX_set_default_verify_paths to use
openssl's builtin defaults for CA unless CA path/file was given
* MAJOR BEHAVIOR CHANGE:
ssl_verify_mode now defaults to verify_peer for client. Until
now it used verify_none, but loudly complained since 1.79 about
it. It will not complain any longer, but the connection might
probably fail. Please don't simply disable ssl verification, but
instead set SSL_ca_file etc so that verification succeeds!
* MAJOR BEHAVIOR CHANGE:
it will now complain if the builtin defaults of certs/my-ca.pem
or ca/ for CA and certs/{server,client}-{key,cert}.pem for cert
and key are used, e.g. no certificates are specified explicitly.
In the future these insecure (relative path!) defaults will be
removed and the CA replaced with the system defaults.
* Makefile.PL reported wrong version of openssl, if Net::SSLeay was not
installed instead of reporting missing dependency to Net::SSLeay.
* need at least OpenSSL version 0.9.8 now, since last 0.9.7 was released 6
years ago. Remove code to work around older releases.
* changed AUTHOR in Makefile.PL from array back to string, because the
array feature is not available in MakeMaker shipped with 5.8.9 (RT#85739)
* Intercept: use sha1-fingerprint of original cert for id into cache unless
otherwise given
* Fix pod error in IO::Socket::SSL::Utils RT#85733
* added IO::Socket::SSL::Utils for easier manipulation of certificates and keys
* moved SSL interception into IO::Socket::SSL::Intercept and simplified it
using IO::Socket::SSL::Utils
* enhance meta information in Makefile.PL
* RT#85290, support more digest, especially SHA-2.
OBS-URL: https://build.opensuse.org/request/show/182138
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-IO-Socket-SSL?expand=0&rev=59
2013-07-25 11:25:21 +02:00
|
|
|
BuildRequires: perl(Net::SSLeay) >= 1.46
|
2018-02-12 13:13:28 +01:00
|
|
|
#Requires: perl(Mozilla::CA)
|
Accepting request 182138 from home:lnussel:branches:devel:languages:perl
- new version 0.951
* better document builtin defaults for key,cert,CA and how they are depreceated
* use Net::SSLeay::SSL_CTX_set_default_verify_paths to use
openssl's builtin defaults for CA unless CA path/file was given
* MAJOR BEHAVIOR CHANGE:
ssl_verify_mode now defaults to verify_peer for client. Until
now it used verify_none, but loudly complained since 1.79 about
it. It will not complain any longer, but the connection might
probably fail. Please don't simply disable ssl verification, but
instead set SSL_ca_file etc so that verification succeeds!
* MAJOR BEHAVIOR CHANGE:
it will now complain if the builtin defaults of certs/my-ca.pem
or ca/ for CA and certs/{server,client}-{key,cert}.pem for cert
and key are used, e.g. no certificates are specified explicitly.
In the future these insecure (relative path!) defaults will be
removed and the CA replaced with the system defaults.
* Makefile.PL reported wrong version of openssl, if Net::SSLeay was not
installed instead of reporting missing dependency to Net::SSLeay.
* need at least OpenSSL version 0.9.8 now, since last 0.9.7 was released 6
years ago. Remove code to work around older releases.
* changed AUTHOR in Makefile.PL from array back to string, because the
array feature is not available in MakeMaker shipped with 5.8.9 (RT#85739)
* Intercept: use sha1-fingerprint of original cert for id into cache unless
otherwise given
* Fix pod error in IO::Socket::SSL::Utils RT#85733
* added IO::Socket::SSL::Utils for easier manipulation of certificates and keys
* moved SSL interception into IO::Socket::SSL::Intercept and simplified it
using IO::Socket::SSL::Utils
* enhance meta information in Makefile.PL
* RT#85290, support more digest, especially SHA-2.
OBS-URL: https://build.opensuse.org/request/show/182138
OBS-URL: https://build.opensuse.org/package/show/devel:languages:perl/perl-IO-Socket-SSL?expand=0&rev=59
2013-07-25 11:25:21 +02:00
|
|
|
Requires: perl(Net::SSLeay) >= 1.46
|
2024-03-27 19:59:55 +01:00
|
|
|
Provides: perl(IO::Socket::SSL) = %{version}
|
2023-11-16 17:37:34 +01:00
|
|
|
Provides: perl(IO::Socket::SSL::Intercept) = 2.056
|
|
|
|
Provides: perl(IO::Socket::SSL::OCSP_Cache)
|
|
|
|
Provides: perl(IO::Socket::SSL::OCSP_Resolver)
|
|
|
|
Provides: perl(IO::Socket::SSL::PublicSuffix)
|
|
|
|
Provides: perl(IO::Socket::SSL::SSL_Context)
|
|
|
|
Provides: perl(IO::Socket::SSL::SSL_HANDLE)
|
|
|
|
Provides: perl(IO::Socket::SSL::Session_Cache)
|
|
|
|
Provides: perl(IO::Socket::SSL::Trace)
|
|
|
|
Provides: perl(IO::Socket::SSL::Utils) = 2.015
|
2024-03-27 19:59:55 +01:00
|
|
|
%undefine __perllib_provides
|
2011-05-04 13:11:22 +02:00
|
|
|
%{perl_requires}
|
2007-01-16 00:30:54 +01:00
|
|
|
|
|
|
|
%description
|
2014-07-25 11:50:24 +02:00
|
|
|
IO::Socket::SSL makes using SSL/TLS much easier by wrapping the necessary
|
2016-03-11 22:33:35 +01:00
|
|
|
functionality into the familiar IO::Socket interface and providing secure
|
|
|
|
defaults whenever possible. This way, existing applications can be made
|
|
|
|
SSL-aware without much effort, at least if you do blocking I/O and don't
|
|
|
|
use select or poll.
|
2015-05-02 10:04:16 +02:00
|
|
|
|
|
|
|
But, under the hood, SSL is a complex beast. So there are lots of methods
|
|
|
|
to make it do what you need if the default behavior is not adequate.
|
|
|
|
Because it is easy to inadvertently introduce critical security bugs or
|
|
|
|
just hard to debug problems, I would recommend studying the following
|
2014-07-25 11:50:24 +02:00
|
|
|
documentation carefully.
|
|
|
|
|
|
|
|
The documentation consists of the following parts:
|
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * "Essential Information About SSL/TLS"
|
2014-07-25 11:50:24 +02:00
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * "Basic SSL Client"
|
2014-07-25 11:50:24 +02:00
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * "Basic SSL Server"
|
2014-07-25 11:50:24 +02:00
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * "Common Usage Errors"
|
2014-07-25 11:50:24 +02:00
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * "Common Problems with SSL"
|
2014-07-25 11:50:24 +02:00
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * "Using Non-Blocking Sockets"
|
2014-07-25 11:50:24 +02:00
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * "Advanced Usage"
|
2014-07-25 11:50:24 +02:00
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * "Integration Into Own Modules"
|
2014-07-25 11:50:24 +02:00
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * "Description Of Methods"
|
2014-07-25 11:50:24 +02:00
|
|
|
|
|
|
|
Additional documentation can be found in
|
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * IO::Socket::SSL::Intercept - Doing Man-In-The-Middle with SSL
|
2014-07-25 11:50:24 +02:00
|
|
|
|
2016-03-11 22:33:35 +01:00
|
|
|
* * IO::Socket::SSL::Utils - Useful functions for certificates etc
|
2007-01-16 00:30:54 +01:00
|
|
|
|
|
|
|
%prep
|
2023-11-16 17:37:34 +01:00
|
|
|
%autosetup -n %{cpan_name}-%{cpan_version} -p1
|
2023-01-31 13:51:03 +01:00
|
|
|
|
2023-06-01 17:22:17 +02:00
|
|
|
find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path "*/script/*" ! -path "*/scripts/*" ! -name "configure" -print0 | xargs -0 chmod 644
|
2007-01-16 00:30:54 +01:00
|
|
|
|
|
|
|
%build
|
2019-02-23 10:58:46 +01:00
|
|
|
perl Makefile.PL INSTALLDIRS=vendor
|
2021-03-02 12:44:59 +01:00
|
|
|
%make_build
|
2013-11-26 09:14:16 +01:00
|
|
|
|
|
|
|
%check
|
2020-02-19 07:19:15 +01:00
|
|
|
make test
|
2007-06-11 13:08:20 +02:00
|
|
|
|
2007-01-16 00:30:54 +01:00
|
|
|
%install
|
|
|
|
%perl_make_install
|
|
|
|
%perl_process_packlist
|
2010-11-24 22:06:13 +01:00
|
|
|
%perl_gen_filelist
|
2007-01-16 00:30:54 +01:00
|
|
|
|
2010-11-24 22:06:13 +01:00
|
|
|
%files -f %{name}.files
|
2021-03-02 12:44:59 +01:00
|
|
|
%doc BUGS Changes docs example README README.Win32
|
2008-01-28 16:08:44 +01:00
|
|
|
|
2007-03-07 13:38:30 +01:00
|
|
|
%changelog
|