]> granicus.if.org Git - curl/commitdiff
openssl: SSL_SESSION->ssl_version no longer exist
authorDaniel Stenberg <daniel@haxx.se>
Thu, 5 Feb 2015 10:56:29 +0000 (11:56 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 5 Feb 2015 10:57:33 +0000 (11:57 +0100)
The struct went private in 1.0.2 so we cannot read the version number
from there anymore. Use SSL_version() instead!

Reported-by: Gisle Vanem
Bug: http://curl.haxx.se/mail/lib-2015-02/0034.html

lib/vtls/openssl.c

index e514e3270c12057310d2e119e83e2f69a4664f8e..68ca1fbcd194bbedc84ab2040655fd3510d7c568 100644 (file)
@@ -1660,12 +1660,12 @@ select_next_proto_cb(SSL *ssl,
 #endif /* USE_NGHTTP2 */
 
 static const char *
-get_ssl_version_txt(SSL_SESSION *session)
+get_ssl_version_txt(SSL *ssl)
 {
-  if(!session)
+  if(!ssl)
     return "";
 
-  switch(session->ssl_version) {
+  switch(SSL_version(ssl)) {
 #if OPENSSL_VERSION_NUMBER >= 0x1000100FL
   case TLS1_2_VERSION:
     return "TLSv1.2";
@@ -2203,7 +2203,7 @@ static CURLcode ossl_connect_step2(struct connectdata *conn, int sockindex)
 
     /* Informational message */
     infof(data, "SSL connection using %s / %s\n",
-          get_ssl_version_txt(SSL_get_session(connssl->handle)),
+          get_ssl_version_txt(connssl->handle),
           SSL_get_cipher(connssl->handle));
 
 #ifdef HAS_ALPN