diff options
author | Timur Pocheptsov <timur.pocheptsov@qt.io> | 2020-04-13 20:31:34 +0200 |
---|---|---|
committer | Timur Pocheptsov <timur.pocheptsov@qt.io> | 2020-04-15 08:14:18 +0200 |
commit | 8907635da59c2ae0e8db01f27b24a841b830e655 (patch) | |
tree | 8a20d1fb9d09e9195528e93a05f0d818eb1a81b3 /src/network/ssl/qsslsocket_p.h | |
parent | 18fa1ed74745931c15d525703ac05bbf3f2c9c5b (diff) |
OpenSSL: handle SSL_shutdown's errors properly
Do not call SSL_shutdown on a session that is in handshake state (SSL_in_init(s)
returns 1). Also, do not call SSL_shutdown if a session encountered a fatal
error (SSL_ERROR_SYSCALL or SSL_ERROR_SSL was found before). If SSL_shutdown
was unsuccessful (returned code != 1), we have to clear the error(s) it queued.
Fixes: QTBUG-83450
Change-Id: I6326119f4e79605429263045ac20605c30dccca3
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'src/network/ssl/qsslsocket_p.h')
-rw-r--r-- | src/network/ssl/qsslsocket_p.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/network/ssl/qsslsocket_p.h b/src/network/ssl/qsslsocket_p.h index 1abd18bb32..87179c8083 100644 --- a/src/network/ssl/qsslsocket_p.h +++ b/src/network/ssl/qsslsocket_p.h @@ -207,6 +207,7 @@ protected: bool verifyErrorsHaveBeenIgnored(); bool paused; bool flushTriggered; + bool systemOrSslErrorDetected = false; QVector<QOcspResponse> ocspResponses; }; |