summaryrefslogtreecommitdiff
path: root/src/lib/libssl/ssl_srvr.c
diff options
context:
space:
mode:
authorjsing <>2021-04-19 16:51:56 +0000
committerjsing <>2021-04-19 16:51:56 +0000
commitc80ec6c0289d29bb4c9a0250b49a487f3eead897 (patch)
tree54d09c9ab81cd7a258895b2d77b510ba6d5fe4ff /src/lib/libssl/ssl_srvr.c
parenta781147be0607c2030c602b8de9b181330876373 (diff)
downloadopenbsd-c80ec6c0289d29bb4c9a0250b49a487f3eead897.tar.gz
openbsd-c80ec6c0289d29bb4c9a0250b49a487f3eead897.tar.bz2
openbsd-c80ec6c0289d29bb4c9a0250b49a487f3eead897.zip
Move reuse_message, message_type, message_size and cert_verify into the
TLSv1.2 handshake struct. ok inoguchi@ tb@
Diffstat (limited to 'src/lib/libssl/ssl_srvr.c')
-rw-r--r--src/lib/libssl/ssl_srvr.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/lib/libssl/ssl_srvr.c b/src/lib/libssl/ssl_srvr.c
index 0f3572a678..8241a59ac0 100644
--- a/src/lib/libssl/ssl_srvr.c
+++ b/src/lib/libssl/ssl_srvr.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ssl_srvr.c,v 1.101 2021/03/29 16:56:20 jsing Exp $ */ 1/* $OpenBSD: ssl_srvr.c,v 1.102 2021/04/19 16:51:56 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 *
@@ -576,8 +576,8 @@ ssl3_accept(SSL *s)
576 * a client cert, it can be verified. 576 * a client cert, it can be verified.
577 */ 577 */
578 if (!tls1_transcript_hash_value(s, 578 if (!tls1_transcript_hash_value(s,
579 S3I(s)->tmp.cert_verify_md, 579 S3I(s)->hs.tls12.cert_verify,
580 sizeof(S3I(s)->tmp.cert_verify_md), 580 sizeof(S3I(s)->hs.tls12.cert_verify),
581 NULL)) { 581 NULL)) {
582 ret = -1; 582 ret = -1;
583 goto end; 583 goto end;
@@ -733,7 +733,7 @@ ssl3_accept(SSL *s)
733 /* break; */ 733 /* break; */
734 } 734 }
735 735
736 if (!S3I(s)->tmp.reuse_message && !skip) { 736 if (!S3I(s)->hs.tls12.reuse_message && !skip) {
737 if (s->internal->debug) { 737 if (s->internal->debug) {
738 if ((ret = BIO_flush(s->wbio)) <= 0) 738 if ((ret = BIO_flush(s->wbio)) <= 0)
739 goto end; 739 goto end;
@@ -2149,8 +2149,8 @@ ssl3_get_cert_verify(SSL *s)
2149 type = X509_certificate_type(peer, pkey); 2149 type = X509_certificate_type(peer, pkey);
2150 } 2150 }
2151 2151
2152 if (S3I(s)->tmp.message_type != SSL3_MT_CERTIFICATE_VERIFY) { 2152 if (S3I(s)->hs.tls12.message_type != SSL3_MT_CERTIFICATE_VERIFY) {
2153 S3I(s)->tmp.reuse_message = 1; 2153 S3I(s)->hs.tls12.reuse_message = 1;
2154 if (peer != NULL) { 2154 if (peer != NULL) {
2155 al = SSL_AD_UNEXPECTED_MESSAGE; 2155 al = SSL_AD_UNEXPECTED_MESSAGE;
2156 SSLerror(s, SSL_R_MISSING_VERIFY_MESSAGE); 2156 SSLerror(s, SSL_R_MISSING_VERIFY_MESSAGE);
@@ -2261,7 +2261,7 @@ ssl3_get_cert_verify(SSL *s)
2261 goto fatal_err; 2261 goto fatal_err;
2262 } 2262 }
2263 } else if (pkey->type == EVP_PKEY_RSA) { 2263 } else if (pkey->type == EVP_PKEY_RSA) {
2264 verify = RSA_verify(NID_md5_sha1, S3I(s)->tmp.cert_verify_md, 2264 verify = RSA_verify(NID_md5_sha1, S3I(s)->hs.tls12.cert_verify,
2265 MD5_DIGEST_LENGTH + SHA_DIGEST_LENGTH, CBS_data(&signature), 2265 MD5_DIGEST_LENGTH + SHA_DIGEST_LENGTH, CBS_data(&signature),
2266 CBS_len(&signature), pkey->pkey.rsa); 2266 CBS_len(&signature), pkey->pkey.rsa);
2267 if (verify < 0) { 2267 if (verify < 0) {
@@ -2276,7 +2276,7 @@ ssl3_get_cert_verify(SSL *s)
2276 } 2276 }
2277 } else if (pkey->type == EVP_PKEY_EC) { 2277 } else if (pkey->type == EVP_PKEY_EC) {
2278 verify = ECDSA_verify(pkey->save_type, 2278 verify = ECDSA_verify(pkey->save_type,
2279 &(S3I(s)->tmp.cert_verify_md[MD5_DIGEST_LENGTH]), 2279 &(S3I(s)->hs.tls12.cert_verify[MD5_DIGEST_LENGTH]),
2280 SHA_DIGEST_LENGTH, CBS_data(&signature), 2280 SHA_DIGEST_LENGTH, CBS_data(&signature),
2281 CBS_len(&signature), pkey->pkey.ec); 2281 CBS_len(&signature), pkey->pkey.ec);
2282 if (verify <= 0) { 2282 if (verify <= 0) {
@@ -2368,7 +2368,7 @@ ssl3_get_client_certificate(SSL *s)
2368 if (!ok) 2368 if (!ok)
2369 return ((int)n); 2369 return ((int)n);
2370 2370
2371 if (S3I(s)->tmp.message_type == SSL3_MT_CLIENT_KEY_EXCHANGE) { 2371 if (S3I(s)->hs.tls12.message_type == SSL3_MT_CLIENT_KEY_EXCHANGE) {
2372 if ((s->verify_mode & SSL_VERIFY_PEER) && 2372 if ((s->verify_mode & SSL_VERIFY_PEER) &&
2373 (s->verify_mode & SSL_VERIFY_FAIL_IF_NO_PEER_CERT)) { 2373 (s->verify_mode & SSL_VERIFY_FAIL_IF_NO_PEER_CERT)) {
2374 SSLerror(s, SSL_R_PEER_DID_NOT_RETURN_A_CERTIFICATE); 2374 SSLerror(s, SSL_R_PEER_DID_NOT_RETURN_A_CERTIFICATE);
@@ -2385,11 +2385,11 @@ ssl3_get_client_certificate(SSL *s)
2385 al = SSL_AD_UNEXPECTED_MESSAGE; 2385 al = SSL_AD_UNEXPECTED_MESSAGE;
2386 goto fatal_err; 2386 goto fatal_err;
2387 } 2387 }
2388 S3I(s)->tmp.reuse_message = 1; 2388 S3I(s)->hs.tls12.reuse_message = 1;
2389 return (1); 2389 return (1);
2390 } 2390 }
2391 2391
2392 if (S3I(s)->tmp.message_type != SSL3_MT_CERTIFICATE) { 2392 if (S3I(s)->hs.tls12.message_type != SSL3_MT_CERTIFICATE) {
2393 al = SSL_AD_UNEXPECTED_MESSAGE; 2393 al = SSL_AD_UNEXPECTED_MESSAGE;
2394 SSLerror(s, SSL_R_WRONG_MESSAGE_TYPE); 2394 SSLerror(s, SSL_R_WRONG_MESSAGE_TYPE);
2395 goto fatal_err; 2395 goto fatal_err;