aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuilhem Moulin <guilhem@fripost.org>2020-12-11 15:47:08 +0100
committerGuilhem Moulin <guilhem@fripost.org>2020-12-11 18:32:42 +0100
commit7d7a28bc77908d05983a3c3fcfed79616a1614ce (patch)
treed9baa11487e16115c8697e8d47b8794bda8a74a9
parente3b95b0da424e55682c8c7b025d9d272a4a35ffe (diff)
libinterimap: make $OPENSSL_VERSION global.
-rw-r--r--Changelog1
-rw-r--r--lib/Net/IMAP/InterIMAP.pm6
2 files changed, 4 insertions, 3 deletions
diff --git a/Changelog b/Changelog
index b809cd3..d880a0f 100644
--- a/Changelog
+++ b/Changelog
@@ -5,6 +5,7 @@ interimap (0.5.5) upstream;
Buster (OpenSSL 1.1.1) this does not make a difference, however using
the system default provides better compatibility with future libssl
versions.
+ - libinterimap: make $OPENSSL_VERSION global.
-- Guilhem Moulin <guilhem@fripost.org> Fri, 11 Dec 2020 14:55:53 +0100
diff --git a/lib/Net/IMAP/InterIMAP.pm b/lib/Net/IMAP/InterIMAP.pm
index 221b016..5843b27 100644
--- a/lib/Net/IMAP/InterIMAP.pm
+++ b/lib/Net/IMAP/InterIMAP.pm
@@ -48,6 +48,7 @@ my $RE_LIST_CHAR = qr/[\x21\x23-\x27\x2A\x2B-\x5B\x5D-\x7A\x7C-\x7E]/;
my $RE_TEXT_CHAR = qr/[\x01-\x09\x0B\x0C\x0E-\x7F]/;
my $RE_SSL_PROTO = qr/(?:SSLv[23]|TLSv1|TLSv1\.[0-3])/;
+my $OPENSSL_VERSION = Net::SSLeay::OPENSSL_VERSION_NUMBER();
# Map each option to a regexp validating its values.
my %OPTIONS = (
@@ -1692,7 +1693,6 @@ BEGIN {
# Upgrade the $socket to SSL/TLS.
sub _start_ssl($$) {
my ($self, $socket) = @_;
- my $openssl_version = Net::SSLeay::OPENSSL_VERSION_NUMBER();
my $ctx = Net::SSLeay::CTX_new() or $self->panic("Failed to create SSL_CTX $!");
if (defined $self->{_OUTBUF} and $self->{_OUTBUF} ne '') {
@@ -1746,7 +1746,7 @@ sub _start_ssl($$) {
my ($hostip, $hostipfam) = _parse_hostip($host);
if ($self->{SSL_verify} // 1) {
# for X509_VERIFY_PARAM_set1_{ip,host}()
- $self->panic("Failed requirement libssl >=1.0.2") if $openssl_version < 0x1000200f;
+ $self->panic("Failed requirement libssl >=1.0.2") if $OPENSSL_VERSION < 0x1000200f;
# verify certificate chain
my ($file, $path) = ($self->{SSL_CAfile} // '', $self->{SSL_CApath} // '');
@@ -1777,7 +1777,7 @@ sub _start_ssl($$) {
# always use 'SSL_hostname' when set, otherwise use 'host' (unless it's an IP) on OpenSSL >=0.9.8f
my $servername = $self->{SSL_hostname} // (defined $hostipfam ? "" : $host);
if ($servername ne "") {
- $self->panic("Failed requirement libssl >=0.9.8f") if $openssl_version < 0x00908070;
+ $self->panic("Failed requirement libssl >=0.9.8f") if $OPENSSL_VERSION < 0x00908070;
$self->_ssl_error("Can't set TLS servername extension (value $servername)")
unless Net::SSLeay::set_tlsext_host_name($ssl, $servername) == 1;
$self->log("Using SNI with name $servername") if $self->{debug};