xref: /freebsd/crypto/openssl/doc/man3/OSSL_QUIC_client_method.pod (revision e7be843b4a162e68651d3911f0357ed464915629)
1=pod
2
3=head1 NAME
4
5OSSL_QUIC_client_method, OSSL_QUIC_client_thread_method, OSSL_QUIC_server_method
6- Provide SSL_METHOD objects for QUIC enabled functions
7
8=head1 SYNOPSIS
9
10 #include <openssl/quic.h>
11
12 const SSL_METHOD *OSSL_QUIC_client_method(void);
13 const SSL_METHOD *OSSL_QUIC_client_thread_method(void);
14 const SSL_METHOD *OSSL_QUIC_server_method(void);
15
16=head1 DESCRIPTION
17
18The OSSL_QUIC_client_method(), OSSL_QUIC_client_thread_method(), and
19OSSL_QUIC_server_method() functions provide methods for the
20L<SSL_CTX_new_ex(3)> function to provide QUIC protocol support.
21
22The OSSL_QUIC_client_thread_method() uses threads to allow for a blocking
23mode of operation and avoid the need to return control to the
24OpenSSL library for processing time based events.
25The OSSL_QUIC_client_method() does not use threads and depends on
26nonblocking mode of operation and the application periodically calling SSL
27functions.
28
29The OSSL_QUIC_server_method() provides server-side QUIC protocol support and
30must be used with the L<SSL_new_listener(3)> API. Attempting to use
31OSSL_QUIC_server_method() with L<SSL_new(3)> will result in an error.
32
33=head1 RETURN VALUES
34
35These functions return pointers to the constant method objects.
36
37=head1 SEE ALSO
38
39L<SSL_CTX_new_ex(3)>, L<SSL_new_listener(3)>
40
41=head1 HISTORY
42
43OSSL_QUIC_client_method() and OSSL_QUIC_client_thread_method() were added in
44OpenSSL 3.2.
45
46OSSL_QUIC_server_method() was added in OpenSSL 3.5.
47
48=head1 COPYRIGHT
49
50Copyright 2022-2025 The OpenSSL Project Authors. All Rights Reserved.
51
52Licensed under the Apache License 2.0 (the "License").  You may not use
53this file except in compliance with the License.  You can obtain a copy
54in the file LICENSE in the source distribution or at
55L<https://www.openssl.org/source/license.html>.
56
57=cut
58