2 * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
4 * Licensed under the OpenSSL license (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
11 #include <openssl/objects.h>
18 IMPLEMENT_tls_meth_func(TLS_ANY_VERSION, 0, 0,
21 ossl_statem_connect, TLSv1_2_enc_data)
22 #ifndef OPENSSL_NO_TLS1_2_METHOD
23 IMPLEMENT_tls_meth_func(TLS1_2_VERSION, 0, SSL_OP_NO_TLSv1_2,
26 ossl_statem_connect, TLSv1_2_enc_data)
28 #ifndef OPENSSL_NO_TLS1_1_METHOD
29 IMPLEMENT_tls_meth_func(TLS1_1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1_1,
32 ossl_statem_connect, TLSv1_1_enc_data)
34 #ifndef OPENSSL_NO_TLS1_METHOD
35 IMPLEMENT_tls_meth_func(TLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1,
37 ossl_statem_accept, ossl_statem_connect, TLSv1_enc_data)
39 #ifndef OPENSSL_NO_SSL3_METHOD
40 IMPLEMENT_ssl3_meth_func(sslv3_method, ossl_statem_accept, ossl_statem_connect)
43 * TLS/SSLv3 server methods
45 IMPLEMENT_tls_meth_func(TLS_ANY_VERSION, 0, 0,
48 ssl_undefined_function, TLSv1_2_enc_data)
49 #ifndef OPENSSL_NO_TLS1_2_METHOD
50 IMPLEMENT_tls_meth_func(TLS1_2_VERSION, 0, SSL_OP_NO_TLSv1_2,
51 tlsv1_2_server_method,
53 ssl_undefined_function, TLSv1_2_enc_data)
55 #ifndef OPENSSL_NO_TLS1_1_METHOD
56 IMPLEMENT_tls_meth_func(TLS1_1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1_1,
57 tlsv1_1_server_method,
59 ssl_undefined_function, TLSv1_1_enc_data)
61 #ifndef OPENSSL_NO_TLS1_METHOD
62 IMPLEMENT_tls_meth_func(TLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1,
65 ssl_undefined_function, TLSv1_enc_data)
67 #ifndef OPENSSL_NO_SSL3_METHOD
68 IMPLEMENT_ssl3_meth_func(sslv3_server_method,
69 ossl_statem_accept, ssl_undefined_function)
72 * TLS/SSLv3 client methods
74 IMPLEMENT_tls_meth_func(TLS_ANY_VERSION, 0, 0,
76 ssl_undefined_function,
77 ossl_statem_connect, TLSv1_2_enc_data)
78 #ifndef OPENSSL_NO_TLS1_2_METHOD
79 IMPLEMENT_tls_meth_func(TLS1_2_VERSION, 0, SSL_OP_NO_TLSv1_2,
80 tlsv1_2_client_method,
81 ssl_undefined_function,
82 ossl_statem_connect, TLSv1_2_enc_data)
84 #ifndef OPENSSL_NO_TLS1_1_METHOD
85 IMPLEMENT_tls_meth_func(TLS1_1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1_1,
86 tlsv1_1_client_method,
87 ssl_undefined_function,
88 ossl_statem_connect, TLSv1_1_enc_data)
90 #ifndef OPENSSL_NO_TLS1_METHOD
91 IMPLEMENT_tls_meth_func(TLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1,
93 ssl_undefined_function,
94 ossl_statem_connect, TLSv1_enc_data)
96 #ifndef OPENSSL_NO_SSL3_METHOD
97 IMPLEMENT_ssl3_meth_func(sslv3_client_method,
98 ssl_undefined_function, ossl_statem_connect)
103 #ifndef OPENSSL_NO_DTLS1_METHOD
104 IMPLEMENT_dtls1_meth_func(DTLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
107 ossl_statem_connect, DTLSv1_enc_data)
109 #ifndef OPENSSL_NO_DTLS1_2_METHOD
110 IMPLEMENT_dtls1_meth_func(DTLS1_2_VERSION, 0, SSL_OP_NO_DTLSv1_2,
113 ossl_statem_connect, DTLSv1_2_enc_data)
115 IMPLEMENT_dtls1_meth_func(DTLS_ANY_VERSION, 0, 0,
118 ossl_statem_connect, DTLSv1_2_enc_data)
121 * DTLS server methods
123 #ifndef OPENSSL_NO_DTLS1_METHOD
124 IMPLEMENT_dtls1_meth_func(DTLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
125 dtlsv1_server_method,
127 ssl_undefined_function, DTLSv1_enc_data)
129 #ifndef OPENSSL_NO_DTLS1_2_METHOD
130 IMPLEMENT_dtls1_meth_func(DTLS1_2_VERSION, 0, SSL_OP_NO_DTLSv1_2,
131 dtlsv1_2_server_method,
133 ssl_undefined_function, DTLSv1_2_enc_data)
135 IMPLEMENT_dtls1_meth_func(DTLS_ANY_VERSION, 0, 0,
138 ssl_undefined_function, DTLSv1_2_enc_data)
141 * DTLS client methods
143 #ifndef OPENSSL_NO_DTLS1_METHOD
144 IMPLEMENT_dtls1_meth_func(DTLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
145 dtlsv1_client_method,
146 ssl_undefined_function,
147 ossl_statem_connect, DTLSv1_enc_data)
148 IMPLEMENT_dtls1_meth_func(DTLS1_BAD_VER, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
149 dtls_bad_ver_client_method,
150 ssl_undefined_function,
151 ossl_statem_connect, DTLSv1_enc_data)
153 #ifndef OPENSSL_NO_DTLS1_2_METHOD
154 IMPLEMENT_dtls1_meth_func(DTLS1_2_VERSION, 0, SSL_OP_NO_DTLSv1_2,
155 dtlsv1_2_client_method,
156 ssl_undefined_function,
157 ossl_statem_connect, DTLSv1_2_enc_data)
159 IMPLEMENT_dtls1_meth_func(DTLS_ANY_VERSION, 0, 0,
161 ssl_undefined_function,
162 ossl_statem_connect, DTLSv1_2_enc_data)
163 #if OPENSSL_API_COMPAT < 0x10100000L
164 # ifndef OPENSSL_NO_TLS1_2_METHOD
165 const SSL_METHOD *TLSv1_2_method(void)
167 return tlsv1_2_method();
170 const SSL_METHOD *TLSv1_2_server_method(void)
172 return tlsv1_2_server_method();
175 const SSL_METHOD *TLSv1_2_client_method(void)
177 return tlsv1_2_client_method();
181 # ifndef OPENSSL_NO_TLS1_1_METHOD
182 const SSL_METHOD *TLSv1_1_method(void)
184 return tlsv1_1_method();
187 const SSL_METHOD *TLSv1_1_server_method(void)
189 return tlsv1_1_server_method();
192 const SSL_METHOD *TLSv1_1_client_method(void)
194 return tlsv1_1_client_method();
198 # ifndef OPENSSL_NO_TLS1_METHOD
199 const SSL_METHOD *TLSv1_method(void)
201 return tlsv1_method();
204 const SSL_METHOD *TLSv1_server_method(void)
206 return tlsv1_server_method();
209 const SSL_METHOD *TLSv1_client_method(void)
211 return tlsv1_client_method();
215 # ifndef OPENSSL_NO_SSL3_METHOD
216 const SSL_METHOD *SSLv3_method(void)
218 return sslv3_method();
221 const SSL_METHOD *SSLv3_server_method(void)
223 return sslv3_server_method();
226 const SSL_METHOD *SSLv3_client_method(void)
228 return sslv3_client_method();
232 # ifndef OPENSSL_NO_DTLS1_2_METHOD
233 const SSL_METHOD *DTLSv1_2_method(void)
235 return dtlsv1_2_method();
238 const SSL_METHOD *DTLSv1_2_server_method(void)
240 return dtlsv1_2_server_method();
243 const SSL_METHOD *DTLSv1_2_client_method(void)
245 return dtlsv1_2_client_method();
249 # ifndef OPENSSL_NO_DTLS1_METHOD
250 const SSL_METHOD *DTLSv1_method(void)
252 return dtlsv1_method();
255 const SSL_METHOD *DTLSv1_server_method(void)
257 return dtlsv1_server_method();
260 const SSL_METHOD *DTLSv1_client_method(void)
262 return dtlsv1_client_method();