Home
last modified time | relevance | path

Searched refs:blocking (Results 1 – 25 of 66) sorted by relevance

123

/openssl/doc/man3/
H A DSSL_set_blocking_mode.pod5 SSL_set_blocking_mode, SSL_get_blocking_mode - configure blocking mode for a
12 int SSL_set_blocking_mode(SSL *s, int blocking);
17 SSL_set_blocking_mode() can be used to enable or disable blocking mode on a QUIC
18 connection SSL object. By default, blocking is enabled, unless the SSL object is
20 descriptor (see L<BIO_get_rpoll_descriptor(3)>), as blocking mode cannot be
23 To enable blocking mode, call SSL_set_blocking_mode() with I<blocking> set to 1;
24 to disable it, call SSL_set_blocking_mode() with I<blocking> set to 0.
26 To retrieve the current blocking mode, call SSL_get_blocking_mode().
34 of SSL object, such as those for TLS, automatically function in blocking or
44 re-enable blocking mode in this case, an application must set a network BIO
[all …]
H A DBIO_should_retry.pod77 If the underlying I/O structure is in a blocking mode almost all current
84 retry even if the underlying I/O structure is blocking, if a handshake
89 While an application may retry a failed non blocking call immediately
98 conditions of several non blocking BIOs in a single select() call
106 is to use non blocking I/O and use a timeout on the select() (or
111 The OpenSSL ASN1 functions cannot gracefully deal with non blocking I/O:
H A DBIO_s_connect.pod92 BIO_set_nbio() sets the non blocking I/O flag to B<n>. If B<n> is
93 zero then blocking I/O is set. If B<n> is 1 then non blocking I/O
96 non blocking I/O is set during the connect process.
105 The call BIO_should_retry() should be used for non blocking connect BIOs
124 If blocking I/O is set then a non positive return value from any
143 If non blocking I/O is set then retries will be requested as appropriate.
H A DSSL_new_stream.pod47 is configured in blocking mode) until a new stream can be created, or otherwise
50 This function operates in blocking mode if the QUIC connection SSL object is
51 configured in blocking mode (see L<SSL_set_blocking_mode(3)>). It may also be
52 used in nonblocking mode on a connection configured in blocking mode by passing
H A DSSL_accept_stream.pod25 nonblocking mode) or waits for an incoming stream (in blocking mode). This
26 function may still return NULL in blocking mode, for example if the underlying
33 blocking mode (see L<SSL_set_blocking_mode(3)>), but this may be bypassed by
H A DSSL_set_bio.pod98 Where a new BIO is set on a QUIC connection SSL object, blocking mode will be
99 disabled on that SSL object if the BIO cannot support blocking mode. If another
100 BIO is subsequently set on the SSL object which can support blocking mode,
101 blocking mode will not be automatically re-enabled. For more information, see
H A DSSL_handle_events.pod53 Ordinarily, when an application uses an SSL object in blocking mode, it does not
61 Calling SSL_handle_events() on a QUIC connection SSL object being used in blocking mode
64 one call to the SSL object is blocking, no such call is needed. However,
H A DBIO_read.pod89 One technique sometimes used with blocking sockets is to use a system call
96 should be combined with non blocking I/O so successive reads will request
97 a retry instead of blocking.
H A DSSL_CTX_set_domain_flags.pod61 Enable reliable support for blocking I/O calls, allocating whatever OS resources
67 Enables legacy blocking compatibility mode. See
/openssl/doc/designs/quic-design/
H A Dquic-io-arch.md30 - We want to support both blocking and non-blocking semantics
63 libssl, which will support both blocking and non-blocking I/O.
86 configured in blocking mode or not.
170 by blocking I/O.
208 ### Use of non-blocking I/O
222 either blocking or non-blocking semantics to the application, based on what the
261 build blocking semantics out of a non-blocking QUIC instance; this is not
332 non-blocking I/O internally. Applications can use blocking or non-blocking I/O
492 Traditionally an SSL object has operated either in blocking mode or non-blocking
504 non-blocking mode:
[all …]
H A Dquic-concurrency.md10 with. Moreover, blocking I/O at an application level may not be supported.
18 and polling solution which can support blocking API calls in a Berkeley
26 non-blocking basis. Determining *when* to do anything is largely the
68 This model may be used either in a variant which does not support blocking
69 (NB-CCM) or which does support blocking (B-CCM). The blocking variant must
70 spin up additional OS resources to correctly support blocking semantics.
111 - **Blocking Supported:** Whether blocking calls to e.g. `SSL_read` can be
119 another thread which is currently blocking in an OS socket polling call such
121 the table above are required only if blocking support is desired.
H A Dquic-api.md35 …`SSL_set_blocking_mode`, `SSL_get_blocking_mode`](#-ssl-set-blocking-mode----ssl-get-blocking-mode…
48 - [Notes on Blocking](#notes-on-blocking)
225 error occurs if in blocking mode (including the peek functions).
467 operated in blocking or non-blocking mode automatically as an emergent
595 In blocking mode, the function will return once the closure process is
615 by initiating a rapid or non-blocking shutdown and continuing to call
620 effect of this flag is to partially disable blocking behaviour in blocking mode,
897 connection SSL object can be in blocking mode to allow for blocking
899 non-blocking mode concurrently.
1434 **Q. Does `ENABLE_PARTIAL_WRITE` interact with blocking mode?**
[all …]
/openssl/doc/designs/ddd/
H A DREPORT.md33 ddd-01-conn-blocking
73 - Change of method (as for ddd-01-conn-blocking);
100 - Use of ALPN (as for ddd-01-conn-blocking);
164 - Use of ALPN (as for ddd-01-conn-blocking);
172 ddd-03-fd-blocking
180 - Change of method (as for ddd-01-conn-blocking);
191 - Use of ALPN (as for ddd-01-conn-blocking).
201 - Change of method (as for ddd-01-conn-blocking);
223 - Use of ALPN (as for ddd-01-conn-blocking);
265 - Use of ALPN (as for ddd-01-conn-blocking);
[all …]
H A DREADME.md88 * Blk: Whether the application uses blocking or non-blocking I/O.
110 | [ddd-01-conn-blocking](ddd-01-conn-blocking.c) | S-BIOc | A `BIO_s_connect`-based blocking exampl…
112 | [ddd-03-fd-blocking](ddd-03-fd-blocking.c) | S-AOSF | A `SSL_set_fd`-based blocking example demon…
113 | [ddd-04-fd-nonblocking](ddd-04-fd-nonblocking.c) | A-AOSF | A `SSL_set_fd`-based non-blocking exa…
114 | [ddd-05-mem-nonblocking](ddd-05-mem-nonblocking.c) | A-BIOm | A non-blocking example based on use…
115 | [ddd-06-mem-uv](ddd-06-mem-uv.c) | A-BIOm | A non-blocking example based on use of a memory buffe…
H A DMakefile12 TESTS_BASE = ddd-01-conn-blocking \
15 ddd-03-fd-blocking \
/openssl/doc/man7/
H A Dopenssl-quic-concurrency.pod127 All of the supported concurrency models are capable of supporting blocking I/O
130 serviced. This includes the use of L<SSL_poll(3)> in a blocking fashion.
132 Supporting blocking API calls reliably with multi-threaded usage requires the
137 the chosen concurrency model, blocking API calls may not be available and calls
138 to L<SSL_set_blocking_mode(3)> attempting to enable blocking mode may fail,
169 concurrency model and b) explicitly opt in or out of blocking I/O support
170 (depending on whether the application wishes to make blocking I/O calls),
218 Enables legacy blocking compatibility mode. See L</Legacy Blocking Support
283 allow one thread to wake other threads which may be blocking in calls to OS
304 A QUIC SSL object has blocking mode enabled by default where B<all> of the
[all …]
H A Dossl-guide-quic-introduction.pod36 "head-of-line blocking"). It also enables an application to open additional
94 Fortunately a blocking application that does not leave the QUIC connection idle,
156 applications is the way that blocking is implemented. In TLS if your application
157 expects blocking behaviour then you configure the underlying socket for
158 blocking. Conversely if your application wants nonblocking behaviour then the
163 in blocking mode. So, from an application's perspective, calls to functions such
165 block. OpenSSL itself provides that blocking capability for QUIC instead of the
172 concepts in order to write a simple blocking QUIC client.
175 concepts in order to write a simple blocking QUIC server.
H A Dossl-guide-introduction.pod78 =item L<ossl-guide-tls-client-block(7)>: Writing a simple blocking TLS client
82 =item L<ossl-guide-tls-server-block(7)>: Writing a simple blocking TLS server
86 =item L<ossl-guide-quic-client-block(7)>: Writing a simple blocking QUIC client
88 =item L<ossl-guide-quic-server-block(7)>: Writing a simple blocking QUIC server
H A Dossl-guide-tls-client-non-block.pod19 blocking TLS client. On this page we will amend that demo code so that it
27 As we saw in the previous example a blocking socket is one which waits (blocks)
50 the socket into nonblocking mode. A socket will be default be blocking. The
217 this. The steps do this are the same as for a blocking client and are explained
223 As in the demo for a blocking TLS client we use the L<SSL_connect(3)> function
245 As with the blocking TLS client demo we use the L<SSL_write_ex(3)> function to
256 blocking tutorial (L<ossl-guide-tls-client-block(7)>) we write the request
325 As in the TLS blocking example we must shutdown the connection when we are
358 As with the blocking TLS client example, once our connection is finished with we
360 blocking example, so we won't repeat it here.
[all …]
H A Dossl-guide-quic-client-non-block.pod19 blocking QUIC client. On this page we will amend that demo code so that it
28 nonblocking socket. However, despite this, the B<SSL> object still has blocking
29 behaviour. When the B<SSL> object has blocking behaviour then this means that
271 this. Most of the steps to do this are the same as for a blocking client and are
276 (the default is blocking mode). To do that we use the
285 printf("Failed to turn off blocking mode\n");
311 As in the demo for a blocking QUIC client we use the L<SSL_connect(3)> function
333 As with the blocking QUIC client demo we use the L<SSL_write_ex(3)> function to
420 As in the QUIC blocking example we must shutdown the connection when we are
448 As with the blocking QUIC client example, once our connection is finished with
[all …]
H A Dopenssl-quic.pod84 complete (either blocking, or failing appropriately if nonblocking mode is
174 and L<SSL_write(3)> operated in a blocking fashion was directly correlated with
177 application-level blocking mode using L<SSL_set_blocking_mode(3)>. See
183 application can still enjoy blocking semantics for calls to application-level
186 in nonblocking mode. For application-level blocking functionality, see
403 in blocking or nonblocking mode based on whether the underlying network BIO
404 operates in blocking or nonblocking mode. QUIC requires the use of a
405 nonblocking network BIO, therefore the blocking mode at the application level
409 it must add a call to L<SSL_set_blocking_mode(3)> to disable blocking mode.
416 regularly. If the SSL object is used in blocking mode, an ongoing blocking call
[all …]
H A Dossl-guide-quic-multi-stream.pod92 will block until one is available if the connection object is in blocking mode
116 In blocking mode this will either be a fatal error (e.g. B<SSL_ERROR_SYSCALL>
166 We will build on the example code for the simple blocking QUIC client that is
169 blocking QUIC client and the multi-stream QUIC client. Although the example code
170 uses blocking B<SSL> objects, you can equally use nonblocking B<SSL> objects.
240 writing to B<stream2> second. Remember that our client is blocking so these
284 In a blocking application like this one calls to L<SSL_read_ex(3)> will either
291 function to find out more details. Since this is a blocking application this
347 blocking application this will wait indefinitely until the new stream has
358 * We're using blocking mode so this will block until a stream becomes
/openssl/demos/
H A DREADME.txt36 quic-client-block.c: A simple blocking QUIC client
37 quic-client-non-block.c: A simple non-blocking QUIC client
39 tls-client-block.c: A simple blocking SSL/TLS client
40 tls-client-non-block.c: A simple non-blocking SSL/TLS client
/openssl/demos/quic/server/
H A DREADME.md5 connection at a time. It demonstrates blocking use of the QUIC server API.
/openssl/doc/designs/quic-design/server/
H A Dquic-polling.md9 …imple Blocking or Non-Blocking Application](#use-case-a--simple-blocking-or-non-blocking-applicati…
150 be in blocking or non-blocking mode. It wants to block until any of these have
1021 * (non-blocking mode); the timeout argument is ignored.
1045 * cause a blocking call to SSL_POLL_GROUP_change_poll to return.)
1187 * immediately start blocking for events.
1265 * Find out what is ready without blocking.
1659 - Application uses it in blocking mode and sets network BIOs
1675 - poll those poll descriptors. If not, blocking cannot be supported.
1832 blocking when making blocking calls. It is never used currently if no QUIC SSL
2076 * If a function is called in non-blocking mode and it cannot execute
[all …]

Completed in 50 milliseconds

123