diff options
author | tb <> | 2023-11-18 10:51:09 +0000 |
---|---|---|
committer | tb <> | 2023-11-18 10:51:09 +0000 |
commit | 3e25494c5893929089adcb46ca2253f6458f75cb (patch) | |
tree | 916efbb5352c398aff73d5bb21bde66045804014 /src/lib/libssl/ssl_srvr.c | |
parent | 202f6dd3ad82fa4d195b752e8178e86669956604 (diff) | |
download | openbsd-3e25494c5893929089adcb46ca2253f6458f75cb.tar.gz openbsd-3e25494c5893929089adcb46ca2253f6458f75cb.tar.bz2 openbsd-3e25494c5893929089adcb46ca2253f6458f75cb.zip |
Check for negative EVP_CIPHER_CTX_iv_length() return in libssl
ok beck
Diffstat (limited to 'src/lib/libssl/ssl_srvr.c')
-rw-r--r-- | src/lib/libssl/ssl_srvr.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/lib/libssl/ssl_srvr.c b/src/lib/libssl/ssl_srvr.c index a518e1ac91..a571549b64 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.156 2023/07/08 16:40:13 beck Exp $ */ | 1 | /* $OpenBSD: ssl_srvr.c,v 1.157 2023/11/18 10:51:09 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 | * |
@@ -2343,7 +2343,7 @@ ssl3_send_newsession_ticket(SSL *s) | |||
2343 | unsigned int hlen; | 2343 | unsigned int hlen; |
2344 | EVP_CIPHER_CTX *ctx = NULL; | 2344 | EVP_CIPHER_CTX *ctx = NULL; |
2345 | HMAC_CTX *hctx = NULL; | 2345 | HMAC_CTX *hctx = NULL; |
2346 | int len; | 2346 | int iv_len, len; |
2347 | 2347 | ||
2348 | /* | 2348 | /* |
2349 | * New Session Ticket - RFC 5077, section 3.3. | 2349 | * New Session Ticket - RFC 5077, section 3.3. |
@@ -2426,7 +2426,9 @@ ssl3_send_newsession_ticket(SSL *s) | |||
2426 | goto err; | 2426 | goto err; |
2427 | if (!CBB_add_bytes(&ticket, key_name, sizeof(key_name))) | 2427 | if (!CBB_add_bytes(&ticket, key_name, sizeof(key_name))) |
2428 | goto err; | 2428 | goto err; |
2429 | if (!CBB_add_bytes(&ticket, iv, EVP_CIPHER_CTX_iv_length(ctx))) | 2429 | if ((iv_len = EVP_CIPHER_CTX_iv_length(ctx)) < 0) |
2430 | goto err; | ||
2431 | if (!CBB_add_bytes(&ticket, iv, iv_len)) | ||
2430 | goto err; | 2432 | goto err; |
2431 | if (!CBB_add_bytes(&ticket, enc_session, enc_session_len)) | 2433 | if (!CBB_add_bytes(&ticket, enc_session, enc_session_len)) |
2432 | goto err; | 2434 | goto err; |