[Boost-bugs] [Boost C++ Libraries] #5453: Compile error in Boost.Asio with OPENSSL_NO_SSL2

Subject: [Boost-bugs] [Boost C++ Libraries] #5453: Compile error in Boost.Asio with OPENSSL_NO_SSL2
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-04-10 23:32:31


#5453: Compile error in Boost.Asio with OPENSSL_NO_SSL2
---------------------------------+------------------------------------------
 Reporter: kikairoya@… | Owner: chris_kohlhoff
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: asio
  Version: Boost 1.46.1 | Severity: Problem
 Keywords: |
---------------------------------+------------------------------------------
 A compile error occurs in asio/ssl/detail/openssl_context_service.hpp if
 OPENSSL_NO_SSL2 is defined (this is the default of Debian's OpenSSL
 package).
 openssl_context_service.hpp should check OPENSSL_NO_* macros.
 Show error messages below.

 $ g++ -v
 Using built-in specs.
 COLLECT_GCC=g++
 COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.5.2/lto-wrapper
 Target: x86_64-linux-gnu
 Configured with: ../src/configure -v --with-pkgversion='Debian 4.5.2-8'
 --with-bugurl=file:///usr/share/doc/gcc-4.5/README.Bugs --enable-
 languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.5
 --enable-shared --enable-multiarch --enable-linker-build-id --with-system-
 zlib --libexecdir=/usr/lib --without-included-gettext --enable-
 threads=posix --with-gxx-include-dir=/usr/include/c++/4.5
 --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-
 debug --enable-libstdcxx-time=yes --enable-plugin --enable-gold --enable-
 ld=default --with-plugin-ld=ld.gold --enable-objc-gc --with-arch-32=i586
 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu
 --host=x86_64-linux-gnu --target=x86_64-linux-gnu
 Thread model: posix
 gcc version 4.5.2 (Debian 4.5.2-8)

 $ g++ /usr/include/boost/asio/ssl.hpp
 In file included from
 /usr/include/boost/asio/ssl/context_service.hpp:25:0,
                  from /usr/include/boost/asio/ssl/context.hpp:21,
                  from /usr/include/boost/asio/ssl.hpp:19:
 /usr/include/boost/asio/ssl/detail/openssl_context_service.hpp: In member
 function ‘void
 boost::asio::ssl::detail::openssl_context_service::create(SSL_CTX*&,
 boost::asio::ssl::context_base::method)’:
 /usr/include/boost/asio/ssl/detail/openssl_context_service.hpp:70:28:
 error: ‘::SSLv2_method’ has not been declared
 /usr/include/boost/asio/ssl/detail/openssl_context_service.hpp:73:28:
 error: ‘::SSLv2_client_method’ has not been declared
 /usr/include/boost/asio/ssl/detail/openssl_context_service.hpp:76:28:
 error: ‘::SSLv2_server_method’ has not been declared

 $ grep -n2 OPENSSL_NO_SSL2 /usr/include/openssl/*.h
 /usr/include/openssl/opensslconf.h-30-# define OPENSSL_NO_RFC3779
 /usr/include/openssl/opensslconf.h-31-#endif
 /usr/include/openssl/opensslconf.h:32:#ifndef OPENSSL_NO_SSL2
 /usr/include/openssl/opensslconf.h:33:# define OPENSSL_NO_SSL2
 /usr/include/openssl/opensslconf.h-34-#endif
 /usr/include/openssl/opensslconf.h-35-#ifndef OPENSSL_NO_STORE
 --
 /usr/include/openssl/opensslconf.h-75-# define NO_RFC3779
 /usr/include/openssl/opensslconf.h-76-# endif
 /usr/include/openssl/opensslconf.h:77:# if defined(OPENSSL_NO_SSL2) &&
 !defined(NO_SSL2)
 /usr/include/openssl/opensslconf.h-78-# define NO_SSL2
 /usr/include/openssl/opensslconf.h-79-# endif
 --
 /usr/include/openssl/ssl.h-345-#endif
 /usr/include/openssl/ssl.h-346-
 /usr/include/openssl/ssl.h:347:#if (defined(OPENSSL_NO_RSA) ||
 defined(OPENSSL_NO_MD5)) && !defined(OPENSSL_NO_SSL2)
 /usr/include/openssl/ssl.h:348:#define OPENSSL_NO_SSL2
 /usr/include/openssl/ssl.h-349-#endif
 /usr/include/openssl/ssl.h-350-
 --
 /usr/include/openssl/ssl.h-1630-int SSL_CTX_set_ssl_version(SSL_CTX *ctx,
 const SSL_METHOD *meth);
 /usr/include/openssl/ssl.h-1631-
 /usr/include/openssl/ssl.h:1632:#ifndef OPENSSL_NO_SSL2
 /usr/include/openssl/ssl.h-1633-const SSL_METHOD *SSLv2_method(void);
 /* SSLv2 */
 /usr/include/openssl/ssl.h-1634-const SSL_METHOD
 *SSLv2_server_method(void); /* SSLv2 */

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/5453>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:06 UTC