diff options
author | tb <> | 2021-12-26 15:10:59 +0000 |
---|---|---|
committer | tb <> | 2021-12-26 15:10:59 +0000 |
commit | 9656351e09b56a51fb7279fc55f9ec06f3459223 (patch) | |
tree | 9904bf7ffa9ad2af2073419c5dcad5811c813383 /src | |
parent | 4d9688185fced2e3bb90ecfac76d461ac4ba4f87 (diff) | |
download | openbsd-9656351e09b56a51fb7279fc55f9ec06f3459223.tar.gz openbsd-9656351e09b56a51fb7279fc55f9ec06f3459223.tar.bz2 openbsd-9656351e09b56a51fb7279fc55f9ec06f3459223.zip |
Hoist memset of CBB above EVP_MD_CTX_new() and HMAC_CTX_new() to avoid
a use of uninitialized in the unlikely event that either of them fails.
Problem introduced in r1.128.
CID 345113
ok jsing
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/libssl/ssl_srvr.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lib/libssl/ssl_srvr.c b/src/lib/libssl/ssl_srvr.c index 665fcc5037..330f9176d8 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.128 2021/12/09 17:53:29 tb Exp $ */ | 1 | /* $OpenBSD: ssl_srvr.c,v 1.129 2021/12/26 15:10:59 tb 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 | * |
@@ -2494,13 +2494,13 @@ ssl3_send_newsession_ticket(SSL *s) | |||
2494 | * New Session Ticket - RFC 5077, section 3.3. | 2494 | * New Session Ticket - RFC 5077, section 3.3. |
2495 | */ | 2495 | */ |
2496 | 2496 | ||
2497 | memset(&cbb, 0, sizeof(cbb)); | ||
2498 | |||
2497 | if ((ctx = EVP_CIPHER_CTX_new()) == NULL) | 2499 | if ((ctx = EVP_CIPHER_CTX_new()) == NULL) |
2498 | goto err; | 2500 | goto err; |
2499 | if ((hctx = HMAC_CTX_new()) == NULL) | 2501 | if ((hctx = HMAC_CTX_new()) == NULL) |
2500 | goto err; | 2502 | goto err; |
2501 | 2503 | ||
2502 | memset(&cbb, 0, sizeof(cbb)); | ||
2503 | |||
2504 | if (S3I(s)->hs.state == SSL3_ST_SW_SESSION_TICKET_A) { | 2504 | if (S3I(s)->hs.state == SSL3_ST_SW_SESSION_TICKET_A) { |
2505 | if (!ssl3_handshake_msg_start(s, &cbb, &session_ticket, | 2505 | if (!ssl3_handshake_msg_start(s, &cbb, &session_ticket, |
2506 | SSL3_MT_NEWSESSION_TICKET)) | 2506 | SSL3_MT_NEWSESSION_TICKET)) |