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 IMPLEMENT_tls_meth_func(TLS1_3_VERSION, 0, SSL_OP_NO_TLSv1_3,
25 ossl_statem_connect, TLSv1_3_enc_data)
26 #ifndef OPENSSL_NO_TLS1_2_METHOD
27 IMPLEMENT_tls_meth_func(TLS1_2_VERSION, 0, SSL_OP_NO_TLSv1_2,
30 ossl_statem_connect, TLSv1_2_enc_data)
32 #ifndef OPENSSL_NO_TLS1_1_METHOD
33 IMPLEMENT_tls_meth_func(TLS1_1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1_1,
36 ossl_statem_connect, TLSv1_1_enc_data)
38 #ifndef OPENSSL_NO_TLS1_METHOD
39 IMPLEMENT_tls_meth_func(TLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1,
41 ossl_statem_accept, ossl_statem_connect, TLSv1_enc_data)
43 #ifndef OPENSSL_NO_SSL3_METHOD
44 IMPLEMENT_ssl3_meth_func(sslv3_method, ossl_statem_accept, ossl_statem_connect)
47 * TLS/SSLv3 server methods
49 IMPLEMENT_tls_meth_func(TLS_ANY_VERSION, 0, 0,
52 ssl_undefined_function, TLSv1_2_enc_data)
53 IMPLEMENT_tls_meth_func(TLS1_3_VERSION, 0, SSL_OP_NO_TLSv1_3,
54 tlsv1_3_server_method,
56 ssl_undefined_function, TLSv1_3_enc_data)
57 #ifndef OPENSSL_NO_TLS1_2_METHOD
58 IMPLEMENT_tls_meth_func(TLS1_2_VERSION, 0, SSL_OP_NO_TLSv1_2,
59 tlsv1_2_server_method,
61 ssl_undefined_function, TLSv1_2_enc_data)
63 #ifndef OPENSSL_NO_TLS1_1_METHOD
64 IMPLEMENT_tls_meth_func(TLS1_1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1_1,
65 tlsv1_1_server_method,
67 ssl_undefined_function, TLSv1_1_enc_data)
69 #ifndef OPENSSL_NO_TLS1_METHOD
70 IMPLEMENT_tls_meth_func(TLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1,
73 ssl_undefined_function, TLSv1_enc_data)
75 #ifndef OPENSSL_NO_SSL3_METHOD
76 IMPLEMENT_ssl3_meth_func(sslv3_server_method,
77 ossl_statem_accept, ssl_undefined_function)
80 * TLS/SSLv3 client methods
82 IMPLEMENT_tls_meth_func(TLS_ANY_VERSION, 0, 0,
84 ssl_undefined_function,
85 ossl_statem_connect, TLSv1_2_enc_data)
86 IMPLEMENT_tls_meth_func(TLS1_3_VERSION, 0, SSL_OP_NO_TLSv1_3,
87 tlsv1_3_client_method,
88 ssl_undefined_function,
89 ossl_statem_connect, TLSv1_3_enc_data)
90 #ifndef OPENSSL_NO_TLS1_2_METHOD
91 IMPLEMENT_tls_meth_func(TLS1_2_VERSION, 0, SSL_OP_NO_TLSv1_2,
92 tlsv1_2_client_method,
93 ssl_undefined_function,
94 ossl_statem_connect, TLSv1_2_enc_data)
96 #ifndef OPENSSL_NO_TLS1_1_METHOD
97 IMPLEMENT_tls_meth_func(TLS1_1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1_1,
98 tlsv1_1_client_method,
99 ssl_undefined_function,
100 ossl_statem_connect, TLSv1_1_enc_data)
102 #ifndef OPENSSL_NO_TLS1_METHOD
103 IMPLEMENT_tls_meth_func(TLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_TLSv1,
105 ssl_undefined_function,
106 ossl_statem_connect, TLSv1_enc_data)
108 #ifndef OPENSSL_NO_SSL3_METHOD
109 IMPLEMENT_ssl3_meth_func(sslv3_client_method,
110 ssl_undefined_function, ossl_statem_connect)
115 #ifndef OPENSSL_NO_DTLS1_METHOD
116 IMPLEMENT_dtls1_meth_func(DTLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
119 ossl_statem_connect, DTLSv1_enc_data)
121 #ifndef OPENSSL_NO_DTLS1_2_METHOD
122 IMPLEMENT_dtls1_meth_func(DTLS1_2_VERSION, 0, SSL_OP_NO_DTLSv1_2,
125 ossl_statem_connect, DTLSv1_2_enc_data)
127 IMPLEMENT_dtls1_meth_func(DTLS_ANY_VERSION, 0, 0,
130 ossl_statem_connect, DTLSv1_2_enc_data)
133 * DTLS server methods
135 #ifndef OPENSSL_NO_DTLS1_METHOD
136 IMPLEMENT_dtls1_meth_func(DTLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
137 dtlsv1_server_method,
139 ssl_undefined_function, DTLSv1_enc_data)
141 #ifndef OPENSSL_NO_DTLS1_2_METHOD
142 IMPLEMENT_dtls1_meth_func(DTLS1_2_VERSION, 0, SSL_OP_NO_DTLSv1_2,
143 dtlsv1_2_server_method,
145 ssl_undefined_function, DTLSv1_2_enc_data)
147 IMPLEMENT_dtls1_meth_func(DTLS_ANY_VERSION, 0, 0,
150 ssl_undefined_function, DTLSv1_2_enc_data)
153 * DTLS client methods
155 #ifndef OPENSSL_NO_DTLS1_METHOD
156 IMPLEMENT_dtls1_meth_func(DTLS1_VERSION, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
157 dtlsv1_client_method,
158 ssl_undefined_function,
159 ossl_statem_connect, DTLSv1_enc_data)
160 IMPLEMENT_dtls1_meth_func(DTLS1_BAD_VER, SSL_METHOD_NO_SUITEB, SSL_OP_NO_DTLSv1,
161 dtls_bad_ver_client_method,
162 ssl_undefined_function,
163 ossl_statem_connect, DTLSv1_enc_data)
165 #ifndef OPENSSL_NO_DTLS1_2_METHOD
166 IMPLEMENT_dtls1_meth_func(DTLS1_2_VERSION, 0, SSL_OP_NO_DTLSv1_2,
167 dtlsv1_2_client_method,
168 ssl_undefined_function,
169 ossl_statem_connect, DTLSv1_2_enc_data)
171 IMPLEMENT_dtls1_meth_func(DTLS_ANY_VERSION, 0, 0,
173 ssl_undefined_function,
174 ossl_statem_connect, DTLSv1_2_enc_data)
175 #if !OPENSSL_API_1_1_0
176 # ifndef OPENSSL_NO_TLS1_2_METHOD
177 const SSL_METHOD *TLSv1_2_method(void)
179 return tlsv1_2_method();
182 const SSL_METHOD *TLSv1_2_server_method(void)
184 return tlsv1_2_server_method();
187 const SSL_METHOD *TLSv1_2_client_method(void)
189 return tlsv1_2_client_method();
193 # ifndef OPENSSL_NO_TLS1_1_METHOD
194 const SSL_METHOD *TLSv1_1_method(void)
196 return tlsv1_1_method();
199 const SSL_METHOD *TLSv1_1_server_method(void)
201 return tlsv1_1_server_method();
204 const SSL_METHOD *TLSv1_1_client_method(void)
206 return tlsv1_1_client_method();
210 # ifndef OPENSSL_NO_TLS1_METHOD
211 const SSL_METHOD *TLSv1_method(void)
213 return tlsv1_method();
216 const SSL_METHOD *TLSv1_server_method(void)
218 return tlsv1_server_method();
221 const SSL_METHOD *TLSv1_client_method(void)
223 return tlsv1_client_method();
227 # ifndef OPENSSL_NO_SSL3_METHOD
228 const SSL_METHOD *SSLv3_method(void)
230 return sslv3_method();
233 const SSL_METHOD *SSLv3_server_method(void)
235 return sslv3_server_method();
238 const SSL_METHOD *SSLv3_client_method(void)
240 return sslv3_client_method();
244 # ifndef OPENSSL_NO_DTLS1_2_METHOD
245 const SSL_METHOD *DTLSv1_2_method(void)
247 return dtlsv1_2_method();
250 const SSL_METHOD *DTLSv1_2_server_method(void)
252 return dtlsv1_2_server_method();
255 const SSL_METHOD *DTLSv1_2_client_method(void)
257 return dtlsv1_2_client_method();
261 # ifndef OPENSSL_NO_DTLS1_METHOD
262 const SSL_METHOD *DTLSv1_method(void)
264 return dtlsv1_method();
267 const SSL_METHOD *DTLSv1_server_method(void)
269 return dtlsv1_server_method();
272 const SSL_METHOD *DTLSv1_client_method(void)
274 return dtlsv1_client_method();