summaryrefslogtreecommitdiff
path: root/src/lib/libssl/ssl_lib.c
diff options
context:
space:
mode:
authorjsing <>2022-02-06 16:08:14 +0000
committerjsing <>2022-02-06 16:08:14 +0000
commita57b110b583fdbdc7a174b8f593acae516c3caba (patch)
tree46170269eda20612e21905576d09ac081e9a0e41 /src/lib/libssl/ssl_lib.c
parent5b097a3206326361d7bac2a0119d54588b578f33 (diff)
downloadopenbsd-a57b110b583fdbdc7a174b8f593acae516c3caba.tar.gz
openbsd-a57b110b583fdbdc7a174b8f593acae516c3caba.tar.bz2
openbsd-a57b110b583fdbdc7a174b8f593acae516c3caba.zip
Handle zero byte reads/writes that trigger handshakes in the TLSv1.3 stack.
With the legaacy stack, it is possible to do a zero byte SSL_read() or SSL_write() that triggers the handshake, but then returns zero without SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE being flagged. This currently works in the TLSv1.3 stack by returning TLS_IO_WANT_POLLIN or TLS_IO_WANT_POLLOUT, which is then hidden by SSL_get_error(). However, due to upcoming changes to SSL_get_error() this will no longer be the case. In order to maintain the existing legacy behaviour, explicitly handle zero byte reads and writes in the TLSv1.3 stack, following completion of a handshake. ok inoguchi@ tb@
Diffstat (limited to 'src/lib/libssl/ssl_lib.c')
0 files changed, 0 insertions, 0 deletions