diff options
author | Kent Fredric <kentnl@gentoo.org> | 2017-03-21 10:37:15 +1300 |
---|---|---|
committer | Kent Fredric <kentnl@gentoo.org> | 2017-03-21 10:41:17 +1300 |
commit | 6c66a3fce14344d5819a5f9eb6a875e2bdaeea50 (patch) | |
tree | 1a9a7057b3aeca7ded3388fa1b4eea5c4cf71ac6 /dev-perl/LWP-Protocol-https/files | |
parent | net-misc/freerdp: fix build with libressl (diff) | |
download | gentoo-6c66a3fce14344d5819a5f9eb6a875e2bdaeea50.tar.gz gentoo-6c66a3fce14344d5819a5f9eb6a875e2bdaeea50.tar.bz2 gentoo-6c66a3fce14344d5819a5f9eb6a875e2bdaeea50.zip |
dev-perl/LWP-Protocol-https: Bump to version 6.70.0
- EAPI6
- Rehashed patches to git-format to ensure they still apply
Keywords:
- New deps, dropped:
amd64-fbsd mips x86-fbsd
Upstream:
- Explicitly add hostname for SNI to start_SSL
Package-Manager: Portage-2.3.4, Repoman-2.3.2
Diffstat (limited to 'dev-perl/LWP-Protocol-https/files')
-rw-r--r-- | dev-perl/LWP-Protocol-https/files/LWP-Protocol-https-6.70.0-CVE-2014-3230.patch | 36 | ||||
-rw-r--r-- | dev-perl/LWP-Protocol-https/files/LWP-Protocol-https-6.70.0-etcsslcerts.patch | 48 |
2 files changed, 84 insertions, 0 deletions
diff --git a/dev-perl/LWP-Protocol-https/files/LWP-Protocol-https-6.70.0-CVE-2014-3230.patch b/dev-perl/LWP-Protocol-https/files/LWP-Protocol-https-6.70.0-CVE-2014-3230.patch new file mode 100644 index 000000000000..781d72ee03e9 --- /dev/null +++ b/dev-perl/LWP-Protocol-https/files/LWP-Protocol-https-6.70.0-CVE-2014-3230.patch @@ -0,0 +1,36 @@ +From 67de137e737e4fa92d0cb746bdc8474d7bb5e000 Mon Sep 17 00:00:00 2001 +From: Kent Fredric <kentnl@gentoo.org> +Date: Tue, 21 Mar 2017 10:11:32 +1300 +Subject: Use SSL_verifycn_scheme instead of disabling SSL_verify_mode + +Re: CVE-2014-3230 + +Redhat Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1094440 + +Combines: https://bugzilla.redhat.com/attachment.cgi?id=894747 + https://bugzilla.redhat.com/attachment.cgi?id=894748 +--- + lib/LWP/Protocol/https.pm | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/lib/LWP/Protocol/https.pm b/lib/LWP/Protocol/https.pm +index f8ab398..ba69966 100644 +--- a/lib/LWP/Protocol/https.pm ++++ b/lib/LWP/Protocol/https.pm +@@ -21,7 +21,12 @@ sub _extra_sock_opts + $ssl_opts{SSL_verifycn_scheme} = 'www'; + } + else { +- $ssl_opts{SSL_verify_mode} = 0; ++ if ( $Net::HTTPS::SSL_SOCKET_CLASS eq 'Net::SSL' ) { ++ $ssl_opts{SSL_verifycn_scheme} = ''; ++ } ++ else { ++ $ssl_opts{SSL_verifycn_scheme} = 'none'; ++ } + } + if ($ssl_opts{SSL_verify_mode}) { + unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) { +-- +2.12.0 + diff --git a/dev-perl/LWP-Protocol-https/files/LWP-Protocol-https-6.70.0-etcsslcerts.patch b/dev-perl/LWP-Protocol-https/files/LWP-Protocol-https-6.70.0-etcsslcerts.patch new file mode 100644 index 000000000000..2553c7949af9 --- /dev/null +++ b/dev-perl/LWP-Protocol-https/files/LWP-Protocol-https-6.70.0-etcsslcerts.patch @@ -0,0 +1,48 @@ +From 9baa19987f93284be254415d15db56c599e52e1e Mon Sep 17 00:00:00 2001 +From: Kent Fredric <kentnl@gentoo.org> +Date: Tue, 21 Mar 2017 10:07:35 +1300 +Subject: Ensure using System Certificates instead of Mozilla-CA + +Bug: https://bugs.gentoo.org/358081 +--- + lib/LWP/Protocol/https.pm | 24 +++--------------------- + 1 file changed, 3 insertions(+), 21 deletions(-) + +diff --git a/lib/LWP/Protocol/https.pm b/lib/LWP/Protocol/https.pm +index ed4d832..f8ab398 100644 +--- a/lib/LWP/Protocol/https.pm ++++ b/lib/LWP/Protocol/https.pm +@@ -24,27 +24,9 @@ sub _extra_sock_opts + $ssl_opts{SSL_verify_mode} = 0; + } + if ($ssl_opts{SSL_verify_mode}) { +- unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) { +- eval { +- require Mozilla::CA; +- }; +- if ($@) { +- if ($@ =~ /^Can't locate Mozilla\/CA\.pm/) { +- $@ = <<'EOT'; +-Can't verify SSL peers without knowing which Certificate Authorities to trust +- +-This problem can be fixed by either setting the PERL_LWP_SSL_CA_FILE +-environment variable or by installing the Mozilla::CA module. +- +-To disable verification of SSL peers set the PERL_LWP_SSL_VERIFY_HOSTNAME +-environment variable to 0. If you do this you can't be sure that you +-communicate with the expected peer. +-EOT +- } +- die $@; +- } +- $ssl_opts{SSL_ca_file} = Mozilla::CA::SSL_ca_file(); +- } ++ unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) { ++ $ssl_opts{SSL_ca_path} = '/etc/ssl/certs'; ++ } + } + $self->{ssl_opts} = \%ssl_opts; + return (%ssl_opts, $self->SUPER::_extra_sock_opts); +-- +2.12.0 + |