Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
4.8.0, 5.0.0
-
None
Description
Calling QSslSocket::read() in unencrypted mode will read 16k of data from the plain socket into the QIODevice buffer in the SSL socket.
If the plain socket already contains the handshake data (because the remote side sent some plaintext, and then started handshake) then this will be "lost" and the socket won't enter encrypted mode.
Needs some testing to see if this prevents implementation of STARTTLS using QSslSocket or not.
(STARTTLS has a plaintext handshake, so it might be avoidable)
Attachments
Issue Links
- relates to
-
QTBUG-18498 QSslSocket: calling peek() on the socket causes the entire socket buffer to be copied to a new buffer, meaning that peek *does* have side-effects in certain use cases
-
- Closed
-