1 /* 2 * Copyright 2022 The OpenSSL Project Authors. All Rights Reserved. 3 * 4 * Licensed under the Apache License 2.0 (the "License"). You may not use 5 * this file except in compliance with the License. You can obtain a copy 6 * in the file LICENSE in the source distribution or at 7 * https://www.openssl.org/source/license.html 8 */ 9 10 #ifndef OPENSSL_QUIC_H 11 # define OPENSSL_QUIC_H 12 # pragma once 13 14 # include <openssl/macros.h> 15 # include <openssl/ssl.h> 16 17 # ifndef OPENSSL_NO_QUIC 18 19 # ifdef __cplusplus 20 extern "C" { 21 # endif 22 23 /* 24 * Method used for non-thread-assisted QUIC client operation. 25 */ 26 __owur const SSL_METHOD *OSSL_QUIC_client_method(void); 27 /* 28 * Method used for thread-assisted QUIC client operation. 29 */ 30 __owur const SSL_METHOD *OSSL_QUIC_client_thread_method(void); 31 /* 32 * This method does not implement full server operation, 33 * is used for testing, and is subject to change in later 34 * releases. 35 */ 36 __owur const SSL_METHOD *OSSL_QUIC_server_method(void); 37 38 # ifdef __cplusplus 39 } 40 # endif 41 42 # endif /* OPENSSL_NO_QUIC */ 43 #endif 44