diff options
Diffstat (limited to 'src/lib/libssl')
28 files changed, 176 insertions, 30 deletions
diff --git a/src/lib/libssl/d1_clnt.c b/src/lib/libssl/d1_clnt.c index 3687f5917c..c344c1bcdc 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.41 2014/12/14 16:19:38 jsing Exp $ */ | 1 | /* $OpenBSD: d1_clnt.c,v 1.42 2015/02/06 08:30:23 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. |
@@ -146,6 +146,8 @@ const SSL_METHOD DTLSv1_client_method_data = { | |||
146 | .ssl_dispatch_alert = dtls1_dispatch_alert, | 146 | .ssl_dispatch_alert = dtls1_dispatch_alert, |
147 | .ssl_ctrl = dtls1_ctrl, | 147 | .ssl_ctrl = dtls1_ctrl, |
148 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 148 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
149 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
150 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
149 | .ssl_pending = ssl3_pending, | 151 | .ssl_pending = ssl3_pending, |
150 | .num_ciphers = ssl3_num_ciphers, | 152 | .num_ciphers = ssl3_num_ciphers, |
151 | .get_cipher = dtls1_get_cipher, | 153 | .get_cipher = dtls1_get_cipher, |
diff --git a/src/lib/libssl/d1_meth.c b/src/lib/libssl/d1_meth.c index 527b47e98a..7f279a4f50 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.8 2014/12/14 15:30:50 jsing Exp $ */ | 1 | /* $OpenBSD: d1_meth.c,v 1.9 2015/02/06 08:30:23 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. |
@@ -84,6 +84,8 @@ const SSL_METHOD DTLSv1_method_data = { | |||
84 | .ssl_dispatch_alert = dtls1_dispatch_alert, | 84 | .ssl_dispatch_alert = dtls1_dispatch_alert, |
85 | .ssl_ctrl = dtls1_ctrl, | 85 | .ssl_ctrl = dtls1_ctrl, |
86 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 86 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
87 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
88 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
87 | .ssl_pending = ssl3_pending, | 89 | .ssl_pending = ssl3_pending, |
88 | .num_ciphers = ssl3_num_ciphers, | 90 | .num_ciphers = ssl3_num_ciphers, |
89 | .get_cipher = dtls1_get_cipher, | 91 | .get_cipher = dtls1_get_cipher, |
diff --git a/src/lib/libssl/d1_srvr.c b/src/lib/libssl/d1_srvr.c index 057d92109c..82f846d236 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.46 2014/12/15 00:46:53 doug Exp $ */ | 1 | /* $OpenBSD: d1_srvr.c,v 1.47 2015/02/06 08:30:23 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. |
@@ -147,6 +147,8 @@ const SSL_METHOD DTLSv1_server_method_data = { | |||
147 | .ssl_dispatch_alert = dtls1_dispatch_alert, | 147 | .ssl_dispatch_alert = dtls1_dispatch_alert, |
148 | .ssl_ctrl = dtls1_ctrl, | 148 | .ssl_ctrl = dtls1_ctrl, |
149 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 149 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
150 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
151 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
150 | .ssl_pending = ssl3_pending, | 152 | .ssl_pending = ssl3_pending, |
151 | .num_ciphers = ssl3_num_ciphers, | 153 | .num_ciphers = ssl3_num_ciphers, |
152 | .get_cipher = dtls1_get_cipher, | 154 | .get_cipher = dtls1_get_cipher, |
diff --git a/src/lib/libssl/s23_clnt.c b/src/lib/libssl/s23_clnt.c index 28ea24c173..4159ae0580 100644 --- a/src/lib/libssl/s23_clnt.c +++ b/src/lib/libssl/s23_clnt.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s23_clnt.c,v 1.35 2014/12/10 15:43:31 jsing Exp $ */ | 1 | /* $OpenBSD: s23_clnt.c,v 1.36 2015/02/06 08:30:23 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 | * |
@@ -140,6 +140,8 @@ const SSL_METHOD SSLv23_client_method_data = { | |||
140 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 140 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
141 | .ssl_ctrl = ssl3_ctrl, | 141 | .ssl_ctrl = ssl3_ctrl, |
142 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 142 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
143 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
144 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
143 | .ssl_pending = ssl_undefined_const_function, | 145 | .ssl_pending = ssl_undefined_const_function, |
144 | .num_ciphers = ssl3_num_ciphers, | 146 | .num_ciphers = ssl3_num_ciphers, |
145 | .get_cipher = ssl3_get_cipher, | 147 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/s23_srvr.c b/src/lib/libssl/s23_srvr.c index a7686c3f40..9e0ee453db 100644 --- a/src/lib/libssl/s23_srvr.c +++ b/src/lib/libssl/s23_srvr.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s23_srvr.c,v 1.37 2014/12/10 15:43:31 jsing Exp $ */ | 1 | /* $OpenBSD: s23_srvr.c,v 1.38 2015/02/06 08:30:23 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 | * |
@@ -139,6 +139,8 @@ const SSL_METHOD SSLv23_server_method_data = { | |||
139 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 139 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
140 | .ssl_ctrl = ssl3_ctrl, | 140 | .ssl_ctrl = ssl3_ctrl, |
141 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 141 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
142 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
143 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
142 | .ssl_pending = ssl_undefined_const_function, | 144 | .ssl_pending = ssl_undefined_const_function, |
143 | .num_ciphers = ssl3_num_ciphers, | 145 | .num_ciphers = ssl3_num_ciphers, |
144 | .get_cipher = ssl3_get_cipher, | 146 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/s3_clnt.c b/src/lib/libssl/s3_clnt.c index b1c8ffb200..1a64a7e5f2 100644 --- a/src/lib/libssl/s3_clnt.c +++ b/src/lib/libssl/s3_clnt.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_clnt.c,v 1.104 2015/01/23 14:40:59 jsing Exp $ */ | 1 | /* $OpenBSD: s3_clnt.c,v 1.105 2015/02/06 08:30:23 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 | * |
@@ -188,6 +188,8 @@ const SSL_METHOD SSLv3_client_method_data = { | |||
188 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 188 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
189 | .ssl_ctrl = ssl3_ctrl, | 189 | .ssl_ctrl = ssl3_ctrl, |
190 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 190 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
191 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
192 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
191 | .ssl_pending = ssl3_pending, | 193 | .ssl_pending = ssl3_pending, |
192 | .num_ciphers = ssl3_num_ciphers, | 194 | .num_ciphers = ssl3_num_ciphers, |
193 | .get_cipher = ssl3_get_cipher, | 195 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/s3_lib.c b/src/lib/libssl/s3_lib.c index 98eff97131..c7731b3cf4 100644 --- a/src/lib/libssl/s3_lib.c +++ b/src/lib/libssl/s3_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_lib.c,v 1.91 2014/12/16 05:47:28 miod Exp $ */ | 1 | /* $OpenBSD: s3_lib.c,v 1.92 2015/02/06 08:30:23 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 | * |
@@ -2519,7 +2519,42 @@ ssl3_ctx_callback_ctrl(SSL_CTX *ctx, int cmd, void (*fp)(void)) | |||
2519 | return (1); | 2519 | return (1); |
2520 | } | 2520 | } |
2521 | 2521 | ||
2522 | SSL_CIPHER *ssl3_choose_cipher(SSL *s, STACK_OF(SSL_CIPHER) *clnt, | 2522 | /* |
2523 | * This function needs to check if the ciphers required are actually available. | ||
2524 | */ | ||
2525 | const SSL_CIPHER * | ||
2526 | ssl3_get_cipher_by_char(const unsigned char *p) | ||
2527 | { | ||
2528 | const SSL_CIPHER *cp; | ||
2529 | unsigned long id; | ||
2530 | SSL_CIPHER c; | ||
2531 | |||
2532 | id = 0x03000000L | ((unsigned long)p[0] << 8L) | (unsigned long)p[1]; | ||
2533 | c.id = id; | ||
2534 | cp = OBJ_bsearch_ssl_cipher_id(&c, ssl3_ciphers, SSL3_NUM_CIPHERS); | ||
2535 | if (cp == NULL || cp->valid == 0) | ||
2536 | return NULL; | ||
2537 | else | ||
2538 | return cp; | ||
2539 | } | ||
2540 | |||
2541 | int | ||
2542 | ssl3_put_cipher_by_char(const SSL_CIPHER *c, unsigned char *p) | ||
2543 | { | ||
2544 | long l; | ||
2545 | |||
2546 | if (p != NULL) { | ||
2547 | l = c->id; | ||
2548 | if ((l & 0xff000000) != 0x03000000) | ||
2549 | return (0); | ||
2550 | p[0] = ((unsigned char)(l >> 8L)) & 0xFF; | ||
2551 | p[1] = ((unsigned char)(l)) & 0xFF; | ||
2552 | } | ||
2553 | return (2); | ||
2554 | } | ||
2555 | |||
2556 | SSL_CIPHER * | ||
2557 | ssl3_choose_cipher(SSL *s, STACK_OF(SSL_CIPHER) *clnt, | ||
2523 | STACK_OF(SSL_CIPHER) *srvr) | 2558 | STACK_OF(SSL_CIPHER) *srvr) |
2524 | { | 2559 | { |
2525 | unsigned long alg_k, alg_a, mask_k, mask_a; | 2560 | unsigned long alg_k, alg_a, mask_k, mask_a; |
diff --git a/src/lib/libssl/s3_srvr.c b/src/lib/libssl/s3_srvr.c index fd8f9aabab..e16eb6f5d0 100644 --- a/src/lib/libssl/s3_srvr.c +++ b/src/lib/libssl/s3_srvr.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_srvr.c,v 1.96 2014/12/29 16:12:59 tedu Exp $ */ | 1 | /* $OpenBSD: s3_srvr.c,v 1.97 2015/02/06 08:30:23 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 | * |
@@ -188,6 +188,8 @@ const SSL_METHOD SSLv3_server_method_data = { | |||
188 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 188 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
189 | .ssl_ctrl = ssl3_ctrl, | 189 | .ssl_ctrl = ssl3_ctrl, |
190 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 190 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
191 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
192 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
191 | .ssl_pending = ssl3_pending, | 193 | .ssl_pending = ssl3_pending, |
192 | .num_ciphers = ssl3_num_ciphers, | 194 | .num_ciphers = ssl3_num_ciphers, |
193 | .get_cipher = ssl3_get_cipher, | 195 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/d1_clnt.c b/src/lib/libssl/src/ssl/d1_clnt.c index 3687f5917c..c344c1bcdc 100644 --- a/src/lib/libssl/src/ssl/d1_clnt.c +++ b/src/lib/libssl/src/ssl/d1_clnt.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: d1_clnt.c,v 1.41 2014/12/14 16:19:38 jsing Exp $ */ | 1 | /* $OpenBSD: d1_clnt.c,v 1.42 2015/02/06 08:30:23 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. |
@@ -146,6 +146,8 @@ const SSL_METHOD DTLSv1_client_method_data = { | |||
146 | .ssl_dispatch_alert = dtls1_dispatch_alert, | 146 | .ssl_dispatch_alert = dtls1_dispatch_alert, |
147 | .ssl_ctrl = dtls1_ctrl, | 147 | .ssl_ctrl = dtls1_ctrl, |
148 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 148 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
149 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
150 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
149 | .ssl_pending = ssl3_pending, | 151 | .ssl_pending = ssl3_pending, |
150 | .num_ciphers = ssl3_num_ciphers, | 152 | .num_ciphers = ssl3_num_ciphers, |
151 | .get_cipher = dtls1_get_cipher, | 153 | .get_cipher = dtls1_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/d1_meth.c b/src/lib/libssl/src/ssl/d1_meth.c index 527b47e98a..7f279a4f50 100644 --- a/src/lib/libssl/src/ssl/d1_meth.c +++ b/src/lib/libssl/src/ssl/d1_meth.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: d1_meth.c,v 1.8 2014/12/14 15:30:50 jsing Exp $ */ | 1 | /* $OpenBSD: d1_meth.c,v 1.9 2015/02/06 08:30:23 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. |
@@ -84,6 +84,8 @@ const SSL_METHOD DTLSv1_method_data = { | |||
84 | .ssl_dispatch_alert = dtls1_dispatch_alert, | 84 | .ssl_dispatch_alert = dtls1_dispatch_alert, |
85 | .ssl_ctrl = dtls1_ctrl, | 85 | .ssl_ctrl = dtls1_ctrl, |
86 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 86 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
87 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
88 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
87 | .ssl_pending = ssl3_pending, | 89 | .ssl_pending = ssl3_pending, |
88 | .num_ciphers = ssl3_num_ciphers, | 90 | .num_ciphers = ssl3_num_ciphers, |
89 | .get_cipher = dtls1_get_cipher, | 91 | .get_cipher = dtls1_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/d1_srvr.c b/src/lib/libssl/src/ssl/d1_srvr.c index 057d92109c..82f846d236 100644 --- a/src/lib/libssl/src/ssl/d1_srvr.c +++ b/src/lib/libssl/src/ssl/d1_srvr.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: d1_srvr.c,v 1.46 2014/12/15 00:46:53 doug Exp $ */ | 1 | /* $OpenBSD: d1_srvr.c,v 1.47 2015/02/06 08:30:23 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. |
@@ -147,6 +147,8 @@ const SSL_METHOD DTLSv1_server_method_data = { | |||
147 | .ssl_dispatch_alert = dtls1_dispatch_alert, | 147 | .ssl_dispatch_alert = dtls1_dispatch_alert, |
148 | .ssl_ctrl = dtls1_ctrl, | 148 | .ssl_ctrl = dtls1_ctrl, |
149 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 149 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
150 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
151 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
150 | .ssl_pending = ssl3_pending, | 152 | .ssl_pending = ssl3_pending, |
151 | .num_ciphers = ssl3_num_ciphers, | 153 | .num_ciphers = ssl3_num_ciphers, |
152 | .get_cipher = dtls1_get_cipher, | 154 | .get_cipher = dtls1_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/s23_clnt.c b/src/lib/libssl/src/ssl/s23_clnt.c index 28ea24c173..4159ae0580 100644 --- a/src/lib/libssl/src/ssl/s23_clnt.c +++ b/src/lib/libssl/src/ssl/s23_clnt.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s23_clnt.c,v 1.35 2014/12/10 15:43:31 jsing Exp $ */ | 1 | /* $OpenBSD: s23_clnt.c,v 1.36 2015/02/06 08:30:23 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 | * |
@@ -140,6 +140,8 @@ const SSL_METHOD SSLv23_client_method_data = { | |||
140 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 140 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
141 | .ssl_ctrl = ssl3_ctrl, | 141 | .ssl_ctrl = ssl3_ctrl, |
142 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 142 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
143 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
144 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
143 | .ssl_pending = ssl_undefined_const_function, | 145 | .ssl_pending = ssl_undefined_const_function, |
144 | .num_ciphers = ssl3_num_ciphers, | 146 | .num_ciphers = ssl3_num_ciphers, |
145 | .get_cipher = ssl3_get_cipher, | 147 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/s23_meth.c b/src/lib/libssl/src/ssl/s23_meth.c index e5382ff38d..164604001e 100644 --- a/src/lib/libssl/src/ssl/s23_meth.c +++ b/src/lib/libssl/src/ssl/s23_meth.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s23_meth.c,v 1.16 2014/11/16 14:12:47 jsing Exp $ */ | 1 | /* $OpenBSD: s23_meth.c,v 1.17 2015/02/06 08:30:23 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 | * |
@@ -83,6 +83,8 @@ const SSL_METHOD SSLv23_method_data = { | |||
83 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 83 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
84 | .ssl_ctrl = ssl3_ctrl, | 84 | .ssl_ctrl = ssl3_ctrl, |
85 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 85 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
86 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
87 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
86 | .ssl_pending = ssl_undefined_const_function, | 88 | .ssl_pending = ssl_undefined_const_function, |
87 | .num_ciphers = ssl3_num_ciphers, | 89 | .num_ciphers = ssl3_num_ciphers, |
88 | .get_cipher = ssl3_get_cipher, | 90 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/s23_srvr.c b/src/lib/libssl/src/ssl/s23_srvr.c index a7686c3f40..9e0ee453db 100644 --- a/src/lib/libssl/src/ssl/s23_srvr.c +++ b/src/lib/libssl/src/ssl/s23_srvr.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s23_srvr.c,v 1.37 2014/12/10 15:43:31 jsing Exp $ */ | 1 | /* $OpenBSD: s23_srvr.c,v 1.38 2015/02/06 08:30:23 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 | * |
@@ -139,6 +139,8 @@ const SSL_METHOD SSLv23_server_method_data = { | |||
139 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 139 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
140 | .ssl_ctrl = ssl3_ctrl, | 140 | .ssl_ctrl = ssl3_ctrl, |
141 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 141 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
142 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
143 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
142 | .ssl_pending = ssl_undefined_const_function, | 144 | .ssl_pending = ssl_undefined_const_function, |
143 | .num_ciphers = ssl3_num_ciphers, | 145 | .num_ciphers = ssl3_num_ciphers, |
144 | .get_cipher = ssl3_get_cipher, | 146 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/s3_clnt.c b/src/lib/libssl/src/ssl/s3_clnt.c index b1c8ffb200..1a64a7e5f2 100644 --- a/src/lib/libssl/src/ssl/s3_clnt.c +++ b/src/lib/libssl/src/ssl/s3_clnt.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_clnt.c,v 1.104 2015/01/23 14:40:59 jsing Exp $ */ | 1 | /* $OpenBSD: s3_clnt.c,v 1.105 2015/02/06 08:30:23 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 | * |
@@ -188,6 +188,8 @@ const SSL_METHOD SSLv3_client_method_data = { | |||
188 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 188 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
189 | .ssl_ctrl = ssl3_ctrl, | 189 | .ssl_ctrl = ssl3_ctrl, |
190 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 190 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
191 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
192 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
191 | .ssl_pending = ssl3_pending, | 193 | .ssl_pending = ssl3_pending, |
192 | .num_ciphers = ssl3_num_ciphers, | 194 | .num_ciphers = ssl3_num_ciphers, |
193 | .get_cipher = ssl3_get_cipher, | 195 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/s3_lib.c b/src/lib/libssl/src/ssl/s3_lib.c index 98eff97131..c7731b3cf4 100644 --- a/src/lib/libssl/src/ssl/s3_lib.c +++ b/src/lib/libssl/src/ssl/s3_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_lib.c,v 1.91 2014/12/16 05:47:28 miod Exp $ */ | 1 | /* $OpenBSD: s3_lib.c,v 1.92 2015/02/06 08:30:23 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 | * |
@@ -2519,7 +2519,42 @@ ssl3_ctx_callback_ctrl(SSL_CTX *ctx, int cmd, void (*fp)(void)) | |||
2519 | return (1); | 2519 | return (1); |
2520 | } | 2520 | } |
2521 | 2521 | ||
2522 | SSL_CIPHER *ssl3_choose_cipher(SSL *s, STACK_OF(SSL_CIPHER) *clnt, | 2522 | /* |
2523 | * This function needs to check if the ciphers required are actually available. | ||
2524 | */ | ||
2525 | const SSL_CIPHER * | ||
2526 | ssl3_get_cipher_by_char(const unsigned char *p) | ||
2527 | { | ||
2528 | const SSL_CIPHER *cp; | ||
2529 | unsigned long id; | ||
2530 | SSL_CIPHER c; | ||
2531 | |||
2532 | id = 0x03000000L | ((unsigned long)p[0] << 8L) | (unsigned long)p[1]; | ||
2533 | c.id = id; | ||
2534 | cp = OBJ_bsearch_ssl_cipher_id(&c, ssl3_ciphers, SSL3_NUM_CIPHERS); | ||
2535 | if (cp == NULL || cp->valid == 0) | ||
2536 | return NULL; | ||
2537 | else | ||
2538 | return cp; | ||
2539 | } | ||
2540 | |||
2541 | int | ||
2542 | ssl3_put_cipher_by_char(const SSL_CIPHER *c, unsigned char *p) | ||
2543 | { | ||
2544 | long l; | ||
2545 | |||
2546 | if (p != NULL) { | ||
2547 | l = c->id; | ||
2548 | if ((l & 0xff000000) != 0x03000000) | ||
2549 | return (0); | ||
2550 | p[0] = ((unsigned char)(l >> 8L)) & 0xFF; | ||
2551 | p[1] = ((unsigned char)(l)) & 0xFF; | ||
2552 | } | ||
2553 | return (2); | ||
2554 | } | ||
2555 | |||
2556 | SSL_CIPHER * | ||
2557 | ssl3_choose_cipher(SSL *s, STACK_OF(SSL_CIPHER) *clnt, | ||
2523 | STACK_OF(SSL_CIPHER) *srvr) | 2558 | STACK_OF(SSL_CIPHER) *srvr) |
2524 | { | 2559 | { |
2525 | unsigned long alg_k, alg_a, mask_k, mask_a; | 2560 | unsigned long alg_k, alg_a, mask_k, mask_a; |
diff --git a/src/lib/libssl/src/ssl/s3_meth.c b/src/lib/libssl/src/ssl/s3_meth.c index 3435e529d9..8ad4efa7a8 100644 --- a/src/lib/libssl/src/ssl/s3_meth.c +++ b/src/lib/libssl/src/ssl/s3_meth.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_meth.c,v 1.12 2014/12/14 15:30:50 jsing Exp $ */ | 1 | /* $OpenBSD: s3_meth.c,v 1.13 2015/02/06 08:30:23 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 | * |
@@ -83,6 +83,8 @@ const SSL_METHOD SSLv3_method_data = { | |||
83 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 83 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
84 | .ssl_ctrl = ssl3_ctrl, | 84 | .ssl_ctrl = ssl3_ctrl, |
85 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 85 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
86 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
87 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
86 | .ssl_pending = ssl3_pending, | 88 | .ssl_pending = ssl3_pending, |
87 | .num_ciphers = ssl3_num_ciphers, | 89 | .num_ciphers = ssl3_num_ciphers, |
88 | .get_cipher = ssl3_get_cipher, | 90 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/s3_srvr.c b/src/lib/libssl/src/ssl/s3_srvr.c index fd8f9aabab..e16eb6f5d0 100644 --- a/src/lib/libssl/src/ssl/s3_srvr.c +++ b/src/lib/libssl/src/ssl/s3_srvr.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_srvr.c,v 1.96 2014/12/29 16:12:59 tedu Exp $ */ | 1 | /* $OpenBSD: s3_srvr.c,v 1.97 2015/02/06 08:30:23 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 | * |
@@ -188,6 +188,8 @@ const SSL_METHOD SSLv3_server_method_data = { | |||
188 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 188 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
189 | .ssl_ctrl = ssl3_ctrl, | 189 | .ssl_ctrl = ssl3_ctrl, |
190 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 190 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
191 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
192 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
191 | .ssl_pending = ssl3_pending, | 193 | .ssl_pending = ssl3_pending, |
192 | .num_ciphers = ssl3_num_ciphers, | 194 | .num_ciphers = ssl3_num_ciphers, |
193 | .get_cipher = ssl3_get_cipher, | 195 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/ssl.h b/src/lib/libssl/src/ssl/ssl.h index 275743a6a0..571786dcf6 100644 --- a/src/lib/libssl/src/ssl/ssl.h +++ b/src/lib/libssl/src/ssl/ssl.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl.h,v 1.79 2015/02/06 01:37:11 reyk Exp $ */ | 1 | /* $OpenBSD: ssl.h,v 1.80 2015/02/06 08:30:23 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 | * |
@@ -418,6 +418,8 @@ struct ssl_method_st { | |||
418 | int (*ssl_dispatch_alert)(SSL *s); | 418 | int (*ssl_dispatch_alert)(SSL *s); |
419 | long (*ssl_ctrl)(SSL *s, int cmd, long larg, void *parg); | 419 | long (*ssl_ctrl)(SSL *s, int cmd, long larg, void *parg); |
420 | long (*ssl_ctx_ctrl)(SSL_CTX *ctx, int cmd, long larg, void *parg); | 420 | long (*ssl_ctx_ctrl)(SSL_CTX *ctx, int cmd, long larg, void *parg); |
421 | const SSL_CIPHER *(*get_cipher_by_char)(const unsigned char *ptr); | ||
422 | int (*put_cipher_by_char)(const SSL_CIPHER *cipher, unsigned char *ptr); | ||
421 | int (*ssl_pending)(const SSL *s); | 423 | int (*ssl_pending)(const SSL *s); |
422 | int (*num_ciphers)(void); | 424 | int (*num_ciphers)(void); |
423 | const SSL_CIPHER *(*get_cipher)(unsigned ncipher); | 425 | const SSL_CIPHER *(*get_cipher)(unsigned ncipher); |
diff --git a/src/lib/libssl/src/ssl/ssl_locl.h b/src/lib/libssl/src/ssl/ssl_locl.h index 3312aebaad..94c0d4a83d 100644 --- a/src/lib/libssl/src/ssl/ssl_locl.h +++ b/src/lib/libssl/src/ssl/ssl_locl.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl_locl.h,v 1.84 2014/12/15 00:46:53 doug Exp $ */ | 1 | /* $OpenBSD: ssl_locl.h,v 1.85 2015/02/06 08:30:23 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 | * |
@@ -595,6 +595,8 @@ STACK_OF(SSL_CIPHER) *ssl_get_ciphers_by_id(SSL *s); | |||
595 | int ssl_verify_alarm_type(long type); | 595 | int ssl_verify_alarm_type(long type); |
596 | void ssl_load_ciphers(void); | 596 | void ssl_load_ciphers(void); |
597 | 597 | ||
598 | const SSL_CIPHER *ssl3_get_cipher_by_char(const unsigned char *p); | ||
599 | int ssl3_put_cipher_by_char(const SSL_CIPHER *c, unsigned char *p); | ||
598 | int ssl3_init_finished_mac(SSL *s); | 600 | int ssl3_init_finished_mac(SSL *s); |
599 | int ssl3_send_server_certificate(SSL *s); | 601 | int ssl3_send_server_certificate(SSL *s); |
600 | int ssl3_send_newsession_ticket(SSL *s); | 602 | int ssl3_send_newsession_ticket(SSL *s); |
diff --git a/src/lib/libssl/src/ssl/t1_clnt.c b/src/lib/libssl/src/ssl/t1_clnt.c index b2adbaee73..0dc41af5b3 100644 --- a/src/lib/libssl/src/ssl/t1_clnt.c +++ b/src/lib/libssl/src/ssl/t1_clnt.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: t1_clnt.c,v 1.16 2014/11/16 14:12:47 jsing Exp $ */ | 1 | /* $OpenBSD: t1_clnt.c,v 1.17 2015/02/06 08:30:23 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 | * |
@@ -85,6 +85,8 @@ const SSL_METHOD TLSv1_client_method_data = { | |||
85 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 85 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
86 | .ssl_ctrl = ssl3_ctrl, | 86 | .ssl_ctrl = ssl3_ctrl, |
87 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 87 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
88 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
89 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
88 | .ssl_pending = ssl3_pending, | 90 | .ssl_pending = ssl3_pending, |
89 | .num_ciphers = ssl3_num_ciphers, | 91 | .num_ciphers = ssl3_num_ciphers, |
90 | .get_cipher = ssl3_get_cipher, | 92 | .get_cipher = ssl3_get_cipher, |
@@ -115,6 +117,8 @@ const SSL_METHOD TLSv1_1_client_method_data = { | |||
115 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 117 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
116 | .ssl_ctrl = ssl3_ctrl, | 118 | .ssl_ctrl = ssl3_ctrl, |
117 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 119 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
120 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
121 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
118 | .ssl_pending = ssl3_pending, | 122 | .ssl_pending = ssl3_pending, |
119 | .num_ciphers = ssl3_num_ciphers, | 123 | .num_ciphers = ssl3_num_ciphers, |
120 | .get_cipher = ssl3_get_cipher, | 124 | .get_cipher = ssl3_get_cipher, |
@@ -145,6 +149,8 @@ const SSL_METHOD TLSv1_2_client_method_data = { | |||
145 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 149 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
146 | .ssl_ctrl = ssl3_ctrl, | 150 | .ssl_ctrl = ssl3_ctrl, |
147 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 151 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
152 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
153 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
148 | .ssl_pending = ssl3_pending, | 154 | .ssl_pending = ssl3_pending, |
149 | .num_ciphers = ssl3_num_ciphers, | 155 | .num_ciphers = ssl3_num_ciphers, |
150 | .get_cipher = ssl3_get_cipher, | 156 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/t1_meth.c b/src/lib/libssl/src/ssl/t1_meth.c index 71d957fca9..48341525d8 100644 --- a/src/lib/libssl/src/ssl/t1_meth.c +++ b/src/lib/libssl/src/ssl/t1_meth.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: t1_meth.c,v 1.15 2014/12/14 15:30:50 jsing Exp $ */ | 1 | /* $OpenBSD: t1_meth.c,v 1.16 2015/02/06 08:30:23 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 | * |
@@ -83,6 +83,8 @@ const SSL_METHOD TLSv1_method_data = { | |||
83 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 83 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
84 | .ssl_ctrl = ssl3_ctrl, | 84 | .ssl_ctrl = ssl3_ctrl, |
85 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 85 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
86 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
87 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
86 | .ssl_pending = ssl3_pending, | 88 | .ssl_pending = ssl3_pending, |
87 | .num_ciphers = ssl3_num_ciphers, | 89 | .num_ciphers = ssl3_num_ciphers, |
88 | .get_cipher = ssl3_get_cipher, | 90 | .get_cipher = ssl3_get_cipher, |
@@ -113,6 +115,8 @@ const SSL_METHOD TLSv1_1_method_data = { | |||
113 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 115 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
114 | .ssl_ctrl = ssl3_ctrl, | 116 | .ssl_ctrl = ssl3_ctrl, |
115 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 117 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
118 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
119 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
116 | .ssl_pending = ssl3_pending, | 120 | .ssl_pending = ssl3_pending, |
117 | .num_ciphers = ssl3_num_ciphers, | 121 | .num_ciphers = ssl3_num_ciphers, |
118 | .get_cipher = ssl3_get_cipher, | 122 | .get_cipher = ssl3_get_cipher, |
@@ -143,6 +147,8 @@ const SSL_METHOD TLSv1_2_method_data = { | |||
143 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 147 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
144 | .ssl_ctrl = ssl3_ctrl, | 148 | .ssl_ctrl = ssl3_ctrl, |
145 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 149 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
150 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
151 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
146 | .ssl_pending = ssl3_pending, | 152 | .ssl_pending = ssl3_pending, |
147 | .num_ciphers = ssl3_num_ciphers, | 153 | .num_ciphers = ssl3_num_ciphers, |
148 | .get_cipher = ssl3_get_cipher, | 154 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/src/ssl/t1_srvr.c b/src/lib/libssl/src/ssl/t1_srvr.c index 4dedc727e2..3c6ac541f8 100644 --- a/src/lib/libssl/src/ssl/t1_srvr.c +++ b/src/lib/libssl/src/ssl/t1_srvr.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: t1_srvr.c,v 1.17 2014/12/14 15:30:50 jsing Exp $ */ | 1 | /* $OpenBSD: t1_srvr.c,v 1.18 2015/02/06 08:30:23 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 | * |
@@ -86,6 +86,8 @@ const SSL_METHOD TLSv1_server_method_data = { | |||
86 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 86 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
87 | .ssl_ctrl = ssl3_ctrl, | 87 | .ssl_ctrl = ssl3_ctrl, |
88 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 88 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
89 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
90 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
89 | .ssl_pending = ssl3_pending, | 91 | .ssl_pending = ssl3_pending, |
90 | .num_ciphers = ssl3_num_ciphers, | 92 | .num_ciphers = ssl3_num_ciphers, |
91 | .get_cipher = ssl3_get_cipher, | 93 | .get_cipher = ssl3_get_cipher, |
@@ -116,6 +118,8 @@ const SSL_METHOD TLSv1_1_server_method_data = { | |||
116 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 118 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
117 | .ssl_ctrl = ssl3_ctrl, | 119 | .ssl_ctrl = ssl3_ctrl, |
118 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 120 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
121 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
122 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
119 | .ssl_pending = ssl3_pending, | 123 | .ssl_pending = ssl3_pending, |
120 | .num_ciphers = ssl3_num_ciphers, | 124 | .num_ciphers = ssl3_num_ciphers, |
121 | .get_cipher = ssl3_get_cipher, | 125 | .get_cipher = ssl3_get_cipher, |
@@ -146,6 +150,8 @@ const SSL_METHOD TLSv1_2_server_method_data = { | |||
146 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 150 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
147 | .ssl_ctrl = ssl3_ctrl, | 151 | .ssl_ctrl = ssl3_ctrl, |
148 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 152 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
153 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
154 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
149 | .ssl_pending = ssl3_pending, | 155 | .ssl_pending = ssl3_pending, |
150 | .num_ciphers = ssl3_num_ciphers, | 156 | .num_ciphers = ssl3_num_ciphers, |
151 | .get_cipher = ssl3_get_cipher, | 157 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/ssl.h b/src/lib/libssl/ssl.h index 275743a6a0..571786dcf6 100644 --- a/src/lib/libssl/ssl.h +++ b/src/lib/libssl/ssl.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl.h,v 1.79 2015/02/06 01:37:11 reyk Exp $ */ | 1 | /* $OpenBSD: ssl.h,v 1.80 2015/02/06 08:30:23 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 | * |
@@ -418,6 +418,8 @@ struct ssl_method_st { | |||
418 | int (*ssl_dispatch_alert)(SSL *s); | 418 | int (*ssl_dispatch_alert)(SSL *s); |
419 | long (*ssl_ctrl)(SSL *s, int cmd, long larg, void *parg); | 419 | long (*ssl_ctrl)(SSL *s, int cmd, long larg, void *parg); |
420 | long (*ssl_ctx_ctrl)(SSL_CTX *ctx, int cmd, long larg, void *parg); | 420 | long (*ssl_ctx_ctrl)(SSL_CTX *ctx, int cmd, long larg, void *parg); |
421 | const SSL_CIPHER *(*get_cipher_by_char)(const unsigned char *ptr); | ||
422 | int (*put_cipher_by_char)(const SSL_CIPHER *cipher, unsigned char *ptr); | ||
421 | int (*ssl_pending)(const SSL *s); | 423 | int (*ssl_pending)(const SSL *s); |
422 | int (*num_ciphers)(void); | 424 | int (*num_ciphers)(void); |
423 | const SSL_CIPHER *(*get_cipher)(unsigned ncipher); | 425 | const SSL_CIPHER *(*get_cipher)(unsigned ncipher); |
diff --git a/src/lib/libssl/ssl_locl.h b/src/lib/libssl/ssl_locl.h index 3312aebaad..94c0d4a83d 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.84 2014/12/15 00:46:53 doug Exp $ */ | 1 | /* $OpenBSD: ssl_locl.h,v 1.85 2015/02/06 08:30:23 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 | * |
@@ -595,6 +595,8 @@ STACK_OF(SSL_CIPHER) *ssl_get_ciphers_by_id(SSL *s); | |||
595 | int ssl_verify_alarm_type(long type); | 595 | int ssl_verify_alarm_type(long type); |
596 | void ssl_load_ciphers(void); | 596 | void ssl_load_ciphers(void); |
597 | 597 | ||
598 | const SSL_CIPHER *ssl3_get_cipher_by_char(const unsigned char *p); | ||
599 | int ssl3_put_cipher_by_char(const SSL_CIPHER *c, unsigned char *p); | ||
598 | int ssl3_init_finished_mac(SSL *s); | 600 | int ssl3_init_finished_mac(SSL *s); |
599 | int ssl3_send_server_certificate(SSL *s); | 601 | int ssl3_send_server_certificate(SSL *s); |
600 | int ssl3_send_newsession_ticket(SSL *s); | 602 | int ssl3_send_newsession_ticket(SSL *s); |
diff --git a/src/lib/libssl/t1_clnt.c b/src/lib/libssl/t1_clnt.c index b2adbaee73..0dc41af5b3 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.16 2014/11/16 14:12:47 jsing Exp $ */ | 1 | /* $OpenBSD: t1_clnt.c,v 1.17 2015/02/06 08:30:23 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 | * |
@@ -85,6 +85,8 @@ const SSL_METHOD TLSv1_client_method_data = { | |||
85 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 85 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
86 | .ssl_ctrl = ssl3_ctrl, | 86 | .ssl_ctrl = ssl3_ctrl, |
87 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 87 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
88 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
89 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
88 | .ssl_pending = ssl3_pending, | 90 | .ssl_pending = ssl3_pending, |
89 | .num_ciphers = ssl3_num_ciphers, | 91 | .num_ciphers = ssl3_num_ciphers, |
90 | .get_cipher = ssl3_get_cipher, | 92 | .get_cipher = ssl3_get_cipher, |
@@ -115,6 +117,8 @@ const SSL_METHOD TLSv1_1_client_method_data = { | |||
115 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 117 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
116 | .ssl_ctrl = ssl3_ctrl, | 118 | .ssl_ctrl = ssl3_ctrl, |
117 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 119 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
120 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
121 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
118 | .ssl_pending = ssl3_pending, | 122 | .ssl_pending = ssl3_pending, |
119 | .num_ciphers = ssl3_num_ciphers, | 123 | .num_ciphers = ssl3_num_ciphers, |
120 | .get_cipher = ssl3_get_cipher, | 124 | .get_cipher = ssl3_get_cipher, |
@@ -145,6 +149,8 @@ const SSL_METHOD TLSv1_2_client_method_data = { | |||
145 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 149 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
146 | .ssl_ctrl = ssl3_ctrl, | 150 | .ssl_ctrl = ssl3_ctrl, |
147 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 151 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
152 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
153 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
148 | .ssl_pending = ssl3_pending, | 154 | .ssl_pending = ssl3_pending, |
149 | .num_ciphers = ssl3_num_ciphers, | 155 | .num_ciphers = ssl3_num_ciphers, |
150 | .get_cipher = ssl3_get_cipher, | 156 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/t1_meth.c b/src/lib/libssl/t1_meth.c index 71d957fca9..48341525d8 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.15 2014/12/14 15:30:50 jsing Exp $ */ | 1 | /* $OpenBSD: t1_meth.c,v 1.16 2015/02/06 08:30:23 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 | * |
@@ -83,6 +83,8 @@ const SSL_METHOD TLSv1_method_data = { | |||
83 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 83 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
84 | .ssl_ctrl = ssl3_ctrl, | 84 | .ssl_ctrl = ssl3_ctrl, |
85 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 85 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
86 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
87 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
86 | .ssl_pending = ssl3_pending, | 88 | .ssl_pending = ssl3_pending, |
87 | .num_ciphers = ssl3_num_ciphers, | 89 | .num_ciphers = ssl3_num_ciphers, |
88 | .get_cipher = ssl3_get_cipher, | 90 | .get_cipher = ssl3_get_cipher, |
@@ -113,6 +115,8 @@ const SSL_METHOD TLSv1_1_method_data = { | |||
113 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 115 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
114 | .ssl_ctrl = ssl3_ctrl, | 116 | .ssl_ctrl = ssl3_ctrl, |
115 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 117 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
118 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
119 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
116 | .ssl_pending = ssl3_pending, | 120 | .ssl_pending = ssl3_pending, |
117 | .num_ciphers = ssl3_num_ciphers, | 121 | .num_ciphers = ssl3_num_ciphers, |
118 | .get_cipher = ssl3_get_cipher, | 122 | .get_cipher = ssl3_get_cipher, |
@@ -143,6 +147,8 @@ const SSL_METHOD TLSv1_2_method_data = { | |||
143 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 147 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
144 | .ssl_ctrl = ssl3_ctrl, | 148 | .ssl_ctrl = ssl3_ctrl, |
145 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 149 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
150 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
151 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
146 | .ssl_pending = ssl3_pending, | 152 | .ssl_pending = ssl3_pending, |
147 | .num_ciphers = ssl3_num_ciphers, | 153 | .num_ciphers = ssl3_num_ciphers, |
148 | .get_cipher = ssl3_get_cipher, | 154 | .get_cipher = ssl3_get_cipher, |
diff --git a/src/lib/libssl/t1_srvr.c b/src/lib/libssl/t1_srvr.c index 4dedc727e2..3c6ac541f8 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.17 2014/12/14 15:30:50 jsing Exp $ */ | 1 | /* $OpenBSD: t1_srvr.c,v 1.18 2015/02/06 08:30:23 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 | * |
@@ -86,6 +86,8 @@ const SSL_METHOD TLSv1_server_method_data = { | |||
86 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 86 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
87 | .ssl_ctrl = ssl3_ctrl, | 87 | .ssl_ctrl = ssl3_ctrl, |
88 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 88 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
89 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
90 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
89 | .ssl_pending = ssl3_pending, | 91 | .ssl_pending = ssl3_pending, |
90 | .num_ciphers = ssl3_num_ciphers, | 92 | .num_ciphers = ssl3_num_ciphers, |
91 | .get_cipher = ssl3_get_cipher, | 93 | .get_cipher = ssl3_get_cipher, |
@@ -116,6 +118,8 @@ const SSL_METHOD TLSv1_1_server_method_data = { | |||
116 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 118 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
117 | .ssl_ctrl = ssl3_ctrl, | 119 | .ssl_ctrl = ssl3_ctrl, |
118 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 120 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
121 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
122 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
119 | .ssl_pending = ssl3_pending, | 123 | .ssl_pending = ssl3_pending, |
120 | .num_ciphers = ssl3_num_ciphers, | 124 | .num_ciphers = ssl3_num_ciphers, |
121 | .get_cipher = ssl3_get_cipher, | 125 | .get_cipher = ssl3_get_cipher, |
@@ -146,6 +150,8 @@ const SSL_METHOD TLSv1_2_server_method_data = { | |||
146 | .ssl_dispatch_alert = ssl3_dispatch_alert, | 150 | .ssl_dispatch_alert = ssl3_dispatch_alert, |
147 | .ssl_ctrl = ssl3_ctrl, | 151 | .ssl_ctrl = ssl3_ctrl, |
148 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, | 152 | .ssl_ctx_ctrl = ssl3_ctx_ctrl, |
153 | .get_cipher_by_char = ssl3_get_cipher_by_char, | ||
154 | .put_cipher_by_char = ssl3_put_cipher_by_char, | ||
149 | .ssl_pending = ssl3_pending, | 155 | .ssl_pending = ssl3_pending, |
150 | .num_ciphers = ssl3_num_ciphers, | 156 | .num_ciphers = ssl3_num_ciphers, |
151 | .get_cipher = ssl3_get_cipher, | 157 | .get_cipher = ssl3_get_cipher, |