$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r54907 - trunk/boost/asio/ssl/detail
From: chris_at_[hidden]
Date: 2009-07-12 04:16:07
Author: chris_kohlhoff
Date: 2009-07-12 04:16:06 EDT (Sun, 12 Jul 2009)
New Revision: 54907
URL: http://svn.boost.org/trac/boost/changeset/54907
Log:
Fix compile error when using openssl 1.0 beta. Refs #3256.
Text files modified: 
   trunk/boost/asio/ssl/detail/openssl_context_service.hpp |    27 +++++++++++++--------------             
   1 files changed, 13 insertions(+), 14 deletions(-)
Modified: trunk/boost/asio/ssl/detail/openssl_context_service.hpp
==============================================================================
--- trunk/boost/asio/ssl/detail/openssl_context_service.hpp	(original)
+++ trunk/boost/asio/ssl/detail/openssl_context_service.hpp	2009-07-12 04:16:06 EDT (Sun, 12 Jul 2009)
@@ -67,49 +67,48 @@
   // Create a new context implementation.
   void create(impl_type& impl, context_base::method m)
   {
-    ::SSL_METHOD* ssl_method = 0;
     switch (m)
     {
     case context_base::sslv2:
-      ssl_method = ::SSLv2_method();
+      impl = ::SSL_CTX_new(::SSLv2_method());
       break;
     case context_base::sslv2_client:
-      ssl_method = ::SSLv2_client_method();
+      impl = ::SSL_CTX_new(::SSLv2_client_method());
       break;
     case context_base::sslv2_server:
-      ssl_method = ::SSLv2_server_method();
+      impl = ::SSL_CTX_new(::SSLv2_server_method());
       break;
     case context_base::sslv3:
-      ssl_method = ::SSLv3_method();
+      impl = ::SSL_CTX_new(::SSLv3_method());
       break;
     case context_base::sslv3_client:
-      ssl_method = ::SSLv3_client_method();
+      impl = ::SSL_CTX_new(::SSLv3_client_method());
       break;
     case context_base::sslv3_server:
-      ssl_method = ::SSLv3_server_method();
+      impl = ::SSL_CTX_new(::SSLv3_server_method());
       break;
     case context_base::tlsv1:
-      ssl_method = ::TLSv1_method();
+      impl = ::SSL_CTX_new(::TLSv1_method());
       break;
     case context_base::tlsv1_client:
-      ssl_method = ::TLSv1_client_method();
+      impl = ::SSL_CTX_new(::TLSv1_client_method());
       break;
     case context_base::tlsv1_server:
-      ssl_method = ::TLSv1_server_method();
+      impl = ::SSL_CTX_new(::TLSv1_server_method());
       break;
     case context_base::sslv23:
-      ssl_method = ::SSLv23_method();
+      impl = ::SSL_CTX_new(::SSLv23_method());
       break;
     case context_base::sslv23_client:
-      ssl_method = ::SSLv23_client_method();
+      impl = ::SSL_CTX_new(::SSLv23_client_method());
       break;
     case context_base::sslv23_server:
-      ssl_method = ::SSLv23_server_method();
+      impl = ::SSL_CTX_new(::SSLv23_server_method());
       break;
     default:
+      impl = ::SSL_CTX_new(0);
       break;
     }
-    impl = ::SSL_CTX_new(ssl_method);
   }
 
   // Destroy a context implementation.