@@ -45,6 +45,8 @@ OpenSSLConnection::SSLFuncs::SSLFuncs()
4545
4646 valid = valid && LoadSymbol (CTX_new, sslhandle, " SSL_CTX_new" );
4747 valid = valid && LoadSymbol (CTX_ctrl, sslhandle, " SSL_CTX_ctrl" );
48+ if (valid)
49+ LoadSymbol (CTX_set_options, sslhandle, " SSL_CTX_set_options" );
4850 valid = valid && LoadSymbol (CTX_set_verify, sslhandle, " SSL_CTX_set_verify" );
4951 valid = valid && LoadSymbol (CTX_set_default_verify_paths, sslhandle, " SSL_CTX_set_default_verify_paths" );
5052 valid = valid && LoadSymbol (CTX_free, sslhandle, " SSL_CTX_free" );
@@ -87,7 +89,10 @@ OpenSSLConnection::OpenSSLConnection()
8789 if (!context)
8890 return ;
8991
90- ssl.CTX_ctrl (context, SSL_CTRL_OPTIONS, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3, nullptr );
92+ if (ssl.CTX_set_options )
93+ ssl.CTX_set_options (context, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3);
94+ else
95+ ssl.CTX_ctrl (context, SSL_CTRL_OPTIONS, SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3, nullptr );
9196 ssl.CTX_set_verify (context, SSL_VERIFY_PEER, nullptr );
9297 ssl.CTX_set_default_verify_paths (context);
9398}
0 commit comments