Lines Matching +full:multi +full:- +full:function

1 .\" -*- mode: troff; coding: utf-8 -*-
57 .IX Title "OPENSSL-QUIC 7ossl"
58 .TH OPENSSL-QUIC 7ossl 2025-09-30 3.5.4 OpenSSL
64 openssl\-quic \- OpenSSL QUIC
82 Default stream mode versus multi-stream mode for clients;
84 The changes to existing libssl APIs which are driven by QUIC-related
92 New, QUIC-specific APIs.
96 stream mode, which is intended to provide compatibility with existing non-QUIC
100 client-initiated or server-initiated from a QUIC perspective depends on whether
105 instead adopt the multi-stream API. See the RECOMMENDATIONS FOR NEW APPLICATIONS
110 multi-stream mode. By default, a newly created QUIC connection SSL object uses
117 When default stream mode is used, any API function which can be called on a QUIC
122 whether a stream is client-initiated or server-initiated. In default stream
125 is using a server-initiated stream, and the \fBSSL_read\fR\|(3) call will not
129 connection, it is assumed that a client-initiated stream is to be used
133 New applications adopting QUIC should use multi-stream mode, described below,
140 using additional streams are strongly recommended to use multi-stream mode
146 .SS "Multi-Stream Mode"
147 .IX Subsection "Multi-Stream Mode"
148 The recommended usage mode for new applications adopting QUIC is multi-stream
155 To use multi-stream mode, call \fBSSL_set_default_stream_mode\fR\|(3) with an
156 argument of \fBSSL_DEFAULT_STREAM_MODE_NONE\fR; this function must be called prior
160 When multi-stream mode is used, meaning that no default stream is associated
166 Most SSL APIs, such as \fBSSL_read\fR\|(3) and \fBSSL_write\fR\|(3), function as they do
171 \&\fBSSL_set0_wbio\fR\|(3) function as before, but must now receive a BIO with datagram
179 \&\fBBIO_s_dgram_pair\fR\|(3) provides BIO pair-like functionality but with datagram
183 \&\fBBIO_s_dgram_mem\fR\|(3) provides a simple memory BIO-like interface but with
197 Traditionally, whether the application-level I/O APIs (such as \fBSSL_read\fR\|(3)
201 application-level blocking mode using \fBSSL_set_blocking_mode\fR\|(3). See
204 Network-level I/O must always be performed in a nonblocking manner. The
205 application can still enjoy blocking semantics for calls to application-level
208 in nonblocking mode. For application-level blocking functionality, see
220 RFC-conformant QUIC shutdown process may take an extended amount of time. This
221 may not be suitable for short-lived processes which should exit immediately
236 incoming network datagrams, use the new function \fBSSL_net_read_desired\fR\|(3);
238 informed when it is possible to transmit network datagrams, use the new function
240 loops need to use these functions; see \fBAPPLICATION-DRIVEN EVENT LOOPS\fR for
251 if either of these are called, the function called must be congruent with the
276 Post-Handshake Client Authentication is not available as QUIC prohibits its use.
290 but calls to the relevant functions are treated as no-ops:
319 address; see the \fBQUIC-SPECIFIC APIS\fR section for details.
348 Changes needed: The custom BIO must be re-architected to have datagram
369 ensure that it calls an I/O function on the SSL object (for example,
370 \&\fBSSL_read\fR\|(3) or \fBSSL_write\fR\|(3)), or the new function \fBSSL_handle_events\fR\|(3),
372 to an I/O function satisfies this requirement. This is required to ensure that
401 \&\fBSSL_shutdown_ex\fR\|(3) API instead. See \fBQUIC-SPECIFIC APIS\fR for details.
411 to manage its own polling and event loop; see \fBAPPLICATION-DRIVEN EVENT LOOPS\fR.
426 Applications which wish to implement QUIC-specific protocols should be aware of
427 the APIs listed under \fBQUIC-SPECIFIC APIS\fR which provide access to
428 QUIC-specific functionality. For example, \fBSSL_stream_conclude\fR\|(3) can be used
433 applications avoid use of the default stream mode and use the multi-stream API
436 .SH "QUIC-SPECIFIC APIS"
437 .IX Header "QUIC-SPECIFIC APIS"
445 \&\fBSSL_handle_events\fR\|(3) (or another I/O function such as \fBSSL_read\fR\|(3) or
452 This is a non-specific I/O operation which makes a best effort attempt to
457 implicitly perform event handling on the SSL object, so calling this function is
458 only needed if no other I/O function is to be called.
468 in a protocol-agnostic manner.
471 client-only usage. The listener interface may expand to support additional
476 \&\fIssl\fR. See \fBSSL_new_domain\fR\|(3) and \fBopenssl\-quic\-concurrency\fR\|(7) for details
511 detail in \fBopenssl\-quic\-concurrency\fR\|(7).
545 This function can be used to set the initial peer address for an outgoing QUIC
546 connection. This function must be used in the general case when creating an
561 This allows an application to indicate the non-normal termination of the sending
570 signalled by a peer which has performed a non-normal stream termination of the
592 Creates a new QUIC stream SSL object representing a new, locally-initiated QUIC
597 remotely-initiated QUIC stream, blocking until one is available if the
601 Provides information on the number of pending remotely-initiated streams.
604 Configures how incoming, remotely-initiated streams are handled. The incoming
613 facilitate QUIC-specific requirements and are closely associated with its use:
659 I/O function such as \fBSSL_read\fR\|(3) or \fBSSL_write\fR\|(3) is called by the
673 .SH "APPLICATION-DRIVEN EVENT LOOPS"
674 .IX Header "APPLICATION-DRIVEN EVENT LOOPS"
751 \&\fBSSL_handle_events\fR\|(3) (or another I/O function on the SSL object), and ensure
772 Copyright 2022\-2025 The OpenSSL Project Authors. All Rights Reserved.