0ed7bc
From 6e4347e65ffaf89316907dff0d56d25a8cfbc514 Mon Sep 17 00:00:00 2001
0ed7bc
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
0ed7bc
Date: Thu, 6 Oct 2016 11:10:28 +0200
0ed7bc
Subject: [PATCH] Added support for tlsv1.1 tlsv1.2 via
0ed7bc
 $Net::SSLeay::ssl_version
0ed7bc
MIME-Version: 1.0
0ed7bc
Content-Type: text/plain; charset=UTF-8
0ed7bc
Content-Transfer-Encoding: 8bit
0ed7bc
0ed7bc
Ported to 1.55:
0ed7bc
0ed7bc
commit 617881711e375fa3677204ff8ce0647cce563b43
0ed7bc
Author: mikem-guest <mikem-guest@008bcf62-b706-0410-a62e-d321f1c85ab9>
0ed7bc
Date:   Mon May 5 21:37:08 2014 +0000
0ed7bc
0ed7bc
         Added support for tlsv1.1 tlsv1.2 via $Net::SSLeay::ssl_version. Patch
0ed7bc
         from Andreas Mohr.
0ed7bc
         Improve examples in 'Using other perl modules based on
0ed7bc
         Net::SSLeay'. Patched by Andreas Mohr.
0ed7bc
0ed7bc
    git-svn-id: svn://svn.debian.org/svn/net-ssleay@402 008bcf62-b706-0410-a62e-d321f1c85ab9
0ed7bc
0ed7bc
Signed-off-by: Petr Písař <ppisar@redhat.com>
0ed7bc
---
0ed7bc
 lib/Net/SSLeay.pm | 16 ++++++++++++++++
0ed7bc
 1 file changed, 16 insertions(+)
0ed7bc
0ed7bc
diff --git a/lib/Net/SSLeay.pm b/lib/Net/SSLeay.pm
0ed7bc
index 6441434..054619d 100644
0ed7bc
--- a/lib/Net/SSLeay.pm
0ed7bc
+++ b/lib/Net/SSLeay.pm
0ed7bc
@@ -30,6 +30,8 @@ $Net::SSLeay::trace = 0;  # Do not change here, use
0ed7bc
 # 2 = insist on v2 SSL protocol
0ed7bc
 # 3 = insist on v3 SSL
0ed7bc
 # 10 = insist on TLSv1
0ed7bc
+# 11 = insist on TLSv1.1
0ed7bc
+# 12 = insist on TLSv1.2
0ed7bc
 # 0 or undef = guess (v23)
0ed7bc
 #
0ed7bc
 $Net::SSLeay::ssl_version = 0;  # don't change here, use
0ed7bc
@@ -910,6 +912,20 @@ sub new_x_ctx {
0ed7bc
     }
0ed7bc
     elsif ($ssl_version == 3)  { $ctx = CTX_v3_new(); }
0ed7bc
     elsif ($ssl_version == 10) { $ctx = CTX_tlsv1_new(); }
0ed7bc
+    elsif ($ssl_version == 11) {
0ed7bc
+	unless (exists &Net::SSLeay::CTX_tlsv1_1_new) {
0ed7bc
+	    warn "ssl_version has been set to 11, but this version of OpenSSL has been compiled without TLSv1.1 support";
0ed7bc
+	    return undef;
0ed7bc
+	}
0ed7bc
+        $ctx = CTX_tlsv1_1_new;
0ed7bc
+    }
0ed7bc
+    elsif ($ssl_version == 12) {
0ed7bc
+	unless (exists &Net::SSLeay::CTX_tlsv1_2_new) {
0ed7bc
+	    warn "ssl_version has been set to 12, but this version of OpenSSL has been compiled without TLSv1.2 support";
0ed7bc
+	    return undef;
0ed7bc
+	}
0ed7bc
+        $ctx = CTX_tlsv1_2_new;
0ed7bc
+    }
0ed7bc
     else                       { $ctx = CTX_new(); }
0ed7bc
     return $ctx;
0ed7bc
 }
0ed7bc
-- 
0ed7bc
2.7.4
0ed7bc