QTBUG-71967, QTBUG-70956 and QTBUG-71446

this includes the following upstream commits:
8049e9b3b9
93a803a6de
6114230996

Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
This commit is contained in:
Ivailo Monev 2019-06-24 02:42:14 +00:00
parent 6ec1fd70a8
commit 9289a463a8
2 changed files with 9 additions and 5 deletions

2
README
View file

@ -64,7 +64,7 @@ QTBUG-28321, QTBUG-21993, QTBUG-26590, QTBUG-2124, QTBUG-20482, QTBUG-41361,
QTBUG-40153, QTBUG-35479, QTBUG-1628, QTBUG-42989, QTBUG-34861, QTBUG-46767,
QTBUG-25114, QTBUG-24672, QTBUG-23524 (WIP), QTBUG-56088, QTBUG-42189,
QTBUG-39285, QTBUG-18173, QTBUG-28968, QTBUG-34336, QTBUG-40974, QTBUG-44286,
QTBUG-12564, QTBUG-20028
QTBUG-12564, QTBUG-20028, QTBUG-71967, QTBUG-70956, QTBUG-71446
Unless you use QMake and QDoc porting to Katie or even supporting it along with
Qt4 in the same codebase is trivial and requires only minor changes because

View file

@ -462,6 +462,10 @@ init_context:
void QSslSocketBackendPrivate::destroySslContext()
{
if (ssl) {
// We do not send a shutdown alert here. Just mark the session as
// resumable for qhttpnetworkconnection's "optimization", otherwise
// OpenSSL won't start a session resumption.
SSL_shutdown(ssl);
SSL_free(ssl);
ssl = 0;
}
@ -505,8 +509,6 @@ bool QSslSocketPrivate::ensureLibraryLoaded()
QMutexLocker locker(openssl_locks()->initLock());
#endif
if (!s_libraryLoaded) {
s_libraryLoaded = true;
// Initialize OpenSSL.
#if OPENSSL_VERSION_NUMBER < 0x10100000L
CRYPTO_set_id_callback(id_function);
@ -539,6 +541,8 @@ bool QSslSocketPrivate::ensureLibraryLoaded()
} while (!RAND_status() && --attempts);
if (!attempts)
return false;
s_libraryLoaded = true;
}
}
return true;
@ -926,7 +930,7 @@ bool QSslSocketBackendPrivate::startHandshake()
// Check if the connection has been established. Get all errors from the
// verification stage.
_q_sslErrorList()->mutex.lock();
QMutexLocker locker(&_q_sslErrorList()->mutex);
_q_sslErrorList()->errors.clear();
int result = (mode == QSslSocket::SslClientMode) ? SSL_connect(ssl) : SSL_accept(ssl);
@ -943,7 +947,7 @@ bool QSslSocketBackendPrivate::startHandshake()
}
errorList << lastErrors;
_q_sslErrorList()->mutex.unlock();
locker.unlock();
// Connection aborted during handshake phase.
if (q->state() != QAbstractSocket::ConnectedState)