diff options
Diffstat (limited to 'ssl')
-rw-r--r-- | ssl/t1_lib.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/ssl/t1_lib.c b/ssl/t1_lib.c index 09b06a5af7..8638eb9a41 100644 --- a/ssl/t1_lib.c +++ b/ssl/t1_lib.c @@ -1114,7 +1114,11 @@ static int tls_decrypt_ticket(SSL *s, const unsigned char *etick, int eticklen, } EVP_DecryptUpdate(&ctx, sdec, &slen, p, eticklen); if (EVP_DecryptFinal(&ctx, sdec + slen, &mlen) <= 0) + { + EVP_CIPHER_CTX_cleanup(&ctx); + OPENSSL_free(sdec); goto tickerr; + } slen += mlen; EVP_CIPHER_CTX_cleanup(&ctx); p = sdec; |