Lines Matching +full:3 +full:- +full:4
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
75 support in. QUIC clients can use \fBOSSL_QUIC_client_method\fR\|(3) or
76 \&\fBOSSL_QUIC_client_thread_method\fR\|(3) with \fBSSL_CTX_new\fR\|(3). See below for more
78 option: SSL method \fBOSSL_QUIC_server_method\fR\|(3) with \fBSSL_CTX_new\fR\|(3).
81 .IP \(bu 4
82 Default stream mode versus multi-stream mode for clients;
83 .IP \(bu 4
84 The changes to existing libssl APIs which are driven by QUIC-related
86 .IP \(bu 4
89 .IP \(bu 4
91 .IP \(bu 4
92 New, QUIC-specific APIs.
96 stream mode, which is intended to provide compatibility with existing non-QUIC
98 associated with it. Calls to \fBSSL_read\fR\|(3) and \fBSSL_write\fR\|(3) on the QUIC
100 client-initiated or server-initiated from a QUIC perspective depends on whether
101 \&\fBSSL_read\fR\|(3) or \fBSSL_write\fR\|(3) is called first.
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
114 connection SSL object; \fBSSL_read\fR\|(3) and \fBSSL_write\fR\|(3) calls to the QUIC
122 whether a stream is client-initiated or server-initiated. In default stream
123 mode, if a client application calls \fBSSL_read\fR\|(3) first before any call to
124 \&\fBSSL_write\fR\|(3) on the connection, it is assumed that the application protocol
125 is using a server-initiated stream, and the \fBSSL_read\fR\|(3) call will not
128 application calls \fBSSL_write\fR\|(3) before any call to \fBSSL_read\fR\|(3) on the
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,
137 \&\fBSSL_new_stream\fR\|(3) and \fBSSL_accept_stream\fR\|(3); note that the default incoming
138 stream policy will need to be changed using \fBSSL_set_incoming_stream_policy\fR\|(3)
139 in order to use \fBSSL_accept_stream\fR\|(3) in this case. However, applications
140 using additional streams are strongly recommended to use multi-stream mode
143 Calling \fBSSL_new_stream\fR\|(3) or \fBSSL_accept_stream\fR\|(3) before a default stream
146 .SS "Multi-Stream Mode"
147 .IX Subsection "Multi-Stream Mode"
148 The recommended usage mode for new applications adopting QUIC is multi-stream
150 and attempts to call \fBSSL_read\fR\|(3) and \fBSSL_write\fR\|(3) on the QUIC connection
151 SSL object fail. Instead, an application calls \fBSSL_new_stream\fR\|(3) or
152 \&\fBSSL_accept_stream\fR\|(3) to create individual stream SSL objects for sending and
153 receiving application data using \fBSSL_read\fR\|(3) and \fBSSL_write\fR\|(3).
155 To use multi-stream mode, call \fBSSL_set_default_stream_mode\fR\|(3) with an
160 When multi-stream mode is used, meaning that no default stream is associated
163 such as \fBSSL_write\fR\|(3) or \fBSSL_get_stream_id\fR\|(3) will fail.
166 Most SSL APIs, such as \fBSSL_read\fR\|(3) and \fBSSL_write\fR\|(3), function as they do
169 .IP \(bu 4
170 Since QUIC uses UDP, \fBSSL_set_bio\fR\|(3), \fBSSL_set0_rbio\fR\|(3) and
171 \&\fBSSL_set0_wbio\fR\|(3) function as before, but must now receive a BIO with datagram
174 .RS 4
175 .IP \(bu 4
176 \&\fBBIO_s_datagram\fR\|(3), recommended for most applications, replaces
177 \&\fBBIO_s_socket\fR\|(3) and provides a UDP socket.
178 .IP \(bu 4
179 \&\fBBIO_s_dgram_pair\fR\|(3) provides BIO pair-like functionality but with datagram
182 .IP \(bu 4
183 \&\fBBIO_s_dgram_mem\fR\|(3) provides a simple memory BIO-like interface but with
184 datagram semantics. Unlike \fBBIO_s_dgram_pair\fR\|(3), it is unidirectional.
185 .IP \(bu 4
187 \&\fBBIO_sendmmsg\fR\|(3) and \fBBIO_recvmmsg\fR\|(3) APIs must be supported.
189 .RS 4
191 .IP \(bu 4
192 \&\fBSSL_set_fd\fR\|(3), \fBSSL_set_rfd\fR\|(3) and \fBSSL_set_wfd\fR\|(3) traditionally
193 instantiate a \fBBIO_s_socket\fR\|(3). For QUIC, these functions instead instantiate
194 a \fBBIO_s_datagram\fR\|(3). This is equivalent to instantiating a
195 \&\fBBIO_s_datagram\fR\|(3) and using \fBSSL_set0_rbio\fR\|(3) and \fBSSL_set0_wbio\fR\|(3).
196 .IP \(bu 4
197 Traditionally, whether the application-level I/O APIs (such as \fBSSL_read\fR\|(3)
198 and \fBSSL_write\fR\|(3) operated in a blocking fashion was directly correlated with
201 application-level blocking mode using \fBSSL_set_blocking_mode\fR\|(3). See
202 \&\fBSSL_set_blocking_mode\fR\|(3) for details.
203 .IP \(bu 4
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
206 I/O functions such as \fBSSL_read\fR\|(3) and \fBSSL_write\fR\|(3), but the underlying
207 network BIO provided to QUIC (such as a \fBBIO_s_datagram\fR\|(3)) must be configured
208 in nonblocking mode. For application-level blocking functionality, see
209 \&\fBSSL_set_blocking_mode\fR\|(3).
210 .IP \(bu 4
211 \&\fBBIO_new_ssl_connect\fR\|(3) has been changed to automatically use a
212 \&\fBBIO_s_datagram\fR\|(3) when used with QUIC, therefore applications which use this
214 .IP \(bu 4
215 \&\fBBIO_new_buffer_ssl_connect\fR\|(3) cannot be used with QUIC and applications must
216 change to use \fBBIO_new_ssl_connect\fR\|(3) instead.
217 .IP \(bu 4
218 \&\fBSSL_shutdown\fR\|(3) has significant changes in relation to how QUIC connections
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
223 is available for such applications. For details, see \fBSSL_shutdown\fR\|(3).
224 .IP \(bu 4
225 \&\fBSSL_want\fR\|(3), \fBSSL_want_read\fR\|(3) and \fBSSL_want_write\fR\|(3) no longer reflect
236 incoming network datagrams, use the new function \fBSSL_net_read_desired\fR\|(3);
239 \&\fBSSL_net_write_desired\fR\|(3). Only applications which wish to manage their own event
240 loops need to use these functions; see \fBAPPLICATION-DRIVEN EVENT LOOPS\fR for
242 .IP \(bu 4
245 \&\fBSSL_set_alpn_protos\fR\|(3).
246 .IP \(bu 4
248 \&\fBSSL_METHOD\fR used, rather than by calls to \fBSSL_set_connect_state\fR\|(3) or
249 \&\fBSSL_set_accept_state\fR\|(3). It is not necessary to call either of
250 \&\fBSSL_set_connect_state\fR\|(3) or \fBSSL_set_accept_state\fR\|(3) before connecting, but
253 .IP \(bu 4
254 The \fBSSL_set_min_proto_version\fR\|(3) and \fBSSL_set_max_proto_version\fR\|(3) APIs are
257 .IP \(bu 4
259 .RS 4
260 .IP \(bu 4
262 .IP \(bu 4
264 .IP \(bu 4
265 Record Padding and Fragmentation (\fBSSL_set_block_padding\fR\|(3), etc.)
266 .IP \(bu 4
267 \&\fBSSL_stateless\fR\|(3) support
268 .IP \(bu 4
270 .IP \(bu 4
271 TLSv1.3 Early Data
272 .IP \(bu 4
275 .IP \(bu 4
276 Post-Handshake Client Authentication is not available as QUIC prohibits its use.
277 .IP \(bu 4
278 QUIC requires the use of TLSv1.3 or later, therefore functionality only relevant
280 .IP \(bu 4
281 Some cipher suites which are generally available for TLSv1.3 are not available
284 .IP \(bu 4
287 .RS 4
290 but calls to the relevant functions are treated as no-ops:
291 .IP \(bu 4
292 Readahead (\fBSSL_set_read_ahead\fR\|(3), etc.)
294 .RS 4
300 .IP \(bu 4
301 A client application wishing to use QUIC must use \fBOSSL_QUIC_client_method\fR\|(3)
302 or \fBOSSL_QUIC_client_thread_method\fR\|(3) as its SSL method. For more information
305 .IP \(bu 4
306 A server application wishing to use QUIC must use \fBOSSL_QUIC_server_method\fR\|(3).
307 The server can then accept new connections with \fBSSL_accept_connection\fR\|(3).
308 .IP \(bu 4
311 .RS 4
312 .IP \(bu 4
313 Your application uses \fBBIO_s_socket\fR\|(3) to construct a BIO which is passed to
316 Changes needed: Change your application to use \fBBIO_s_datagram\fR\|(3) instead when
318 not need to use \fBSSL_set1_initial_peer_addr\fR\|(3) to set the initial peer
319 address; see the \fBQUIC-SPECIFIC APIS\fR section for details.
320 .IP \(bu 4
321 Your application uses \fBBIO_new_ssl_connect\fR\|(3) to
327 .IP \(bu 4
329 \&\fBBIO_f_buffer\fR\|(3), for example using \fBBIO_push\fR\|(3).
331 Changes needed: Disable the usage of \fBBIO_f_buffer\fR\|(3) when using QUIC. Usage
334 .IP \(bu 4
340 \&\fBBIO_s_dgram_pair\fR\|(3) instead, which has the necessary datagram semantics. You
342 and to use datagram semantics when interacting with the \fBBIO_s_dgram_pair\fR\|(3)
344 .IP \(bu 4
348 Changes needed: The custom BIO must be re-architected to have datagram
349 semantics. \fBBIO_sendmmsg\fR\|(3) and \fBBIO_recvmmsg\fR\|(3) must be implemented. These
351 \&\fBBIO_get_rpoll_descriptor\fR\|(3) and \fBBIO_get_wpoll_descriptor\fR\|(3) methods if
355 .RS 4
357 .IP \(bu 4
364 \&\fBSSL_set_blocking_mode\fR\|(3) API. The default mode is blocking. If an application
366 it must add a call to \fBSSL_set_blocking_mode\fR\|(3) to disable blocking mode.
367 .IP \(bu 4
370 \&\fBSSL_read\fR\|(3) or \fBSSL_write\fR\|(3)), or the new function \fBSSL_handle_events\fR\|(3),
375 Most applications will service the SSL object by calling \fBSSL_read\fR\|(3) or
376 \&\fBSSL_write\fR\|(3) regularly. If an application does not do this, it should ensure
377 that \fBSSL_handle_events\fR\|(3) is called regularly.
379 \&\fBSSL_get_event_timeout\fR\|(3) can be used to determine when
380 \&\fBSSL_handle_events\fR\|(3) must next be called.
383 (such as \fBBIO_s_datagram\fR\|(3)), the application can use
384 \&\fBSSL_get_rpoll_descriptor\fR\|(3), \fBSSL_get_wpoll_descriptor\fR\|(3) to obtain
385 resources which can be used to determine when \fBSSL_handle_events\fR\|(3) should be
391 .IP \(bu 4
392 Ensure that your usage of \fBSSL_want\fR\|(3), \fBSSL_want_read\fR\|(3) and
393 \&\fBSSL_want_write\fR\|(3) reflects the API changes described in \fBCHANGES TO EXISTING
397 .IP \(bu 4
398 Evaluate your application's use of \fBSSL_shutdown\fR\|(3) in light of the changes
401 \&\fBSSL_shutdown_ex\fR\|(3) API instead. See \fBQUIC-SPECIFIC APIS\fR for details.
406 .IP \(bu 4
408 level (configured using \fBSSL_set_blocking_mode\fR\|(3)).
411 to manage its own polling and event loop; see \fBAPPLICATION-DRIVEN EVENT LOOPS\fR.
412 .IP \(bu 4
414 a network socket (e.g. via \fBBIO_s_datagram\fR\|(3)) or whether it intends to buffer
415 transmitted and received datagrams via a \fBBIO_s_dgram_pair\fR\|(3) or custom BIO.
420 .IP \(bu 4
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
429 to indicate the end of the sending part of a stream, and \fBSSL_shutdown_ex\fR\|(3)
433 applications avoid use of the default stream mode and use the multi-stream API
434 by calling \fBSSL_set_default_stream_mode\fR\|(3); see the MODES OF OPERATION section
436 .SH "QUIC-SPECIFIC APIS"
437 .IX Header "QUIC-SPECIFIC APIS"
442 .IP \fBSSL_get_event_timeout\fR\|(3) 4
445 \&\fBSSL_handle_events\fR\|(3) (or another I/O function such as \fBSSL_read\fR\|(3) or
446 \&\fBSSL_write\fR\|(3)), if ever.
448 This can also be used with DTLS and supersedes \fBDTLSv1_get_timeout\fR\|(3) for new
450 .IP \fBSSL_handle_events\fR\|(3) 4
452 This is a non-specific I/O operation which makes a best effort attempt to
456 functions on an SSL object, such as \fBSSL_read\fR\|(3) and \fBSSL_write\fR\|(3),
460 This can also be used with DTLS and supersedes \fBDTLSv1_handle_timeout\fR\|(3) for
464 .IP \fBSSL_new_listener\fR\|(3) 4
468 in a protocol-agnostic manner.
471 client-only usage. The listener interface may expand to support additional
473 .IP \fBSSL_new_listener_from\fR\|(3) 4
476 \&\fIssl\fR. See \fBSSL_new_domain\fR\|(3) and \fBopenssl\-quic\-concurrency\fR\|(7) for details
478 .IP \fBSSL_is_listener\fR\|(3) 4
481 .IP \fBSSL_get0_listener\fR\|(3) 4
485 .IP \fBSSL_listen\fR\|(3) 4
489 \&\fBSSL_accept_connection\fR\|(3).
490 .IP \fBSSL_accept_connection\fR\|(3) 4
496 .IP \fBSSL_get_accept_connection_queue_len\fR\|(3) 4
500 .IP \fBSSL_new_from_listener\fR\|(3) 4
507 .IP \fBSSL_new_domain\fR\|(3) 4
511 detail in \fBopenssl\-quic\-concurrency\fR\|(7).
512 .IP \fBSSL_is_domain\fR\|(3) 4
515 .IP \fBSSL_get0_domain\fR\|(3) 4
519 .IP "\fBSSL_set_blocking_mode\fR\|(3), \fBSSL_get_blocking_mode\fR\|(3)" 4
522 determines whether calls to functions such as \fBSSL_read\fR\|(3) and \fBSSL_write\fR\|(3)
524 .IP "\fBSSL_get_rpoll_descriptor\fR\|(3), \fBSSL_get_wpoll_descriptor\fR\|(3)" 4
529 supports polling, \fBSSL_get_rpoll_descriptor\fR\|(3) outputs an OS resource which
531 a call to \fBSSL_handle_events\fR\|(3). \fBSSL_get_wpoll_descriptor\fR\|(3) works in an
535 \&\fBSSL_net_read_desired\fR\|(3) and \fBSSL_net_write_desired\fR\|(3) return 1,
537 .IP "\fBSSL_net_read_desired\fR\|(3), \fBSSL_net_write_desired\fR\|(3)" 4
540 conjunction with \fBSSL_get_rpoll_descriptor\fR\|(3) and
541 \&\fBSSL_get_wpoll_descriptor\fR\|(3) respectively. They determine whether the
543 .IP \fBSSL_set1_initial_peer_addr\fR\|(3) 4
548 autodetected in some cases. See \fBSSL_set1_initial_peer_addr\fR\|(3) for details.
549 .IP \fBSSL_shutdown_ex\fR\|(3) 4
551 This augments \fBSSL_shutdown\fR\|(3) by allowing an application error code to be
554 .IP \fBSSL_stream_conclude\fR\|(3) 4
559 .IP \fBSSL_stream_reset\fR\|(3) 4
561 This allows an application to indicate the non-normal termination of the sending
563 .IP "\fBSSL_get_stream_write_state\fR\|(3) and \fBSSL_get_stream_read_state\fR\|(3)" 4
567 .IP "\fBSSL_get_stream_write_error_code\fR\|(3) and \fBSSL_get_stream_read_error_code\fR\|(3)" 4
570 signalled by a peer which has performed a non-normal stream termination of the
572 .IP \fBSSL_get_conn_close_info\fR\|(3) 4
576 .IP \fBSSL_get0_connection\fR\|(3) 4
579 .IP \fBSSL_is_connection\fR\|(3) 4
582 .IP \fBSSL_get_stream_type\fR\|(3) 4
586 .IP \fBSSL_get_stream_id\fR\|(3) 4
590 .IP \fBSSL_new_stream\fR\|(3) 4
592 Creates a new QUIC stream SSL object representing a new, locally-initiated QUIC
594 .IP \fBSSL_accept_stream\fR\|(3) 4
597 remotely-initiated QUIC stream, blocking until one is available if the
599 .IP \fBSSL_get_accept_stream_queue_len\fR\|(3) 4
601 Provides information on the number of pending remotely-initiated streams.
602 .IP \fBSSL_set_incoming_stream_policy\fR\|(3) 4
604 Configures how incoming, remotely-initiated streams are handled. The incoming
606 or allow them to be handled using \fBSSL_accept_stream\fR\|(3).
607 .IP \fBSSL_set_default_stream_mode\fR\|(3) 4
613 facilitate QUIC-specific requirements and are closely associated with its use:
614 .IP \fBBIO_s_dgram_pair\fR\|(3) 4
618 .IP "\fBBIO_get_rpoll_descriptor\fR\|(3), \fBBIO_get_wpoll_descriptor\fR\|(3)" 4
621 is used to implement the corresponding SSL APIs \fBSSL_get_rpoll_descriptor\fR\|(3)
622 and \fBSSL_get_wpoll_descriptor\fR\|(3).
623 .IP "\fBBIO_sendmmsg\fR\|(3), \fBBIO_recvmmsg\fR\|(3)" 4
626 semantics. It is implemented by \fBBIO_s_datagram\fR\|(3) and \fBBIO_s_dgram_pair\fR\|(3).
628 .IP "\fBBIO_dgram_set_no_trunc\fR\|(3), \fBBIO_dgram_get_no_trunc\fR\|(3)" 4
630 By default, \fBBIO_s_dgram_pair\fR\|(3) has semantics comparable to those of Berkeley
634 .IP "\fBBIO_dgram_set_caps\fR\|(3), \fBBIO_dgram_get_caps\fR\|(3)" 4
637 \&\fBBIO_s_dgram_pair\fR\|(3) to indicate its capabilities to the other end of a
638 \&\fBBIO_s_dgram_pair\fR\|(3). In particular, this allows an application to inform the
642 …dgram_get_local_addr_cap\fR\|(3), \fBBIO_dgram_set_local_addr_enable\fR\|(3), \fBBIO_dgram_get_loc…
649 .IP \fBBIO_err_is_non_fatal\fR\|(3) 4
651 This is used to determine if an error while calling \fBBIO_sendmmsg\fR\|(3) or
652 \&\fBBIO_recvmmsg\fR\|(3) is ephemeral in nature, such as "would block" errors.
656 \&\fBOSSL_QUIC_client_thread_method\fR\|(3). In this mode, a background thread is
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"
683 \&\fBBIO_get_rpoll_descriptor\fR\|(3) for details. Broadly, a \fBBIO_POLL_DESCRIPTOR\fR is
692 .IP \(bu 4
694 the SSL object using \fBSSL_set0_rbio\fR\|(3) and \fBSSL_set0_wbio\fR\|(3). This could be
695 a BIO abstracting a network socket such as \fBBIO_s_datagram\fR\|(3), or a BIO
696 abstracting some kind of memory buffer such as \fBBIO_s_dgram_pair\fR\|(3). Use of a
698 .IP \(bu 4
700 \&\fBSSL_set_blocking_mode\fR\|(3).
701 .IP \(bu 4
703 using \fBSSL_set1_initial_peer_addr\fR\|(3), and trigger the connection process by
704 calling \fBSSL_connect\fR\|(3).
705 .IP \(bu 4
707 a \fBBIO_s_datagram\fR\|(3), or a custom BIO which implements
708 \&\fBBIO_get_rpoll_descriptor\fR\|(3) and \fBBIO_get_wpoll_descriptor\fR\|(3)), it should
710 .RS 4
711 .IP \(bu 4
712 The application should call \fBSSL_get_rpoll_descriptor\fR\|(3) and
713 \&\fBSSL_get_wpoll_descriptor\fR\|(3) to identify OS resources which can be used for
715 .IP \(bu 4
716 It should call \fBSSL_net_read_desired\fR\|(3) and \fBSSL_net_write_desired\fR\|(3) to determine
719 \&\fBSSL_get_event_timeout\fR\|(3) to determine if any timeout event will become
721 .IP \(bu 4
723 .RS 4
724 .IP \(bu 4
725 The poll descriptor returned by \fBSSL_get_rpoll_descriptor\fR\|(3) becomes readable
726 (if \fBSSL_net_read_desired\fR\|(3) returned 1);
727 .IP \(bu 4
728 The poll descriptor returned by \fBSSL_get_wpoll_descriptor\fR\|(3) becomes writable
729 (if \fBSSL_net_write_desired\fR\|(3) returned 1);
730 .IP \(bu 4
731 The timeout returned by \fBSSL_get_event_timeout\fR\|(3) (if any) expires.
733 .RS 4
735 Once any of these events occurs, \fBSSL_handle_events\fR\|(3) should be called.
738 .RS 4
740 .IP \(bu 4
742 the case of \fBBIO_s_dgram_pair\fR\|(3)), the application is responsible for managing
743 and synchronising network I/O. It should call \fBSSL_handle_events\fR\|(3) after it
744 writes data to a \fBBIO_s_dgram_pair\fR\|(3) or otherwise takes action so that the
745 QUIC implementation can read new datagrams via a call to \fBBIO_recvmmsg\fR\|(3) on
747 call to \fBBIO_sendmmsg\fR\|(3) and the application is responsible for ensuring these
750 The application must call \fBSSL_get_event_timeout\fR\|(3) after every call to
751 \&\fBSSL_handle_events\fR\|(3) (or another I/O function on the SSL object), and ensure
752 that a call to \fBSSL_handle_events\fR\|(3) is performed after the specified timeout
756 \&\fBSSL_handle_events\fR\|(3), \fBSSL_get_event_timeout\fR\|(3),
757 \&\fBSSL_net_read_desired\fR\|(3), \fBSSL_net_write_desired\fR\|(3),
758 \&\fBSSL_get_rpoll_descriptor\fR\|(3), \fBSSL_get_wpoll_descriptor\fR\|(3),
759 \&\fBSSL_set_blocking_mode\fR\|(3), \fBSSL_shutdown_ex\fR\|(3),
760 \&\fBSSL_set1_initial_peer_addr\fR\|(3), \fBSSL_stream_conclude\fR\|(3),
761 \&\fBSSL_stream_reset\fR\|(3), \fBSSL_get_stream_read_state\fR\|(3),
762 \&\fBSSL_get_stream_read_error_code\fR\|(3), \fBSSL_get_conn_close_info\fR\|(3),
763 \&\fBSSL_get0_connection\fR\|(3), \fBSSL_get_stream_type\fR\|(3), \fBSSL_get_stream_id\fR\|(3),
764 \&\fBSSL_new_stream\fR\|(3), \fBSSL_accept_stream\fR\|(3),
765 \&\fBSSL_set_incoming_stream_policy\fR\|(3), \fBSSL_set_default_stream_mode\fR\|(3),
766 \&\fBSSL_new_listener\fR\|(3), \fBSSL_new_listener_from\fR\|(3), \fBSSL_is_listener\fR\|(3),
767 \&\fBSSL_get0_listener\fR\|(3), \fBSSL_listen\fR\|(3), \fBSSL_accept_connection\fR\|(3),
768 \&\fBSSL_get_accept_connection_queue_len\fR\|(3), \fBSSL_new_domain\fR\|(3),
769 \&\fBSSL_is_domain\fR\|(3), \fBSSL_get0_domain\fR\|(3)
772 Copyright 2022\-2025 The OpenSSL Project Authors. All Rights Reserved.