aboutsummaryrefslogtreecommitdiff
path: root/src/tool_operate.h
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2019-12-20 19:20:18 -0800
committerJay Satiro <raysatiro@yahoo.com>2019-12-31 02:43:47 -0500
commit9024b01387ea9601badfc442642b66b269d33a8d (patch)
tree59f19ba9592fafc0d64cb800638f5ea805e0d527 /src/tool_operate.h
parent9434864770406cc9663437063ecab91820fdd4fe (diff)
bearssl: Improve I/O handling
Factor out common I/O loop as bearssl_run_until, which reads/writes TLS records until the desired engine state is reached. This is now used for the handshake, read, write, and close. Match OpenSSL SSL_write behavior, and don't return the number of bytes written until the corresponding records have been completely flushed across the socket. This involves keeping track of the length of data buffered into the TLS engine, and assumes that when CURLE_AGAIN is returned, the write function will be called again with the same data and length arguments. This is the same requirement of SSL_write. Handle TLS close notify as EOF when reading by returning 0. Closes https://github.com/curl/curl/pull/4748
Diffstat (limited to 'src/tool_operate.h')
0 files changed, 0 insertions, 0 deletions