CVSROOT:        /cvs
Module name:    src
Changes by:     js...@cvs.openbsd.org   2015/09/10 04:14:20

Modified files:
        lib/libtls     : tls.c tls.h tls_client.c tls_internal.h 
                         tls_server.c 

Log message:
Split tls_handshake() out from tls_accept/tls_connect. By doing this the
tls_accept/tls_connect functions can be guaranteed to succeed or fail and
will no longer return TLS_READ_AGAIN/TLS_WRITE_AGAIN. This also resolves
the semantics of tls_accept_*.

The tls_handshake() function now does I/O and can return
TLS_READ_AGAIN/TLS_WRITE_AGAIN. Calls to tls_read() and tls_write() will
trigger the handshake if it has not already completed, meaning that in many
cases existing code will continue to work.

Discussed over many coffees at l2k15.

ok beck@ bluhm@

Reply via email to