Lines Matching +full:write +full:- +full:data
8 BIO_ctrl_get_read_request, BIO_ctrl_reset_read_request - BIO pair BIO
34 BIOs where data written to either half of the pair is buffered and can be read from
36 since no locking is done on the internal data structures.
39 one half of a BIO pair and have all the data processed by the chain under application
46 Calls to BIO_read_ex() will read data from the buffer or request a retry if no
47 data is available.
49 Calls to BIO_write_ex() will place data in the buffer or request a retry if the
53 determine the amount of pending data in the read or write buffer.
55 BIO_reset() clears any data in the write buffer.
64 half of the pair will return any pending data or EOF when all pending data has
67 BIO_set_write_buf_size() sets the write buffer size of BIO B<b> to B<size>.
71 BIO_get_write_buf_size() returns the size of the write buffer.
75 with write buffer sizes B<writebuf1> and B<writebuf2>. If either size is
81 length of data that can be currently written to the BIO. Writes larger than this
87 amount of data requested, or the buffer size if it is less, if the
89 empty buffer. This can be used to determine how much data should be
91 in TLS/SSL applications where the amount of data read is usually
93 this call will return zero. It also will return zero once new data
107 flush any data in the write buffer. This can be done by calling BIO_pending()
108 on the other half of the pair and, if any data is pending, reading it and sending
114 TLS/SSL handshake for example. BIO_write_ex() will succeed and place data in the
115 write buffer. BIO_read_ex() will initially fail and BIO_should_read() will be
116 true. If the application then waits for data to be available on the underlying
117 transport before flushing the write buffer it will never succeed because the
120 BIO_eof() is true if no data is in the peer BIO and the peer BIO has been
140 without having to go through the SSL-interface.
150 application | TLS-engine
152 +----------> SSL_operations()
155 | BIO-pair (internal_bio)
156 | BIO-pair (network_bio)
159 +-----------< BIO_operations()
169 As the BIO pair will only buffer the data and never directly access the
170 connection, it behaves nonblocking and will return as soon as the write
172 flush the write buffer and/or fill the read buffer.
174 Use the BIO_ctrl_pending(), to find out whether data is buffered in the BIO
181 As the data is buffered, SSL_operation() may return with an ERROR_SSL_WANT_READ
182 condition, but there is still data in the write buffer. An application must
184 write buffer is always flushed first. Otherwise a deadlock may occur as
185 the peer might be waiting for the data before being able to continue.
194 Copyright 2000-2020 The OpenSSL Project Authors. All Rights Reserved.