summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorjsing <>2020-09-15 09:41:24 +0000
committerjsing <>2020-09-15 09:41:24 +0000
commit08007ba8b24a358556376f4720a481deae2dee22 (patch)
tree6681ab3b7505116dd0889b41f69b7cc287d44704 /src/lib
parentd7f1a6dd6814bc657a1fa9fc9821d8e7f3b65d00 (diff)
downloadopenbsd-08007ba8b24a358556376f4720a481deae2dee22.tar.gz
openbsd-08007ba8b24a358556376f4720a481deae2dee22.tar.bz2
openbsd-08007ba8b24a358556376f4720a481deae2dee22.zip
Mop up the get_ssl_method function pointer.
Now that get_ssl_method is no longer used, we can garbage collect the function pointer and some associated machinery. ok beck@
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libssl/ssl_locl.h4
-rw-r--r--src/lib/libssl/ssl_methods.c48
2 files changed, 2 insertions, 50 deletions
diff --git a/src/lib/libssl/ssl_locl.h b/src/lib/libssl/ssl_locl.h
index 540afee004..4ac6b76cd3 100644
--- a/src/lib/libssl/ssl_locl.h
+++ b/src/lib/libssl/ssl_locl.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_locl.h,v 1.291 2020/09/13 16:49:05 jsing Exp $ */ 1/* $OpenBSD: ssl_locl.h,v 1.292 2020/09/15 09:41:24 jsing Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -383,8 +383,6 @@ typedef struct ssl_method_internal_st {
383 int peek); 383 int peek);
384 int (*ssl_write_bytes)(SSL *s, int type, const void *buf_, int len); 384 int (*ssl_write_bytes)(SSL *s, int type, const void *buf_, int len);
385 385
386 const struct ssl_method_st *(*get_ssl_method)(int version);
387
388 struct ssl3_enc_method *ssl3_enc; /* Extra SSLv3/TLS stuff */ 386 struct ssl3_enc_method *ssl3_enc; /* Extra SSLv3/TLS stuff */
389} SSL_METHOD_INTERNAL; 387} SSL_METHOD_INTERNAL;
390 388
diff --git a/src/lib/libssl/ssl_methods.c b/src/lib/libssl/ssl_methods.c
index 5866e30f67..c500d7ac06 100644
--- a/src/lib/libssl/ssl_methods.c
+++ b/src/lib/libssl/ssl_methods.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_methods.c,v 1.14 2020/07/07 19:31:11 jsing Exp $ */ 1/* $OpenBSD: ssl_methods.c,v 1.15 2020/09/15 09:41:24 jsing Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -69,7 +69,6 @@ static const SSL_METHOD_INTERNAL DTLSv1_client_method_internal_data = {
69 .ssl_accept = ssl_undefined_function, 69 .ssl_accept = ssl_undefined_function,
70 .ssl_connect = ssl3_connect, 70 .ssl_connect = ssl3_connect,
71 .ssl_shutdown = ssl3_shutdown, 71 .ssl_shutdown = ssl3_shutdown,
72 .get_ssl_method = dtls1_get_client_method,
73 .ssl_renegotiate = ssl3_renegotiate, 72 .ssl_renegotiate = ssl3_renegotiate,
74 .ssl_renegotiate_check = ssl3_renegotiate_check, 73 .ssl_renegotiate_check = ssl3_renegotiate_check,
75 .ssl_pending = ssl3_pending, 74 .ssl_pending = ssl3_pending,
@@ -107,8 +106,6 @@ dtls1_get_client_method(int ver)
107 return (NULL); 106 return (NULL);
108} 107}
109 108
110static const SSL_METHOD *dtls1_get_method(int ver);
111
112static const SSL_METHOD_INTERNAL DTLSv1_method_internal_data = { 109static const SSL_METHOD_INTERNAL DTLSv1_method_internal_data = {
113 .version = DTLS1_VERSION, 110 .version = DTLS1_VERSION,
114 .min_version = DTLS1_VERSION, 111 .min_version = DTLS1_VERSION,
@@ -119,7 +116,6 @@ static const SSL_METHOD_INTERNAL DTLSv1_method_internal_data = {
119 .ssl_accept = ssl3_accept, 116 .ssl_accept = ssl3_accept,
120 .ssl_connect = ssl3_connect, 117 .ssl_connect = ssl3_connect,
121 .ssl_shutdown = ssl3_shutdown, 118 .ssl_shutdown = ssl3_shutdown,
122 .get_ssl_method = dtls1_get_method,
123 .ssl_renegotiate = ssl3_renegotiate, 119 .ssl_renegotiate = ssl3_renegotiate,
124 .ssl_renegotiate_check = ssl3_renegotiate_check, 120 .ssl_renegotiate_check = ssl3_renegotiate_check,
125 .ssl_pending = ssl3_pending, 121 .ssl_pending = ssl3_pending,
@@ -149,14 +145,6 @@ DTLS_method(void)
149 return DTLSv1_method(); 145 return DTLSv1_method();
150} 146}
151 147
152static const SSL_METHOD *
153dtls1_get_method(int ver)
154{
155 if (ver == DTLS1_VERSION)
156 return (DTLSv1_method());
157 return (NULL);
158}
159
160static const SSL_METHOD_INTERNAL DTLSv1_server_method_internal_data = { 148static const SSL_METHOD_INTERNAL DTLSv1_server_method_internal_data = {
161 .version = DTLS1_VERSION, 149 .version = DTLS1_VERSION,
162 .min_version = DTLS1_VERSION, 150 .min_version = DTLS1_VERSION,
@@ -167,7 +155,6 @@ static const SSL_METHOD_INTERNAL DTLSv1_server_method_internal_data = {
167 .ssl_accept = ssl3_accept, 155 .ssl_accept = ssl3_accept,
168 .ssl_connect = ssl_undefined_function, 156 .ssl_connect = ssl_undefined_function,
169 .ssl_shutdown = ssl3_shutdown, 157 .ssl_shutdown = ssl3_shutdown,
170 .get_ssl_method = dtls1_get_server_method,
171 .ssl_renegotiate = ssl3_renegotiate, 158 .ssl_renegotiate = ssl3_renegotiate,
172 .ssl_renegotiate_check = ssl3_renegotiate_check, 159 .ssl_renegotiate_check = ssl3_renegotiate_check,
173 .ssl_pending = ssl3_pending, 160 .ssl_pending = ssl3_pending,
@@ -216,7 +203,6 @@ static const SSL_METHOD_INTERNAL TLS_client_method_internal_data = {
216 .ssl_accept = ssl_undefined_function, 203 .ssl_accept = ssl_undefined_function,
217 .ssl_connect = tls13_legacy_connect, 204 .ssl_connect = tls13_legacy_connect,
218 .ssl_shutdown = tls13_legacy_shutdown, 205 .ssl_shutdown = tls13_legacy_shutdown,
219 .get_ssl_method = tls1_get_client_method,
220 .ssl_renegotiate = ssl_undefined_function, 206 .ssl_renegotiate = ssl_undefined_function,
221 .ssl_renegotiate_check = ssl_ok, 207 .ssl_renegotiate_check = ssl_ok,
222 .ssl_pending = tls13_legacy_pending, 208 .ssl_pending = tls13_legacy_pending,
@@ -245,7 +231,6 @@ static const SSL_METHOD_INTERNAL TLS_legacy_client_method_internal_data = {
245 .ssl_accept = ssl_undefined_function, 231 .ssl_accept = ssl_undefined_function,
246 .ssl_connect = ssl3_connect, 232 .ssl_connect = ssl3_connect,
247 .ssl_shutdown = ssl3_shutdown, 233 .ssl_shutdown = ssl3_shutdown,
248 .get_ssl_method = tls1_get_client_method,
249 .ssl_renegotiate = ssl_undefined_function, 234 .ssl_renegotiate = ssl_undefined_function,
250 .ssl_renegotiate_check = ssl_ok, 235 .ssl_renegotiate_check = ssl_ok,
251 .ssl_pending = ssl3_pending, 236 .ssl_pending = ssl3_pending,
@@ -273,7 +258,6 @@ static const SSL_METHOD_INTERNAL TLSv1_client_method_internal_data = {
273 .ssl_accept = ssl_undefined_function, 258 .ssl_accept = ssl_undefined_function,
274 .ssl_connect = ssl3_connect, 259 .ssl_connect = ssl3_connect,
275 .ssl_shutdown = ssl3_shutdown, 260 .ssl_shutdown = ssl3_shutdown,
276 .get_ssl_method = tls1_get_client_method,
277 .ssl_renegotiate = ssl3_renegotiate, 261 .ssl_renegotiate = ssl3_renegotiate,
278 .ssl_renegotiate_check = ssl3_renegotiate_check, 262 .ssl_renegotiate_check = ssl3_renegotiate_check,
279 .ssl_pending = ssl3_pending, 263 .ssl_pending = ssl3_pending,
@@ -301,7 +285,6 @@ static const SSL_METHOD_INTERNAL TLSv1_1_client_method_internal_data = {
301 .ssl_accept = ssl_undefined_function, 285 .ssl_accept = ssl_undefined_function,
302 .ssl_connect = ssl3_connect, 286 .ssl_connect = ssl3_connect,
303 .ssl_shutdown = ssl3_shutdown, 287 .ssl_shutdown = ssl3_shutdown,
304 .get_ssl_method = tls1_get_client_method,
305 .ssl_renegotiate = ssl3_renegotiate, 288 .ssl_renegotiate = ssl3_renegotiate,
306 .ssl_renegotiate_check = ssl3_renegotiate_check, 289 .ssl_renegotiate_check = ssl3_renegotiate_check,
307 .ssl_pending = ssl3_pending, 290 .ssl_pending = ssl3_pending,
@@ -329,7 +312,6 @@ static const SSL_METHOD_INTERNAL TLSv1_2_client_method_internal_data = {
329 .ssl_accept = ssl_undefined_function, 312 .ssl_accept = ssl_undefined_function,
330 .ssl_connect = ssl3_connect, 313 .ssl_connect = ssl3_connect,
331 .ssl_shutdown = ssl3_shutdown, 314 .ssl_shutdown = ssl3_shutdown,
332 .get_ssl_method = tls1_get_client_method,
333 .ssl_renegotiate = ssl3_renegotiate, 315 .ssl_renegotiate = ssl3_renegotiate,
334 .ssl_renegotiate_check = ssl3_renegotiate_check, 316 .ssl_renegotiate_check = ssl3_renegotiate_check,
335 .ssl_pending = ssl3_pending, 317 .ssl_pending = ssl3_pending,
@@ -403,8 +385,6 @@ TLSv1_2_client_method(void)
403 return (&TLSv1_2_client_method_data); 385 return (&TLSv1_2_client_method_data);
404} 386}
405 387
406static const SSL_METHOD *tls1_get_method(int ver);
407
408#if defined(LIBRESSL_HAS_TLS1_3_CLIENT) && defined(LIBRESSL_HAS_TLS1_3_SERVER) 388#if defined(LIBRESSL_HAS_TLS1_3_CLIENT) && defined(LIBRESSL_HAS_TLS1_3_SERVER)
409static const SSL_METHOD_INTERNAL TLS_method_internal_data = { 389static const SSL_METHOD_INTERNAL TLS_method_internal_data = {
410 .version = TLS1_3_VERSION, 390 .version = TLS1_3_VERSION,
@@ -416,7 +396,6 @@ static const SSL_METHOD_INTERNAL TLS_method_internal_data = {
416 .ssl_accept = tls13_legacy_accept, 396 .ssl_accept = tls13_legacy_accept,
417 .ssl_connect = tls13_legacy_connect, 397 .ssl_connect = tls13_legacy_connect,
418 .ssl_shutdown = tls13_legacy_shutdown, 398 .ssl_shutdown = tls13_legacy_shutdown,
419 .get_ssl_method = tls1_get_client_method,
420 .ssl_renegotiate = ssl_undefined_function, 399 .ssl_renegotiate = ssl_undefined_function,
421 .ssl_renegotiate_check = ssl_ok, 400 .ssl_renegotiate_check = ssl_ok,
422 .ssl_pending = tls13_legacy_pending, 401 .ssl_pending = tls13_legacy_pending,
@@ -445,7 +424,6 @@ static const SSL_METHOD_INTERNAL TLS_legacy_method_internal_data = {
445 .ssl_accept = ssl3_accept, 424 .ssl_accept = ssl3_accept,
446 .ssl_connect = ssl3_connect, 425 .ssl_connect = ssl3_connect,
447 .ssl_shutdown = ssl3_shutdown, 426 .ssl_shutdown = ssl3_shutdown,
448 .get_ssl_method = tls1_get_method,
449 .ssl_renegotiate = ssl_undefined_function, 427 .ssl_renegotiate = ssl_undefined_function,
450 .ssl_renegotiate_check = ssl_ok, 428 .ssl_renegotiate_check = ssl_ok,
451 .ssl_pending = ssl3_pending, 429 .ssl_pending = ssl3_pending,
@@ -473,7 +451,6 @@ static const SSL_METHOD_INTERNAL TLSv1_method_internal_data = {
473 .ssl_accept = ssl3_accept, 451 .ssl_accept = ssl3_accept,
474 .ssl_connect = ssl3_connect, 452 .ssl_connect = ssl3_connect,
475 .ssl_shutdown = ssl3_shutdown, 453 .ssl_shutdown = ssl3_shutdown,
476 .get_ssl_method = tls1_get_method,
477 .ssl_renegotiate = ssl3_renegotiate, 454 .ssl_renegotiate = ssl3_renegotiate,
478 .ssl_renegotiate_check = ssl3_renegotiate_check, 455 .ssl_renegotiate_check = ssl3_renegotiate_check,
479 .ssl_pending = ssl3_pending, 456 .ssl_pending = ssl3_pending,
@@ -501,7 +478,6 @@ static const SSL_METHOD_INTERNAL TLSv1_1_method_internal_data = {
501 .ssl_accept = ssl3_accept, 478 .ssl_accept = ssl3_accept,
502 .ssl_connect = ssl3_connect, 479 .ssl_connect = ssl3_connect,
503 .ssl_shutdown = ssl3_shutdown, 480 .ssl_shutdown = ssl3_shutdown,
504 .get_ssl_method = tls1_get_method,
505 .ssl_renegotiate = ssl3_renegotiate, 481 .ssl_renegotiate = ssl3_renegotiate,
506 .ssl_renegotiate_check = ssl3_renegotiate_check, 482 .ssl_renegotiate_check = ssl3_renegotiate_check,
507 .ssl_pending = ssl3_pending, 483 .ssl_pending = ssl3_pending,
@@ -529,7 +505,6 @@ static const SSL_METHOD_INTERNAL TLSv1_2_method_internal_data = {
529 .ssl_accept = ssl3_accept, 505 .ssl_accept = ssl3_accept,
530 .ssl_connect = ssl3_connect, 506 .ssl_connect = ssl3_connect,
531 .ssl_shutdown = ssl3_shutdown, 507 .ssl_shutdown = ssl3_shutdown,
532 .get_ssl_method = tls1_get_method,
533 .ssl_renegotiate = ssl3_renegotiate, 508 .ssl_renegotiate = ssl3_renegotiate,
534 .ssl_renegotiate_check = ssl3_renegotiate_check, 509 .ssl_renegotiate_check = ssl3_renegotiate_check,
535 .ssl_pending = ssl3_pending, 510 .ssl_pending = ssl3_pending,
@@ -547,22 +522,6 @@ static const SSL_METHOD TLSv1_2_method_data = {
547 .internal = &TLSv1_2_method_internal_data, 522 .internal = &TLSv1_2_method_internal_data,
548}; 523};
549 524
550static const SSL_METHOD *
551tls1_get_method(int ver)
552{
553#if defined(LIBRESSL_HAS_TLS1_3_CLIENT) && defined(LIBRESSL_HAS_TLS1_3_SERVER)
554 if (ver == TLS1_3_VERSION)
555 return (TLS_method());
556#endif
557 if (ver == TLS1_2_VERSION)
558 return (TLSv1_2_method());
559 if (ver == TLS1_1_VERSION)
560 return (TLSv1_1_method());
561 if (ver == TLS1_VERSION)
562 return (TLSv1_method());
563 return (NULL);
564}
565
566const SSL_METHOD * 525const SSL_METHOD *
567SSLv23_method(void) 526SSLv23_method(void)
568{ 527{
@@ -614,7 +573,6 @@ static const SSL_METHOD_INTERNAL TLS_server_method_internal_data = {
614 .ssl_accept = tls13_legacy_accept, 573 .ssl_accept = tls13_legacy_accept,
615 .ssl_connect = ssl_undefined_function, 574 .ssl_connect = ssl_undefined_function,
616 .ssl_shutdown = tls13_legacy_shutdown, 575 .ssl_shutdown = tls13_legacy_shutdown,
617 .get_ssl_method = tls1_get_server_method,
618 .ssl_renegotiate = ssl_undefined_function, 576 .ssl_renegotiate = ssl_undefined_function,
619 .ssl_renegotiate_check = ssl_ok, 577 .ssl_renegotiate_check = ssl_ok,
620 .ssl_pending = tls13_legacy_pending, 578 .ssl_pending = tls13_legacy_pending,
@@ -643,7 +601,6 @@ static const SSL_METHOD_INTERNAL TLS_legacy_server_method_internal_data = {
643 .ssl_accept = ssl3_accept, 601 .ssl_accept = ssl3_accept,
644 .ssl_connect = ssl_undefined_function, 602 .ssl_connect = ssl_undefined_function,
645 .ssl_shutdown = ssl3_shutdown, 603 .ssl_shutdown = ssl3_shutdown,
646 .get_ssl_method = tls1_get_server_method,
647 .ssl_renegotiate = ssl_undefined_function, 604 .ssl_renegotiate = ssl_undefined_function,
648 .ssl_renegotiate_check = ssl_ok, 605 .ssl_renegotiate_check = ssl_ok,
649 .ssl_pending = ssl3_pending, 606 .ssl_pending = ssl3_pending,
@@ -671,7 +628,6 @@ static const SSL_METHOD_INTERNAL TLSv1_server_method_internal_data = {
671 .ssl_accept = ssl3_accept, 628 .ssl_accept = ssl3_accept,
672 .ssl_connect = ssl_undefined_function, 629 .ssl_connect = ssl_undefined_function,
673 .ssl_shutdown = ssl3_shutdown, 630 .ssl_shutdown = ssl3_shutdown,
674 .get_ssl_method = tls1_get_server_method,
675 .ssl_renegotiate = ssl3_renegotiate, 631 .ssl_renegotiate = ssl3_renegotiate,
676 .ssl_renegotiate_check = ssl3_renegotiate_check, 632 .ssl_renegotiate_check = ssl3_renegotiate_check,
677 .ssl_pending = ssl3_pending, 633 .ssl_pending = ssl3_pending,
@@ -699,7 +655,6 @@ static const SSL_METHOD_INTERNAL TLSv1_1_server_method_internal_data = {
699 .ssl_accept = ssl3_accept, 655 .ssl_accept = ssl3_accept,
700 .ssl_connect = ssl_undefined_function, 656 .ssl_connect = ssl_undefined_function,
701 .ssl_shutdown = ssl3_shutdown, 657 .ssl_shutdown = ssl3_shutdown,
702 .get_ssl_method = tls1_get_server_method,
703 .ssl_renegotiate = ssl3_renegotiate, 658 .ssl_renegotiate = ssl3_renegotiate,
704 .ssl_renegotiate_check = ssl3_renegotiate_check, 659 .ssl_renegotiate_check = ssl3_renegotiate_check,
705 .ssl_pending = ssl3_pending, 660 .ssl_pending = ssl3_pending,
@@ -727,7 +682,6 @@ static const SSL_METHOD_INTERNAL TLSv1_2_server_method_internal_data = {
727 .ssl_accept = ssl3_accept, 682 .ssl_accept = ssl3_accept,
728 .ssl_connect = ssl_undefined_function, 683 .ssl_connect = ssl_undefined_function,
729 .ssl_shutdown = ssl3_shutdown, 684 .ssl_shutdown = ssl3_shutdown,
730 .get_ssl_method = tls1_get_server_method,
731 .ssl_renegotiate = ssl3_renegotiate, 685 .ssl_renegotiate = ssl3_renegotiate,
732 .ssl_renegotiate_check = ssl3_renegotiate_check, 686 .ssl_renegotiate_check = ssl3_renegotiate_check,
733 .ssl_pending = ssl3_pending, 687 .ssl_pending = ssl3_pending,