summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjsing <>2018-08-30 16:56:16 +0000
committerjsing <>2018-08-30 16:56:16 +0000
commitaa46916ffff53f4d8fa6bd701c96da70c82b1547 (patch)
tree031b7e3310063f352295a693ac1da2c62ad5d8f1
parent6f960c595dec72229260d0e58fb8c9de5a26062e (diff)
downloadopenbsd-aa46916ffff53f4d8fa6bd701c96da70c82b1547.tar.gz
openbsd-aa46916ffff53f4d8fa6bd701c96da70c82b1547.tar.bz2
openbsd-aa46916ffff53f4d8fa6bd701c96da70c82b1547.zip
Nuke ssl_pending/ssl_shutdown function pointers.
ssl3_pending() is used for all protocols and dtls1_shutdown() just calls ssl3_shutdown(), so just call the appropriate function directly instead. ok beck@ inoguchi@ tb@
-rw-r--r--src/lib/libssl/d1_both.c11
-rw-r--r--src/lib/libssl/d1_clnt.c4
-rw-r--r--src/lib/libssl/d1_meth.c4
-rw-r--r--src/lib/libssl/d1_srvr.c4
-rw-r--r--src/lib/libssl/ssl_lib.c12
-rw-r--r--src/lib/libssl/ssl_locl.h5
-rw-r--r--src/lib/libssl/t1_clnt.c10
-rw-r--r--src/lib/libssl/t1_meth.c10
-rw-r--r--src/lib/libssl/t1_srvr.c10
9 files changed, 14 insertions, 56 deletions
diff --git a/src/lib/libssl/d1_both.c b/src/lib/libssl/d1_both.c
index 074702153c..0c436f1f31 100644
--- a/src/lib/libssl/d1_both.c
+++ b/src/lib/libssl/d1_both.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: d1_both.c,v 1.53 2018/08/27 16:56:46 jsing Exp $ */ 1/* $OpenBSD: d1_both.c,v 1.54 2018/08/30 16:56:16 jsing Exp $ */
2/* 2/*
3 * DTLS implementation written by Nagendra Modadugu 3 * DTLS implementation written by Nagendra Modadugu
4 * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. 4 * (nagendra@cs.stanford.edu) for the OpenSSL project 2005.
@@ -1253,12 +1253,3 @@ dtls1_get_ccs_header(unsigned char *data, struct ccs_header_st *ccs_hdr)
1253 1253
1254 ccs_hdr->type = *(data++); 1254 ccs_hdr->type = *(data++);
1255} 1255}
1256
1257int
1258dtls1_shutdown(SSL *s)
1259{
1260 int ret;
1261
1262 ret = ssl3_shutdown(s);
1263 return ret;
1264}
diff --git a/src/lib/libssl/d1_clnt.c b/src/lib/libssl/d1_clnt.c
index ee0e620ad8..8f60f4a8c4 100644
--- a/src/lib/libssl/d1_clnt.c
+++ b/src/lib/libssl/d1_clnt.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: d1_clnt.c,v 1.80 2018/04/07 17:02:34 jsing Exp $ */ 1/* $OpenBSD: d1_clnt.c,v 1.81 2018/08/30 16:56:16 jsing Exp $ */
2/* 2/*
3 * DTLS implementation written by Nagendra Modadugu 3 * DTLS implementation written by Nagendra Modadugu
4 * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. 4 * (nagendra@cs.stanford.edu) for the OpenSSL project 2005.
@@ -136,8 +136,6 @@ static const SSL_METHOD_INTERNAL DTLSv1_client_method_internal_data = {
136 .ssl_free = dtls1_free, 136 .ssl_free = dtls1_free,
137 .ssl_accept = ssl_undefined_function, 137 .ssl_accept = ssl_undefined_function,
138 .ssl_connect = ssl3_connect, 138 .ssl_connect = ssl3_connect,
139 .ssl_shutdown = dtls1_shutdown,
140 .ssl_pending = ssl3_pending,
141 .get_ssl_method = dtls1_get_client_method, 139 .get_ssl_method = dtls1_get_client_method,
142 .get_timeout = dtls1_default_timeout, 140 .get_timeout = dtls1_default_timeout,
143 .ssl_version = ssl_undefined_void_function, 141 .ssl_version = ssl_undefined_void_function,
diff --git a/src/lib/libssl/d1_meth.c b/src/lib/libssl/d1_meth.c
index d2e8a3be60..e157dc4d93 100644
--- a/src/lib/libssl/d1_meth.c
+++ b/src/lib/libssl/d1_meth.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: d1_meth.c,v 1.16 2018/04/07 17:02:34 jsing Exp $ */ 1/* $OpenBSD: d1_meth.c,v 1.17 2018/08/30 16:56:16 jsing Exp $ */
2/* 2/*
3 * DTLS implementation written by Nagendra Modadugu 3 * DTLS implementation written by Nagendra Modadugu
4 * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. 4 * (nagendra@cs.stanford.edu) for the OpenSSL project 2005.
@@ -74,8 +74,6 @@ static const SSL_METHOD_INTERNAL DTLSv1_method_internal_data = {
74 .ssl_free = dtls1_free, 74 .ssl_free = dtls1_free,
75 .ssl_accept = ssl3_accept, 75 .ssl_accept = ssl3_accept,
76 .ssl_connect = ssl3_connect, 76 .ssl_connect = ssl3_connect,
77 .ssl_shutdown = dtls1_shutdown,
78 .ssl_pending = ssl3_pending,
79 .get_ssl_method = dtls1_get_method, 77 .get_ssl_method = dtls1_get_method,
80 .get_timeout = dtls1_default_timeout, 78 .get_timeout = dtls1_default_timeout,
81 .ssl_version = ssl_undefined_void_function, 79 .ssl_version = ssl_undefined_void_function,
diff --git a/src/lib/libssl/d1_srvr.c b/src/lib/libssl/d1_srvr.c
index 4217519783..c0ee0d00aa 100644
--- a/src/lib/libssl/d1_srvr.c
+++ b/src/lib/libssl/d1_srvr.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: d1_srvr.c,v 1.93 2018/08/24 17:30:32 jsing Exp $ */ 1/* $OpenBSD: d1_srvr.c,v 1.94 2018/08/30 16:56:16 jsing Exp $ */
2/* 2/*
3 * DTLS implementation written by Nagendra Modadugu 3 * DTLS implementation written by Nagendra Modadugu
4 * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. 4 * (nagendra@cs.stanford.edu) for the OpenSSL project 2005.
@@ -134,8 +134,6 @@ static const SSL_METHOD_INTERNAL DTLSv1_server_method_internal_data = {
134 .ssl_free = dtls1_free, 134 .ssl_free = dtls1_free,
135 .ssl_accept = ssl3_accept, 135 .ssl_accept = ssl3_accept,
136 .ssl_connect = ssl_undefined_function, 136 .ssl_connect = ssl_undefined_function,
137 .ssl_shutdown = dtls1_shutdown,
138 .ssl_pending = ssl3_pending,
139 .get_ssl_method = dtls1_get_server_method, 137 .get_ssl_method = dtls1_get_server_method,
140 .get_timeout = dtls1_default_timeout, 138 .get_timeout = dtls1_default_timeout,
141 .ssl_version = ssl_undefined_void_function, 139 .ssl_version = ssl_undefined_void_function,
diff --git a/src/lib/libssl/ssl_lib.c b/src/lib/libssl/ssl_lib.c
index 0dbc7b3707..938139e18e 100644
--- a/src/lib/libssl/ssl_lib.c
+++ b/src/lib/libssl/ssl_lib.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_lib.c,v 1.186 2018/08/24 20:30:21 tb Exp $ */ 1/* $OpenBSD: ssl_lib.c,v 1.187 2018/08/30 16:56:16 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 *
@@ -809,7 +809,7 @@ SSL_pending(const SSL *s)
809 * (Note that SSL_pending() is often used as a boolean value, 809 * (Note that SSL_pending() is often used as a boolean value,
810 * so we'd better not return -1.) 810 * so we'd better not return -1.)
811 */ 811 */
812 return (s->method->internal->ssl_pending(s)); 812 return (ssl3_pending(s));
813} 813}
814 814
815X509 * 815X509 *
@@ -1015,10 +1015,10 @@ SSL_shutdown(SSL *s)
1015 return (-1); 1015 return (-1);
1016 } 1016 }
1017 1017
1018 if ((s != NULL) && !SSL_in_init(s)) 1018 if (s != NULL && !SSL_in_init(s))
1019 return (s->method->internal->ssl_shutdown(s)); 1019 return (ssl3_shutdown(s));
1020 else 1020
1021 return (1); 1021 return (1);
1022} 1022}
1023 1023
1024int 1024int
diff --git a/src/lib/libssl/ssl_locl.h b/src/lib/libssl/ssl_locl.h
index 2592d56a61..b6d71492fd 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.211 2018/08/27 17:11:32 jsing Exp $ */ 1/* $OpenBSD: ssl_locl.h,v 1.212 2018/08/30 16:56:16 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 *
@@ -379,7 +379,6 @@ typedef struct ssl_method_internal_st {
379 379
380 int (*ssl_accept)(SSL *s); 380 int (*ssl_accept)(SSL *s);
381 int (*ssl_connect)(SSL *s); 381 int (*ssl_connect)(SSL *s);
382 int (*ssl_shutdown)(SSL *s);
383 382
384 int (*ssl_renegotiate)(SSL *s); 383 int (*ssl_renegotiate)(SSL *s);
385 int (*ssl_renegotiate_check)(SSL *s); 384 int (*ssl_renegotiate_check)(SSL *s);
@@ -390,7 +389,6 @@ typedef struct ssl_method_internal_st {
390 int len, int peek); 389 int len, int peek);
391 int (*ssl_write_bytes)(SSL *s, int type, const void *buf_, int len); 390 int (*ssl_write_bytes)(SSL *s, int type, const void *buf_, int len);
392 391
393 int (*ssl_pending)(const SSL *s);
394 const struct ssl_method_st *(*get_ssl_method)(int version); 392 const struct ssl_method_st *(*get_ssl_method)(int version);
395 393
396 long (*get_timeout)(void); 394 long (*get_timeout)(void);
@@ -1221,7 +1219,6 @@ int dtls1_new(SSL *s);
1221void dtls1_free(SSL *s); 1219void dtls1_free(SSL *s);
1222void dtls1_clear(SSL *s); 1220void dtls1_clear(SSL *s);
1223long dtls1_ctrl(SSL *s, int cmd, long larg, void *parg); 1221long dtls1_ctrl(SSL *s, int cmd, long larg, void *parg);
1224int dtls1_shutdown(SSL *s);
1225 1222
1226long dtls1_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok); 1223long dtls1_get_message(SSL *s, int st1, int stn, int mt, long max, int *ok);
1227int dtls1_get_record(SSL *s); 1224int dtls1_get_record(SSL *s);
diff --git a/src/lib/libssl/t1_clnt.c b/src/lib/libssl/t1_clnt.c
index 90188e0ec3..4e3b208743 100644
--- a/src/lib/libssl/t1_clnt.c
+++ b/src/lib/libssl/t1_clnt.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: t1_clnt.c,v 1.25 2018/04/07 17:02:34 jsing Exp $ */ 1/* $OpenBSD: t1_clnt.c,v 1.26 2018/08/30 16:56:16 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 *
@@ -73,8 +73,6 @@ static const SSL_METHOD_INTERNAL TLS_client_method_internal_data = {
73 .ssl_free = tls1_free, 73 .ssl_free = tls1_free,
74 .ssl_accept = ssl_undefined_function, 74 .ssl_accept = ssl_undefined_function,
75 .ssl_connect = ssl3_connect, 75 .ssl_connect = ssl3_connect,
76 .ssl_shutdown = ssl3_shutdown,
77 .ssl_pending = ssl3_pending,
78 .get_ssl_method = tls1_get_client_method, 76 .get_ssl_method = tls1_get_client_method,
79 .get_timeout = tls1_default_timeout, 77 .get_timeout = tls1_default_timeout,
80 .ssl_version = ssl_undefined_void_function, 78 .ssl_version = ssl_undefined_void_function,
@@ -104,8 +102,6 @@ static const SSL_METHOD_INTERNAL TLSv1_client_method_internal_data = {
104 .ssl_free = tls1_free, 102 .ssl_free = tls1_free,
105 .ssl_accept = ssl_undefined_function, 103 .ssl_accept = ssl_undefined_function,
106 .ssl_connect = ssl3_connect, 104 .ssl_connect = ssl3_connect,
107 .ssl_shutdown = ssl3_shutdown,
108 .ssl_pending = ssl3_pending,
109 .get_ssl_method = tls1_get_client_method, 105 .get_ssl_method = tls1_get_client_method,
110 .get_timeout = tls1_default_timeout, 106 .get_timeout = tls1_default_timeout,
111 .ssl_version = ssl_undefined_void_function, 107 .ssl_version = ssl_undefined_void_function,
@@ -135,8 +131,6 @@ static const SSL_METHOD_INTERNAL TLSv1_1_client_method_internal_data = {
135 .ssl_free = tls1_free, 131 .ssl_free = tls1_free,
136 .ssl_accept = ssl_undefined_function, 132 .ssl_accept = ssl_undefined_function,
137 .ssl_connect = ssl3_connect, 133 .ssl_connect = ssl3_connect,
138 .ssl_shutdown = ssl3_shutdown,
139 .ssl_pending = ssl3_pending,
140 .get_ssl_method = tls1_get_client_method, 134 .get_ssl_method = tls1_get_client_method,
141 .get_timeout = tls1_default_timeout, 135 .get_timeout = tls1_default_timeout,
142 .ssl_version = ssl_undefined_void_function, 136 .ssl_version = ssl_undefined_void_function,
@@ -166,8 +160,6 @@ static const SSL_METHOD_INTERNAL TLSv1_2_client_method_internal_data = {
166 .ssl_free = tls1_free, 160 .ssl_free = tls1_free,
167 .ssl_accept = ssl_undefined_function, 161 .ssl_accept = ssl_undefined_function,
168 .ssl_connect = ssl3_connect, 162 .ssl_connect = ssl3_connect,
169 .ssl_shutdown = ssl3_shutdown,
170 .ssl_pending = ssl3_pending,
171 .get_ssl_method = tls1_get_client_method, 163 .get_ssl_method = tls1_get_client_method,
172 .get_timeout = tls1_default_timeout, 164 .get_timeout = tls1_default_timeout,
173 .ssl_version = ssl_undefined_void_function, 165 .ssl_version = ssl_undefined_void_function,
diff --git a/src/lib/libssl/t1_meth.c b/src/lib/libssl/t1_meth.c
index 2e76c09e5c..5ce8c9135b 100644
--- a/src/lib/libssl/t1_meth.c
+++ b/src/lib/libssl/t1_meth.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: t1_meth.c,v 1.24 2018/04/07 17:02:34 jsing Exp $ */ 1/* $OpenBSD: t1_meth.c,v 1.25 2018/08/30 16:56:16 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 *
@@ -73,8 +73,6 @@ static const SSL_METHOD_INTERNAL TLS_method_internal_data = {
73 .ssl_free = tls1_free, 73 .ssl_free = tls1_free,
74 .ssl_accept = ssl3_accept, 74 .ssl_accept = ssl3_accept,
75 .ssl_connect = ssl3_connect, 75 .ssl_connect = ssl3_connect,
76 .ssl_shutdown = ssl3_shutdown,
77 .ssl_pending = ssl3_pending,
78 .get_ssl_method = tls1_get_method, 76 .get_ssl_method = tls1_get_method,
79 .get_timeout = tls1_default_timeout, 77 .get_timeout = tls1_default_timeout,
80 .ssl_version = ssl_undefined_void_function, 78 .ssl_version = ssl_undefined_void_function,
@@ -104,8 +102,6 @@ static const SSL_METHOD_INTERNAL TLSv1_method_internal_data = {
104 .ssl_free = tls1_free, 102 .ssl_free = tls1_free,
105 .ssl_accept = ssl3_accept, 103 .ssl_accept = ssl3_accept,
106 .ssl_connect = ssl3_connect, 104 .ssl_connect = ssl3_connect,
107 .ssl_shutdown = ssl3_shutdown,
108 .ssl_pending = ssl3_pending,
109 .get_ssl_method = tls1_get_method, 105 .get_ssl_method = tls1_get_method,
110 .get_timeout = tls1_default_timeout, 106 .get_timeout = tls1_default_timeout,
111 .ssl_version = ssl_undefined_void_function, 107 .ssl_version = ssl_undefined_void_function,
@@ -135,8 +131,6 @@ static const SSL_METHOD_INTERNAL TLSv1_1_method_internal_data = {
135 .ssl_free = tls1_free, 131 .ssl_free = tls1_free,
136 .ssl_accept = ssl3_accept, 132 .ssl_accept = ssl3_accept,
137 .ssl_connect = ssl3_connect, 133 .ssl_connect = ssl3_connect,
138 .ssl_shutdown = ssl3_shutdown,
139 .ssl_pending = ssl3_pending,
140 .get_ssl_method = tls1_get_method, 134 .get_ssl_method = tls1_get_method,
141 .get_timeout = tls1_default_timeout, 135 .get_timeout = tls1_default_timeout,
142 .ssl_version = ssl_undefined_void_function, 136 .ssl_version = ssl_undefined_void_function,
@@ -166,8 +160,6 @@ static const SSL_METHOD_INTERNAL TLSv1_2_method_internal_data = {
166 .ssl_free = tls1_free, 160 .ssl_free = tls1_free,
167 .ssl_accept = ssl3_accept, 161 .ssl_accept = ssl3_accept,
168 .ssl_connect = ssl3_connect, 162 .ssl_connect = ssl3_connect,
169 .ssl_shutdown = ssl3_shutdown,
170 .ssl_pending = ssl3_pending,
171 .get_ssl_method = tls1_get_method, 163 .get_ssl_method = tls1_get_method,
172 .get_timeout = tls1_default_timeout, 164 .get_timeout = tls1_default_timeout,
173 .ssl_version = ssl_undefined_void_function, 165 .ssl_version = ssl_undefined_void_function,
diff --git a/src/lib/libssl/t1_srvr.c b/src/lib/libssl/t1_srvr.c
index c8b65086dc..02c5cf46ae 100644
--- a/src/lib/libssl/t1_srvr.c
+++ b/src/lib/libssl/t1_srvr.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: t1_srvr.c,v 1.26 2018/04/07 17:02:34 jsing Exp $ */ 1/* $OpenBSD: t1_srvr.c,v 1.27 2018/08/30 16:56:16 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 *
@@ -74,8 +74,6 @@ static const SSL_METHOD_INTERNAL TLS_server_method_internal_data = {
74 .ssl_free = tls1_free, 74 .ssl_free = tls1_free,
75 .ssl_accept = ssl3_accept, 75 .ssl_accept = ssl3_accept,
76 .ssl_connect = ssl_undefined_function, 76 .ssl_connect = ssl_undefined_function,
77 .ssl_shutdown = ssl3_shutdown,
78 .ssl_pending = ssl3_pending,
79 .get_ssl_method = tls1_get_server_method, 77 .get_ssl_method = tls1_get_server_method,
80 .get_timeout = tls1_default_timeout, 78 .get_timeout = tls1_default_timeout,
81 .ssl_version = ssl_undefined_void_function, 79 .ssl_version = ssl_undefined_void_function,
@@ -105,8 +103,6 @@ static const SSL_METHOD_INTERNAL TLSv1_server_method_internal_data = {
105 .ssl_free = tls1_free, 103 .ssl_free = tls1_free,
106 .ssl_accept = ssl3_accept, 104 .ssl_accept = ssl3_accept,
107 .ssl_connect = ssl_undefined_function, 105 .ssl_connect = ssl_undefined_function,
108 .ssl_shutdown = ssl3_shutdown,
109 .ssl_pending = ssl3_pending,
110 .get_ssl_method = tls1_get_server_method, 106 .get_ssl_method = tls1_get_server_method,
111 .get_timeout = tls1_default_timeout, 107 .get_timeout = tls1_default_timeout,
112 .ssl_version = ssl_undefined_void_function, 108 .ssl_version = ssl_undefined_void_function,
@@ -136,8 +132,6 @@ static const SSL_METHOD_INTERNAL TLSv1_1_server_method_internal_data = {
136 .ssl_free = tls1_free, 132 .ssl_free = tls1_free,
137 .ssl_accept = ssl3_accept, 133 .ssl_accept = ssl3_accept,
138 .ssl_connect = ssl_undefined_function, 134 .ssl_connect = ssl_undefined_function,
139 .ssl_shutdown = ssl3_shutdown,
140 .ssl_pending = ssl3_pending,
141 .get_ssl_method = tls1_get_server_method, 135 .get_ssl_method = tls1_get_server_method,
142 .get_timeout = tls1_default_timeout, 136 .get_timeout = tls1_default_timeout,
143 .ssl_version = ssl_undefined_void_function, 137 .ssl_version = ssl_undefined_void_function,
@@ -167,8 +161,6 @@ static const SSL_METHOD_INTERNAL TLSv1_2_server_method_internal_data = {
167 .ssl_free = tls1_free, 161 .ssl_free = tls1_free,
168 .ssl_accept = ssl3_accept, 162 .ssl_accept = ssl3_accept,
169 .ssl_connect = ssl_undefined_function, 163 .ssl_connect = ssl_undefined_function,
170 .ssl_shutdown = ssl3_shutdown,
171 .ssl_pending = ssl3_pending,
172 .get_ssl_method = tls1_get_server_method, 164 .get_ssl_method = tls1_get_server_method,
173 .get_timeout = tls1_default_timeout, 165 .get_timeout = tls1_default_timeout,
174 .ssl_version = ssl_undefined_void_function, 166 .ssl_version = ssl_undefined_void_function,