Fix memory leak.
PR#2531
(Imported from upstream's 15de0f609c859883347357aaf6cc685c797358bd)
Change-Id: I4ee3a5ce22ee047a8eaa2c74f26971109a23680c
diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c
index 5bc0ae9..4e79f74 100644
--- a/ssl/t1_lib.c
+++ b/ssl/t1_lib.c
@@ -2906,7 +2906,11 @@
}
EVP_DecryptUpdate(&ctx, sdec, &slen, p, eticklen);
if (EVP_DecryptFinal_ex(&ctx, sdec + slen, &mlen) <= 0)
+ {
+ EVP_CIPHER_CTX_cleanup(&ctx);
+ OPENSSL_free(sdec);
return 2;
+ }
slen += mlen;
EVP_CIPHER_CTX_cleanup(&ctx);
p = sdec;