diff options
author | jsing <> | 2022-02-06 16:08:14 +0000 |
---|---|---|
committer | jsing <> | 2022-02-06 16:08:14 +0000 |
commit | fde80c97b7537c9c34662547ba47a934cb8bab59 (patch) | |
tree | 46170269eda20612e21905576d09ac081e9a0e41 /src/regress/lib/libssl/unit/ssl_methods.c | |
parent | 99b7f379918f04971fa967c83af3373791c4803d (diff) | |
download | openbsd-fde80c97b7537c9c34662547ba47a934cb8bab59.tar.gz openbsd-fde80c97b7537c9c34662547ba47a934cb8bab59.tar.bz2 openbsd-fde80c97b7537c9c34662547ba47a934cb8bab59.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/regress/lib/libssl/unit/ssl_methods.c')
0 files changed, 0 insertions, 0 deletions