Boost C++ Libraries: Ticket #11646: Boost ASIO server-side async_handshake handler not called if Diffie-Hellman key is too small https://svn.boost.org/trac10/ticket/11646 <p> Boost ASIO server-side <code>async_handshake</code> handler is never called if the Diffie-Hellman key is too small. Instead, the handshake operation appears to hang indefinitely. </p> <p> OpenSSL now requires Diffie-Hellman keys to be at least 768 bits (<a class="ext-link" href="https://www.openssl.org/blog/blog/2015/05/20/logjam-freak-upcoming-changes/"><span class="icon">​</span>https://www.openssl.org/blog/blog/2015/05/20/logjam-freak-upcoming-changes/</a>). </p> <p> This bug may be reproduced using the SSL examples in the Boost documentation (<a href="http://www.boost.org/doc/libs/1_58_0/doc/html/boost_asio/example/cpp03/ssl/server.cpp">http://www.boost.org/doc/libs/1_58_0/doc/html/boost_asio/example/cpp03/ssl/server.cpp</a>) and a recent version of OpenSSL that restricts DH keys to 768 or more bits. (I'm using OpenSSL version 1.0.2d.) Observe the bug by placing a breakpoint on the server-side handshake handler and seeing that the breakpoint is never hit. </p> <p> For what it's worth, the client-side handshake operation completes, with error (<code>"dh key too small"</code>), as expected. So this problem affects only the server. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/11646 Trac 1.4.3