Home
last modified time | relevance | path

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

1234567

/freebsd/crypto/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
43 connection SSL object with a network BIO which cannot support blocking mode. To
[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,
/freebsd/crypto/openssl/doc/designs/quic-design/
H A Dquic-io-arch.md18 also have the ability to operate in “blocking” mode.
30 - We want to support both blocking and non-blocking semantics
33 - In the case of non-blocking applications, it must be possible
59 Note that the discussion in this document primarily concerns usage of blocking
60 vs. non-blocking I/O in the interface between the QUIC implementation and an
63 libssl, which will support both blocking and non-blocking I/O.
68 The above constraints make it effectively a requirement that non-blocking I/O be
70 first consider how QUIC might be implemented using blocking network I/O
73 To function correctly and provide blocking semantics at the application level,
86 configured in blocking mode or not.
[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)
215 **Blocking Considerations:** Blocks until handshake completed if in blocking
225 error occurs if in blocking mode (including the peek functions).
250 (i.e., copied) all data provided, or an error occurs, if in blocking mode. In
374 - If the BIO is non-pollable (see below), application-level blocking mode will
466 Turns blocking mode on or off. This is necessary because up until now libssl has
467 operated in blocking or non-blocking mode automatically as an emergent
468 consequence of whether the underlying network socket is blocking. For QUIC, this
469 is no longer viable, thus blocking semantics at the application level must be
[all …]
/freebsd/contrib/llvm-project/compiler-rt/lib/profile/
H A DWindowsMMap.c127 static int lock(HANDLE handle, DWORD lockType, BOOL blocking) {
129 if (!blocking) in lock()
139 // In non-blocking mode, return an error if the file is locked. in lock()
140 if (!blocking && dw == ERROR_LOCK_VIOLATION) in lock()
162 BOOL blocking = (operation & LOCK_NB) == 0; in flock()
167 return lock(handle, LOCKFILE_EXCLUSIVE_LOCK, blocking); in flock()
170 return lock(handle, 0, blocking); in flock()
128 lock(HANDLE handle,DWORD lockType,BOOL blocking) lock() argument
163 BOOL blocking = (operation & LOCK_NB) == 0; flock() local
/freebsd/crypto/openssl/doc/designs/ddd/
H A DREPORT.md33 ddd-01-conn-blocking
63 This demo exists to demonstrate simple non-blocking usage. As with
64 ddd-01-conn-blocking, the name resolution process is managed by `BIO_s_connect`.
73 - Change of method (as for ddd-01-conn-blocking);
98 - Change of method name (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
175 This demo is similar to ddd-01-conn-blocking but uses a file descriptor passed
180 - Change of method (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 \
/freebsd/crypto/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,
143 OpenSSL 3.2 and 3.3 contained a buggy implementation of blocking QUIC I/O calls
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),
209 Enable reliable support for blocking I/O calls, allocating whatever OS resources
218 Enables legacy blocking compatibility mode. See L</Legacy Blocking Support
[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
175 whether the underlying network socket was configured in a blocking fashion. This
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
394 desired. Implementing these methods is required if blocking semantics at the SSL
402 in blocking mode or not. Traditionally, an SSL object has automatically operated
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
[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
/freebsd/crypto/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
/freebsd/contrib/llvm-project/libcxx/include/
H A Dshared_mutex31 void lock(); // blocking
36 void lock_shared(); // blocking
54 void lock(); // blocking
63 void lock_shared(); // blocking
82 explicit shared_lock(mutex_type& m); // blocking
100 void lock(); // blocking
169 void lock(); // blocking
174 void lock_shared(); // blocking
/freebsd/sys/contrib/vchiq/interface/vchiq_arm/
H A Dvchiq_ioctl.h80 int blocking; member
156 int blocking; member
/freebsd/crypto/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…
77 of its own polling if desired. This means no libssl code does any blocking I/O
82 - **Support internal polling.** Support a blocking poll(2)-like call provided
150 be in blocking or non-blocking mode. It wants to block until any of these have
163 An application has two QCSOs open each with one QSSO, all in non-blocking mode.
196 - An application must be able to use our polling interface without blocking and
776 * SSL_poll in a blocking fashion, only the occurrence of one or more events
811 * This function can be used in a non-blocking mode where it will provide
823 * This may be used only when a zero timeout is specified (non-blocking
1021 * (non-blocking mode); the timeout argument is ignored.
[all …]

1234567