Home
last modified time | relevance | path

Searched full:blocking (Results 1 – 25 of 1041) sorted by relevance

12345678910>>...42

/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.
65 Blocking vs. Non-Blocking Modes in Underlying Network BIOs
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,
[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
48 Blocking API calls are not supported under this model. This model is intended
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.
96 Blocking API calls are supported under this model.
100 | Model | Sophistication | Concurrency | Blocking Supported | OS Resources …
111 - **Blocking Supported:** Whether blocking calls to e.g. `SSL_read` can be
[all …]
/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().
28 Blocking mode means that calls such as SSL_read() and SSL_write() will block
34 of SSL object, such as those for TLS, automatically function in blocking or
[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:
/freebsd/secure/lib/libcrypto/man/man3/
H A DSSL_set_blocking_mode.367 SSL_set_blocking_mode, SSL_get_blocking_mode \- configure blocking mode for a
74 \& int SSL_set_blocking_mode(SSL *s, int blocking);
79 \&\fBSSL_set_blocking_mode()\fR can be used to enable or disable blocking mode on a QUIC
80 connection SSL object. By default, blocking is enabled, unless the SSL object is
82 descriptor (see \fBBIO_get_rpoll_descriptor\fR\|(3)), as blocking mode cannot be
85 To enable blocking mode, call \fBSSL_set_blocking_mode()\fR with \fIblocking\fR set to 1;
86 to disable it, call \fBSSL_set_blocking_mode()\fR with \fIblocking\fR set to 0.
88 To retrieve the current blocking mode, call \fBSSL_get_blocking_mode()\fR.
90 Blocking mode means that calls such as \fBSSL_read()\fR and \fBSSL_write()\fR will block
96 of SSL object, such as those for TLS, automatically function in blocking or
[all …]
/freebsd/secure/lib/libcrypto/man/man7/
H A Dopenssl-quic-concurrency.7155 .SH "BLOCKING I/O CAPABILITIES"
156 .IX Header "BLOCKING I/O CAPABILITIES"
157 All of the supported concurrency models are capable of supporting blocking I/O
160 serviced. This includes the use of \fBSSL_poll\fR\|(3) in a blocking fashion.
162 Supporting blocking API calls reliably with multi\-threaded usage requires the
167 the chosen concurrency model, blocking API calls may not be available and calls
168 to \fBSSL_set_blocking_mode\fR\|(3) attempting to enable blocking mode may fail,
170 .SS "Legacy Blocking Support Compatibility"
171 .IX Subsection "Legacy Blocking Support Compatibility"
172 OpenSSL 3.2 and 3.3 contained a buggy implementation of blocking QUIC I/O calls
[all …]
H A Dossl-guide-quic-introduction.793 "head\-of\-line blocking"). It also enables an application to open additional
142 Fortunately a blocking application that does not leave the QUIC connection idle,
191 .SH "SOCKETS AND BLOCKING"
192 .IX Header "SOCKETS AND BLOCKING"
201 applications is the way that blocking is implemented. In TLS if your application
202 expects blocking behaviour then you configure the underlying socket for
203 blocking. Conversely if your application wants nonblocking behaviour then the
208 in blocking mode. So, from an application\*(Aqs perspective, calls to functions such
210 block. OpenSSL itself provides that blocking capability for QUIC instead of the
216 concepts in order to write a simple blocking QUIC client.
[all …]
H A Dossl-guide-introduction.7135 .IP "\fBossl\-guide\-tls\-client\-block\fR\|(7): Writing a simple blocking TLS client" 4
136 .IX Item "ossl-guide-tls-client-block: Writing a simple blocking TLS client"
139 .IP "\fBossl\-guide\-tls\-server\-block\fR\|(7): Writing a simple blocking TLS server" 4
140 .IX Item "ossl-guide-tls-server-block: Writing a simple blocking TLS server"
143 .IP "\fBossl\-guide\-quic\-client\-block\fR\|(7): Writing a simple blocking QUIC client" 4
144 .IX Item "ossl-guide-quic-client-block: Writing a simple blocking QUIC client"
145 .IP "\fBossl\-guide\-quic\-server\-block\fR\|(7): Writing a simple blocking QUIC server" 4
146 .IX Item "ossl-guide-quic-server-block: Writing a simple blocking QUIC server"
/freebsd/sys/contrib/edk2/Include/Protocol/
H A DMpService.h266 both blocking and non-blocking requests. The non-blocking requests use EFI
278 If WaitEvent is NULL, execution is in blocking mode. The BSP waits until all
279 APs finish or TimeoutInMicroSecs expires. Otherwise, execution is in non-blocking
281 non-blocking mode is requested after the UEFI Event EFI_EVENT_GROUP_READY_TO_BOOT
299 In blocking execution mode, BSP waits until all APs finish or
302 In non-blocking execution mode, BSP is freed to return to the caller and then
304 sequence needs to occur in a non-blocking execution mode:
306 -# The caller that intends to use this MP Services Protocol in non-blocking
309 is not NULL, then StartupAllAPs() executes in non-blocking mode. It requests
341 blocking mode. BSP waits until all APs finish
[all …]
/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.
89 * S: Blocking (Synchronous)
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 DMakefile4 # ddd-01-conn-blocking-tls demo:
6 # LD_LIBRARY_PATH=../../.. ./ddd-01-conn-blocking-tls
12 TESTS_BASE = ddd-01-conn-blocking \
15 ddd-03-fd-blocking \
/freebsd/crypto/openssl/include/internal/
H A Dquic_reactor_wait_ctx.h23 * blocking call on another thread to be able to make forward progress, we need
24 * to know when a thread enters and exits a blocking call. The details of why
35 * This utility allows multiple blocking operations to be registered on a given
36 * thread. Moreover, it allows multiple blocking operations to be registered
39 * In short, this allows multiple 'concurrent' blocking calls to be ongoing on a
41 * multiple concurrent blocking calls on a single thread makes no sense, the
43 * it natural for us to implement it simply by registering a blocking call per
56 * QUIC_REACTOR_WAIT_CTX before commencing a blocking operation, and then calls
58 * in the imminent blocking operation. Later it must ensure it calls
64 * multithreaded blocking to work correctly.
[all …]
H A Dquic_reactor.h64 * If the SSL object is being used in blocking mode, SSL_read may need to block
69 * application desires blocking semantics, we handle this by adding a blocking
118 * Count of the current number of blocking waiters. Like everything else,
192 * Blocking I/O Adaptation Layer
195 * The blocking I/O adaptation layer implements blocking I/O on top of our
203 * The core mechanism of the Blocking I/O Adaption Layer is block_until_pred(),
211 * circuit the blocking process.
230 * functions it is implementing blocking semantics itself. There is no need to
248 * This is used by blocking code outside of the reactor itself to inform the
249 * reactor of when a thread begins or ends a blocking call. This is used by the
[all …]
/freebsd/crypto/openssl/doc/man7/
H A Dopenssl-quic-concurrency.pod125 =head1 BLOCKING I/O CAPABILITIES
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,
141 =head2 Legacy Blocking Support Compatibility
143 OpenSSL 3.2 and 3.3 contained a buggy implementation of blocking QUIC I/O calls
150 concurrency model or disable it. This is known as Legacy Blocking Compatibility
169 concurrency model and b) explicitly opt in or out of blocking I/O 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,
146 =head1 SOCKETS AND BLOCKING
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.
/freebsd/contrib/libpcap/
H A Dpcap_setnonblock.3pcap23 non-blocking mode on a capture device
42 puts a capture handle into ``non-blocking'' mode, or takes it out
43 of ``non-blocking'' mode, depending on whether the
52 ``non-blocking'' mode, an attempt to read from the capture descriptor
59 immediately rather than blocking waiting for packets to arrive.
78 a capture handle is not in ``non-blocking mode''; a call to
80 is required in order to put it into ``non-blocking'' mode.
90 returns the current ``non-blocking'' state of the capture descriptor on
/freebsd/contrib/llvm-project/llvm/include/llvm/Support/
H A DThreadPool.h61 /// Blocking wait for all the threads to complete and the queue to be empty.
62 /// It is an error to try to add new tasks while blocking on this call.
66 /// Blocking wait for only all the threads in the given group to complete.
77 /// used to wait for the task to finish and is *non-blocking* on destruction.
94 /// used to wait for the task to finish and is *non-blocking* on destruction.
110 /// used to wait for the task to finish and is *non-blocking* on destruction.
133 /// Blocking destructor: the pool will wait for all the threads to complete.
136 /// Blocking wait for all the threads to complete and the queue to be empty.
137 /// It is an error to try to add new tasks while blocking on this call.
141 /// Blocking wait for only all the threads in the given group to complete.
[all …]
/freebsd/share/man/man3/
H A Dpthread_signals_block_np.316 .Nd fast asynchronous signals blocking and unblocking
31 signals blocking facility
34 Blocking signals with
37 Signal blocking establishes a critical section where the execution
39 Blocking signals is fast, it is performed by a single memory write into
/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/contrib/unbound/util/
H A Dtube.h141 * Set to blocking by the function,
142 * and back to non-blocking at exit of function.
147 * If set false, the first write is blocking.
149 * return 0 on error, in that case blocking/nonblocking of socket is
161 * Set to blocking by the function,
162 * and back to non-blocking at exit of function.
167 * If set false, the first read is blocking.
169 * return 0 on error, in that case blocking/nonblocking of socket is
191 * See if data is ready for reading on the tube without blocking.
199 * Wait for data to be ready for reading on the tube. is blocking.
/freebsd/lib/libsys/
H A Dpoll.297 Data other than high priority data may be read without blocking.
99 Normal data may be read without blocking.
101 Data with a non-zero priority may be read without blocking.
103 High priority data may be read without blocking.
106 Normal data may be written without blocking.
108 Data with a non-zero priority may be written without blocking.
157 will return without blocking.
H A Dsendfile.2111 instead of blocking when a busy page is encountered.
124 thus avoiding blocking on I/O.
162 When using a socket marked for non-blocking I/O,
238 blocking, and there are not enough
244 If the sending socket is non-blocking and there are not enough
254 Tune accordingly to avoid blocking!
300 The socket is marked for non-blocking I/O and not all data was sent due to
407 a non-blocking implementation had been introduced.
H A Dsocket.2164 Set non-blocking mode on the new socket.
356 .Sh NON-BLOCKING MODE
358 .Em non-blocking mode
362 Alternatively, the non-blocking mode on a socket can be turned on and off with
369 When a non-blocking socket has not enough data in its receive buffer to fulfill
387 If application tries to send more data on a non-blocking socket than the socket
405 in non-blocking mode neither will block in blocking mode.
423 It may also enable non-blocking I/O
/freebsd/share/doc/psd/05.sysman/
H A D2.1.t35 may occur in a non-blocking or asynchronous fashion are
54 any data was transferred because of an error or use of non-blocking
107 Non-blocking and asynchronous operations
109 A process that wishes to do non-blocking operations on one of
110 its descriptors sets the descriptor in non-blocking mode as
124 may be performed on a descriptor in a non-blocking fashion.

12345678910>>...42