| /src/crypto/openssl/doc/man3/ |
| H A D | SSL_set_blocking_mode.pod | 5 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 D | BIO_should_retry.pod | 77 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 D | BIO_s_connect.pod | 92 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 D | SSL_new_stream.pod | 47 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 D | SSL_accept_stream.pod | 25 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 D | SSL_set_bio.pod | 98 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 D | SSL_handle_events.pod | 53 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,
|
| /src/crypto/openssl/doc/designs/quic-design/ |
| H A D | quic-io-arch.md | 18 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 D | quic-concurrency.md | 10 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.
|
| /src/contrib/llvm-project/compiler-rt/lib/profile/ |
| H A D | WindowsMMap.c | 127 static int lock(HANDLE handle, DWORD lockType, BOOL blocking) { in lock() argument 129 if (!blocking) in lock() 140 if (!blocking && dw == ERROR_LOCK_VIOLATION) in lock() 162 BOOL blocking = (operation & LOCK_NB) == 0; in flock() local 167 return lock(handle, LOCKFILE_EXCLUSIVE_LOCK, blocking); in flock() 170 return lock(handle, 0, blocking); in flock()
|
| /src/crypto/openssl/doc/designs/ddd/ |
| H A D | REPORT.md | 33 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 D | README.md | 88 * 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 D | Makefile | 12 TESTS_BASE = ddd-01-conn-blocking \ 15 ddd-03-fd-blocking \
|
| /src/crypto/openssl/doc/man7/ |
| H A D | openssl-quic-concurrency.pod | 127 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 D | ossl-guide-quic-introduction.pod | 36 "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 D | ossl-guide-introduction.pod | 78 =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 D | ossl-guide-tls-client-non-block.pod | 19 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 D | ossl-guide-quic-client-non-block.pod | 19 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 D | openssl-quic.pod | 84 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 D | ossl-guide-quic-multi-stream.pod | 92 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
|
| /src/crypto/openssl/demos/ |
| H A D | README.txt | 36 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
|
| /src/contrib/llvm-project/libcxx/include/ |
| H A D | shared_mutex | 31 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
|
| /src/sys/contrib/vchiq/interface/vchiq_arm/ |
| H A D | vchiq_ioctl.h | 80 int blocking; member 156 int blocking; member
|
| /src/share/dtrace/ |
| H A D | Makefile | 9 SCRIPTS= blocking \
|
| /src/crypto/openssl/doc/designs/quic-design/server/ |
| H A D | quic-polling.md | 9 …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 …]
|