Handle a memory allocation failure in ssl3_init_finished_mac()
The ssl3_init_finished_mac() function can fail, in which case we need to
propagate the error up through the stack.
RT#3198
Reviewed-by: Rich Salz <rsalz@openssl.org>
diff --git a/ssl/statem/statem.c b/ssl/statem/statem.c
index 0b0595d..28483e7 100644
--- a/ssl/statem/statem.c
+++ b/ssl/statem/statem.c
@@ -332,8 +332,12 @@
goto end;
}
- if (!server || st->state != MSG_FLOW_RENEGOTIATE)
- ssl3_init_finished_mac(s);
+ if (!server || st->state != MSG_FLOW_RENEGOTIATE) {
+ if (!ssl3_init_finished_mac(s)) {
+ ossl_statem_set_error(s);
+ goto end;
+ }
+ }
if (server) {
if (st->state != MSG_FLOW_RENEGOTIATE) {