From 3da5bb6b2c5da5efa0b2384cde8291ca3d8dbfcd Mon Sep 17 00:00:00 2001 From: Peter Thorson Date: Sun, 5 May 2013 18:09:16 -0500 Subject: [PATCH] don't block on SSL shutdown --- websocketpp/transport/asio/security/tls.hpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/websocketpp/transport/asio/security/tls.hpp b/websocketpp/transport/asio/security/tls.hpp index b35df0e2e3..946c49c2de 100644 --- a/websocketpp/transport/asio/security/tls.hpp +++ b/websocketpp/transport/asio/security/tls.hpp @@ -291,11 +291,19 @@ protected: callback(lib::error_code()); } + void handle_shutdown(socket_ptr s, const boost::system::error_code& ec) { + // TODO: error handling? + } + void shutdown() { - boost::system::error_code ec; - m_socket->shutdown(ec); - - // TODO: error handling + m_socket->async_shutdown( + lib::bind( + &type::handle_shutdown, + this, + m_socket, + lib::placeholders::_1 + ) + ); } private: socket_type::handshake_type get_handshake_type() {