diff options
author | Mårten Nordheim <marten.nordheim@qt.io> | 2021-06-24 13:59:09 +0200 |
---|---|---|
committer | Mårten Nordheim <marten.nordheim@qt.io> | 2021-06-25 01:30:46 +0200 |
commit | 664a6621fb54aaa5824ff4f3f09cbc21ecefcd3b (patch) | |
tree | ea1fcd9ba4696000894172f42a77351d8d490031 /src/plugins | |
parent | 1587d75b5e960854be17a017e8fc1cde03ed8058 (diff) |
QSslSocket: Set isEncrypted to false on disconnect
Since we're no longer connected, much less encrypted.
Was done in schannel backend, but not in ST or OpenSSL
Pick-to: 6.2
Change-Id: Ia49387be0088f899a0c89091f7e468dba1c0eee6
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/tls/openssl/qtls_openssl.cpp | 1 | ||||
-rw-r--r-- | src/plugins/tls/securetransport/qtls_st.cpp | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/src/plugins/tls/openssl/qtls_openssl.cpp b/src/plugins/tls/openssl/qtls_openssl.cpp index 9ed9ab7538..339973f9e9 100644 --- a/src/plugins/tls/openssl/qtls_openssl.cpp +++ b/src/plugins/tls/openssl/qtls_openssl.cpp @@ -1127,6 +1127,7 @@ void TlsCryptographOpenSSL::disconnected() Q_ASSERT(d); auto *plainSocket = d->plainTcpSocket(); Q_ASSERT(plainSocket); + d->setEncrypted(false); if (plainSocket->bytesAvailable() <= 0) { destroySslContext(); diff --git a/src/plugins/tls/securetransport/qtls_st.cpp b/src/plugins/tls/securetransport/qtls_st.cpp index 306f184f25..6741fbc5b2 100644 --- a/src/plugins/tls/securetransport/qtls_st.cpp +++ b/src/plugins/tls/securetransport/qtls_st.cpp @@ -398,6 +398,7 @@ void TlsCryptographSecureTransport::continueHandshake() void TlsCryptographSecureTransport::disconnected() { Q_ASSERT(d && d->plainTcpSocket()); + d->setEncrypted(false); if (d->plainTcpSocket()->bytesAvailable() <= 0) destroySslContext(); // If there is still buffered data in the plain socket, don't destroy the ssl context yet. |