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)
23 #ifndef OPENSSL_NO_TLS1_2_METHOD
24 IMPLEMENT_tls_meth_func(TLS1_2_VERSION, 0, SSL_OP_NO_TLSv1_2,
27 ossl_statem_connect, TLSv1_2_enc_data)
30 #ifndef OPENSSL_NO_TLS1_1_METHOD
31 IMPLEMENT_tls_meth_func(TLS1_1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1_1,
34 ossl_statem_connect, TLSv1_1_enc_data)
37 #ifndef OPENSSL_NO_TLS1_METHOD
38 IMPLEMENT_tls_meth_func(TLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1,
41 ossl_statem_connect, TLSv1_enc_data)
44 #ifndef OPENSSL_NO_SSL3_METHOD
45 IMPLEMENT_ssl3_meth_func(sslv3_method, ossl_statem_accept, ossl_statem_connect)
50 * TLS/SSLv3 server methods
53 IMPLEMENT_tls_meth_func(TLS_ANY_VERSION, 0, 0,
56 ssl_undefined_function,
59 #ifndef OPENSSL_NO_TLS1_2_METHOD
60 IMPLEMENT_tls_meth_func(TLS1_2_VERSION, 0, SSL_OP_NO_TLSv1_2,
61 tlsv1_2_server_method,
63 ssl_undefined_function,
67 #ifndef OPENSSL_NO_TLS1_1_METHOD
68 IMPLEMENT_tls_meth_func(TLS1_1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1_1,
69 tlsv1_1_server_method,
71 ssl_undefined_function,
75 #ifndef OPENSSL_NO_TLS1_METHOD
76 IMPLEMENT_tls_meth_func(TLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1,
79 ssl_undefined_function,
83 #ifndef OPENSSL_NO_SSL3_METHOD
84 IMPLEMENT_ssl3_meth_func(sslv3_server_method,
86 ssl_undefined_function)
91 * TLS/SSLv3 client methods
94 IMPLEMENT_tls_meth_func(TLS_ANY_VERSION, 0, 0,
96 ssl_undefined_function,
100 #ifndef OPENSSL_NO_TLS1_2_METHOD
101 IMPLEMENT_tls_meth_func(TLS1_2_VERSION, 0, SSL_OP_NO_TLSv1_2,
102 tlsv1_2_client_method,
103 ssl_undefined_function,
108 #ifndef OPENSSL_NO_TLS1_1_METHOD
109 IMPLEMENT_tls_meth_func(TLS1_1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1_1,
110 tlsv1_1_client_method,
111 ssl_undefined_function,
116 #ifndef OPENSSL_NO_TLS1_METHOD
117 IMPLEMENT_tls_meth_func(TLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1,
119 ssl_undefined_function,
124 #ifndef OPENSSL_NO_SSL3_METHOD
125 IMPLEMENT_ssl3_meth_func(sslv3_client_method,
126 ssl_undefined_function,
135 #ifndef OPENSSL_NO_DTLS1_METHOD
136 IMPLEMENT_dtls1_meth_func(DTLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
143 #ifndef OPENSSL_NO_DTLS1_2_METHOD
144 IMPLEMENT_dtls1_meth_func(DTLS1_2_VERSION, 0, SSL_OP_NO_DTLSv1_2,
151 IMPLEMENT_dtls1_meth_func(DTLS_ANY_VERSION, 0, 0,
158 * DTLS server methods
161 #ifndef OPENSSL_NO_DTLS1_METHOD
162 IMPLEMENT_dtls1_meth_func(DTLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
163 dtlsv1_server_method,
165 ssl_undefined_function,
169 #ifndef OPENSSL_NO_DTLS1_2_METHOD
170 IMPLEMENT_dtls1_meth_func(DTLS1_2_VERSION, 0, SSL_OP_NO_DTLSv1_2,
171 dtlsv1_2_server_method,
173 ssl_undefined_function,
177 IMPLEMENT_dtls1_meth_func(DTLS_ANY_VERSION, 0, 0,
180 ssl_undefined_function,
185 * DTLS client methods
188 #ifndef OPENSSL_NO_DTLS1_METHOD
189 IMPLEMENT_dtls1_meth_func(DTLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
190 dtlsv1_client_method,
191 ssl_undefined_function,
196 #ifndef OPENSSL_NO_DTLS1_2_METHOD
197 IMPLEMENT_dtls1_meth_func(DTLS1_2_VERSION, 0, SSL_OP_NO_DTLSv1_2,
198 dtlsv1_2_client_method,
199 ssl_undefined_function,
204 IMPLEMENT_dtls1_meth_func(DTLS_ANY_VERSION, 0, 0,
206 ssl_undefined_function,
210 #if OPENSSL_API_COMPAT < 0x10100000L
212 # ifndef OPENSSL_NO_TLS1_2_METHOD
213 const SSL_METHOD *TLSv1_2_method(void)
215 return tlsv1_2_method();
218 const SSL_METHOD *TLSv1_2_server_method(void)
220 return tlsv1_2_server_method();
223 const SSL_METHOD *TLSv1_2_client_method(void)
225 return tlsv1_2_client_method();
229 # ifndef OPENSSL_NO_TLS1_1_METHOD
230 const SSL_METHOD *TLSv1_1_method(void)
232 return tlsv1_1_method();
235 const SSL_METHOD *TLSv1_1_server_method(void)
237 return tlsv1_1_server_method();
240 const SSL_METHOD *TLSv1_1_client_method(void)
242 return tlsv1_1_client_method();
246 # ifndef OPENSSL_NO_TLS1_METHOD
247 const SSL_METHOD *TLSv1_method(void)
249 return tlsv1_method();
252 const SSL_METHOD *TLSv1_server_method(void)
254 return tlsv1_server_method();
257 const SSL_METHOD *TLSv1_client_method(void)
259 return tlsv1_client_method();
263 # ifndef OPENSSL_NO_SSL3_METHOD
264 const SSL_METHOD *SSLv3_method(void)
266 return sslv3_method();
269 const SSL_METHOD *SSLv3_server_method(void)
271 return sslv3_server_method();
274 const SSL_METHOD *SSLv3_client_method(void)
276 return sslv3_client_method();
280 # ifndef OPENSSL_NO_DTLS1_2_METHOD
281 const SSL_METHOD *DTLSv1_2_method(void)
283 return dtlsv1_2_method();
286 const SSL_METHOD *DTLSv1_2_server_method(void)
288 return dtlsv1_2_server_method();
291 const SSL_METHOD *DTLSv1_2_client_method(void)
293 return dtlsv1_2_client_method();
297 # ifndef OPENSSL_NO_DTLS1_METHOD
298 const SSL_METHOD *DTLSv1_method(void)
300 return dtlsv1_method();
303 const SSL_METHOD *DTLSv1_server_method(void)
305 return dtlsv1_server_method();
308 const SSL_METHOD *DTLSv1_client_method(void)
310 return dtlsv1_client_method();