Hello guys,

the following patch should provide a real solution to the problem.

--- /usr/include/boost/asio/ssl/detail/openssl_context_service.hpp.bak 2011-05-09 19:42:21.000000000 +0200 +++ /usr/include/boost/asio/ssl/detail/openssl_context_service.hpp 2011-05-09 19:53:01.000000000 +0200
@@ -19,6 +19,7 @@
 #include <boost/asio/detail/config.hpp>
 #include <cstring>
 #include <string>
+#include <stdexcept>
 #include <boost/function.hpp>
 #include <boost/asio/error.hpp>
 #include <boost/asio/io_service.hpp>
@@ -67,6 +68,7 @@
   {
     switch (m)
     {
+#if !defined(OPENSSL_NO_SSL2)
     case context_base::sslv2:
       impl = ::SSL_CTX_new(::SSLv2_method());
       break;
@@ -76,6 +78,14 @@
     case context_base::sslv2_server:
       impl = ::SSL_CTX_new(::SSLv2_server_method());
       break;
+#else
+    case context_base::sslv2:
+    case context_base::sslv2_client:
+    case context_base::sslv2_server:
+ boost::throw_exception(std::runtime_error("SSLv2 is not supported in your OpenSSL"));
+      impl = ::SSL_CTX_new(0); // if exceptions are disabled
+      break;
+#endif
     case context_base::sslv3:
       impl = ::SSL_CTX_new(::SSLv3_method());
       break;

--
Luboš Doležel



--
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to