ed58d6e4ce
During the initial handshake or subsequent renegotiation, the protocol might need to read in order to write (or conversely to write in order to read). It might be blocked from doing so by the state of the underlying socket (i.e. there is no data to read, or there is no space to write). The library indicates this condition by returning one of the errors `MBEDTLS_ERR_SSL_WANT_READ` or `MBEDTLS_ERR_SSL_WANT_WRITE`. When that happens, we need to enforce that the next poll operation only considers the direction that the library indicated. In addition, mbedtls does its own read buffering that we need to take into account while polling, and we need to save the last error between read()/write() and ioctl().
8 lines
138 B
Plaintext
8 lines
138 B
Plaintext
OSError: client
|
|
<_SSLSocket
|
|
TestSocket.setblocking(False)
|
|
TestSocket.setblocking(True)
|
|
TestSocket.ioctl 4 0
|
|
OSError: read
|
|
OSError: write
|