- NAME
- SYNOPSIS
- DESCRIPTION
- RETURN VALUES
- SEE ALSO
- HISTORY
- COPYRIGHT

# NAME

OSSL_QUIC_client_method, OSSL_QUIC_client_thread_method, OSSL_QUIC_server_method - Provide SSL_METHOD objects for QUIC enabled functions

# SYNOPSIS

     #include <openssl/quic.h>

     const SSL_METHOD *OSSL_QUIC_client_method(void);
     const SSL_METHOD *OSSL_QUIC_client_thread_method(void);
     const SSL_METHOD *OSSL_QUIC_server_method(void);

# DESCRIPTION

The `OSSL_QUIC_client_method()`, `OSSL_QUIC_client_thread_method()`, and `OSSL_QUIC_server_method()` functions provide methods for the SSL_CTX_new_ex(3) function to provide QUIC protocol support.

The `OSSL_QUIC_client_thread_method()` uses threads to allow for a blocking mode of operation and avoid the need to return control to the OpenSSL library for processing time based events. The `OSSL_QUIC_client_method()` does not use threads and depends on nonblocking mode of operation and the application periodically calling SSL functions.

The `OSSL_QUIC_server_method()` provides server-side QUIC protocol support and must be used with the SSL_new_listener(3) API. Attempting to use `OSSL_QUIC_server_method()` with SSL_new(3) will result in an error.

# RETURN VALUES

These functions return pointers to the constant method objects.

# SEE ALSO

SSL_CTX_new_ex(3), SSL_new_listener(3)

# HISTORY

`OSSL_QUIC_client_method()` and `OSSL_QUIC_client_thread_method()` were added in OpenSSL 3.2.

`OSSL_QUIC_server_method()` was added in OpenSSL 3.5.

# COPYRIGHT

Copyright 2022-2025 The OpenSSL Project Authors. All Rights Reserved.

Licensed under the Apache License 2.0 (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at https://www.openssl.org/source/license.html.