diff -ura dogecoin-1.10.0/src/bitcoin-cli.cpp dogecoin-1.10.0-b/src/bitcoin-cli.cpp --- dogecoin-1.10.0/src/bitcoin-cli.cpp 2015-10-31 10:49:41.000000000 -0400 +++ dogecoin-1.10.0-b/src/bitcoin-cli.cpp 2018-02-06 01:23:36.244774559 -0500 @@ -105,7 +105,7 @@ // Connect to localhost bool fUseSSL = GetBoolArg("-rpcssl", false); boost::asio::io_service io_service; - boost::asio::ssl::context context(io_service, boost::asio::ssl::context::sslv23); + boost::asio::ssl::context context(boost::asio::ssl::context::sslv23); context.set_options(boost::asio::ssl::context::no_sslv2 | boost::asio::ssl::context::no_sslv3); boost::asio::ssl::stream sslStream(io_service, context); SSLIOStreamDevice d(sslStream, fUseSSL); diff -ura dogecoin-1.10.0/src/rpcserver.cpp dogecoin-1.10.0-b/src/rpcserver.cpp --- dogecoin-1.10.0/src/rpcserver.cpp 2015-10-31 10:49:41.000000000 -0400 +++ dogecoin-1.10.0-b/src/rpcserver.cpp 2018-02-06 01:04:33.034848733 -0500 @@ -503,8 +503,8 @@ void ServiceConnection(AcceptedConnection *conn); //! Forward declaration required for RPCListen -template -static void RPCAcceptHandler(boost::shared_ptr< basic_socket_acceptor > acceptor, +template +static void RPCAcceptHandler(boost::shared_ptr< basic_socket_acceptor > acceptor, ssl::context& context, bool fUseSSL, boost::shared_ptr< AcceptedConnection > conn, @@ -513,8 +513,8 @@ /** * Sets up I/O resources to accept and handle a new connection. */ -template -static void RPCListen(boost::shared_ptr< basic_socket_acceptor > acceptor, +template +static void RPCListen(boost::shared_ptr< basic_socket_acceptor > acceptor, ssl::context& context, const bool fUseSSL) { @@ -524,7 +524,7 @@ acceptor->async_accept( conn->sslStream.lowest_layer(), conn->peer, - boost::bind(&RPCAcceptHandler, + boost::bind(&RPCAcceptHandler, acceptor, boost::ref(context), fUseSSL, @@ -536,8 +536,8 @@ /** * Accept and handle incoming connection. */ -template -static void RPCAcceptHandler(boost::shared_ptr< basic_socket_acceptor > acceptor, +template +static void RPCAcceptHandler(boost::shared_ptr< basic_socket_acceptor > acceptor, ssl::context& context, const bool fUseSSL, boost::shared_ptr< AcceptedConnection > conn, @@ -631,7 +631,7 @@ assert(rpc_io_service == NULL); rpc_io_service = new boost::asio::io_service(); - rpc_ssl_context = new ssl::context(*rpc_io_service, ssl::context::sslv23); + rpc_ssl_context = new ssl::context(ssl::context::sslv23); const bool fUseSSL = GetBoolArg("-rpcssl", false); @@ -650,7 +650,7 @@ else LogPrintf("ThreadRPCServer ERROR: missing server private key file %s\n", pathPKFile.string()); string strCiphers = GetArg("-rpcsslciphers", "TLSv1.2+HIGH:TLSv1+HIGH:!SSLv2:!aNULL:!eNULL:!3DES:@STRENGTH"); - SSL_CTX_set_cipher_list(rpc_ssl_context->impl(), strCiphers.c_str()); + SSL_CTX_set_cipher_list(rpc_ssl_context->native_handle(), strCiphers.c_str()); } std::vector vEndpoints;