summaryrefslogtreecommitdiff
path: root/src/lib/libssl/ssl_clnt.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libssl/ssl_clnt.c')
-rw-r--r--src/lib/libssl/ssl_clnt.c33
1 files changed, 12 insertions, 21 deletions
diff --git a/src/lib/libssl/ssl_clnt.c b/src/lib/libssl/ssl_clnt.c
index da4b966bc6..223190c0a0 100644
--- a/src/lib/libssl/ssl_clnt.c
+++ b/src/lib/libssl/ssl_clnt.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_clnt.c,v 1.6 2017/02/28 14:08:49 jsing Exp $ */ 1/* $OpenBSD: ssl_clnt.c,v 1.7 2017/03/01 14:01: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 *
@@ -1472,29 +1472,20 @@ ssl3_get_server_key_exchange(SSL *s)
1472 } 1472 }
1473 1473
1474 if (pkey->type == EVP_PKEY_RSA && !SSL_USE_SIGALGS(s)) { 1474 if (pkey->type == EVP_PKEY_RSA && !SSL_USE_SIGALGS(s)) {
1475 int num;
1476
1477 j = 0; 1475 j = 0;
1478 q = md_buf; 1476 q = md_buf;
1479 for (num = 2; num > 0; num--) { 1477 if (!EVP_DigestInit_ex(&md_ctx, EVP_md5_sha1(), NULL)) {
1480 if (!EVP_DigestInit_ex(&md_ctx, 1478 al = SSL_AD_INTERNAL_ERROR;
1481 (num == 2) ? EVP_md5() : EVP_sha1(), 1479 goto f_err;
1482 NULL)) {
1483 al = SSL_AD_INTERNAL_ERROR;
1484 goto f_err;
1485 }
1486 EVP_DigestUpdate(&md_ctx,
1487 s->s3->client_random,
1488 SSL3_RANDOM_SIZE);
1489 EVP_DigestUpdate(&md_ctx,
1490 s->s3->server_random,
1491 SSL3_RANDOM_SIZE);
1492 EVP_DigestUpdate(&md_ctx, param, param_len);
1493 EVP_DigestFinal_ex(&md_ctx, q,
1494 (unsigned int *)&i);
1495 q += i;
1496 j += i;
1497 } 1480 }
1481 EVP_DigestUpdate(&md_ctx, s->s3->client_random,
1482 SSL3_RANDOM_SIZE);
1483 EVP_DigestUpdate(&md_ctx, s->s3->server_random,
1484 SSL3_RANDOM_SIZE);
1485 EVP_DigestUpdate(&md_ctx, param, param_len);
1486 EVP_DigestFinal_ex(&md_ctx, q, (unsigned int *)&i);
1487 q += i;
1488 j += i;
1498 i = RSA_verify(NID_md5_sha1, md_buf, j, 1489 i = RSA_verify(NID_md5_sha1, md_buf, j,
1499 p, n, pkey->pkey.rsa); 1490 p, n, pkey->pkey.rsa);
1500 if (i < 0) { 1491 if (i < 0) {