40 lines
2.0 KiB
Diff
40 lines
2.0 KiB
Diff
--- a/src/network/ssl/qsslsocket_openssl.cpp
|
|
+++ b/src/network/ssl/qsslsocket_openssl.cpp
|
|
@@ -351,7 +351,7 @@
|
|
cipherString.append(cipher.name().toLatin1());
|
|
}
|
|
|
|
- if (!q_SSL_CTX_set_cipher_list(ctx, cipherString.data())) {
|
|
+ if (!q_SSL_CTX_set_cipher_list(ctx, cipherString.data()) && !q_SSL_CTX_set_ciphersuites(ctx, cipherString.data())) {
|
|
// ### Bad error code
|
|
q->setErrorString(QSslSocket::tr("Invalid or empty cipher list (%1)").arg(getErrorsFromOpenSsl()));
|
|
q->setSocketError(QAbstractSocket::UnknownSocketError);
|
|
--- a/src/network/ssl/qsslsocket_openssl_symbols.cpp
|
|
+++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp
|
|
@@ -193,6 +193,7 @@
|
|
DEFINEFUNC(SSL_CTX *, SSL_CTX_new, SSL_METHOD *a, a, return 0, return)
|
|
#endif
|
|
DEFINEFUNC2(int, SSL_CTX_set_cipher_list, SSL_CTX *a, a, const char *b, b, return -1, return)
|
|
+DEFINEFUNC2(int, SSL_CTX_set_ciphersuites, SSL_CTX *a, a, const char *b, b, return -1, return)
|
|
DEFINEFUNC(int, SSL_CTX_set_default_verify_paths, SSL_CTX *a, a, return -1, return)
|
|
DEFINEFUNC3(void, SSL_CTX_set_verify, SSL_CTX *a, a, int b, b, int (*c)(int, X509_STORE_CTX *), c, return, DUMMYARG)
|
|
DEFINEFUNC2(void, SSL_CTX_set_verify_depth, SSL_CTX *a, a, int b, b, return, DUMMYARG)
|
|
@@ -864,6 +865,7 @@
|
|
RESOLVEFUNC(SSL_CTX_free)
|
|
RESOLVEFUNC(SSL_CTX_new)
|
|
RESOLVEFUNC(SSL_CTX_set_cipher_list)
|
|
+ RESOLVEFUNC(SSL_CTX_set_ciphersuites)
|
|
RESOLVEFUNC(SSL_CTX_set_default_verify_paths)
|
|
RESOLVEFUNC(SSL_CTX_set_verify)
|
|
RESOLVEFUNC(SSL_CTX_set_verify_depth)
|
|
--- a/src/network/ssl/qsslsocket_openssl_symbols_p.h
|
|
+++ b/src/network/ssl/qsslsocket_openssl_symbols_p.h
|
|
@@ -302,6 +302,7 @@
|
|
SSL_CTX *q_SSL_CTX_new(SSL_METHOD *a);
|
|
#endif
|
|
int q_SSL_CTX_set_cipher_list(SSL_CTX *a, const char *b);
|
|
+int q_SSL_CTX_set_ciphersuites(SSL_CTX *a, const char *b);
|
|
int q_SSL_CTX_set_default_verify_paths(SSL_CTX *a);
|
|
void q_SSL_CTX_set_verify(SSL_CTX *a, int b, int (*c)(int, X509_STORE_CTX *));
|
|
void q_SSL_CTX_set_verify_depth(SSL_CTX *a, int b);
|