--- a/src/Mayaqua/Network.c
|
|
+++ b/src/Mayaqua/Network.c
|
|
@@ -12966,35 +12966,46 @@ bool StartSSLEx(SOCK *sock, X *x, K *pri
|
|
{
|
|
if (sock->ServerMode)
|
|
{
|
|
+#ifdef SSL3_SUPPORT
|
|
if (sock->AcceptOnlyTls == false)
|
|
{
|
|
SSL_CTX_set_ssl_version(ssl_ctx, SSLv23_method());
|
|
}
|
|
else
|
|
{
|
|
+#endif
|
|
SSL_CTX_set_ssl_version(ssl_ctx, TLSv1_method());
|
|
+#ifdef SSL3_SUPPORT
|
|
}
|
|
-
|
|
+#endif
|
|
Unlock(openssl_lock);
|
|
AddChainSslCertOnDirectory(ssl_ctx);
|
|
Lock(openssl_lock);
|
|
}
|
|
else
|
|
{
|
|
+#ifdef SSL3_SUPPORT
|
|
if (client_tls == false)
|
|
{
|
|
SSL_CTX_set_ssl_version(ssl_ctx, SSLv3_method());
|
|
}
|
|
else
|
|
{
|
|
+#endif
|
|
SSL_CTX_set_ssl_version(ssl_ctx, TLSv1_client_method());
|
|
+#ifdef SSL3_SUPPORT
|
|
}
|
|
+#endif
|
|
}
|
|
sock->ssl = SSL_new(ssl_ctx);
|
|
SSL_set_fd(sock->ssl, (int)sock->socket);
|
|
|
|
#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
|
|
+# ifdef SSL3_SUPPORT
|
|
if (sock->ServerMode == false && client_tls)
|
|
+# else
|
|
+ if (sock->ServerMode == false)
|
|
+#endif
|
|
{
|
|
if (IsEmptyStr(sni_hostname) == false)
|
|
{
|