1. QSslSocketBackendPrivate::transmit can invalidate SSL context
causing subsequent SSLWrite or SSLRead calls to fail; these report
errSecParam (as null context is an invalid parameter) spuriously,
when we should rather report the cause of invalidation. The OpenSSL
backend can trigger this when it aborts connection during an SSL
handshake, on an sslErrors signal. As transmit() emits readReady(),
a directly connected slot can trigger the same problem if it aborts or
closes.
2. If during peer verification (and in checkSslErrors) we disconnect
on sslErrors signal, peer verification must be considered failed and
should not continue handshake/set connectionEncrypted.
Task-number: QTBUG-52975
Task-number: QTBUG-53906
Change-Id: Iacd3b489a4156e25ef3460ace40d21f34a946bed
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>