summaryrefslogtreecommitdiff
path: root/external/openssl/CVE-2014-3567.patch
diff options
context:
space:
mode:
Diffstat (limited to 'external/openssl/CVE-2014-3567.patch')
-rw-r--r--external/openssl/CVE-2014-3567.patch14
1 files changed, 14 insertions, 0 deletions
diff --git a/external/openssl/CVE-2014-3567.patch b/external/openssl/CVE-2014-3567.patch
new file mode 100644
index 000000000000..db158f30b506
--- /dev/null
+++ b/external/openssl/CVE-2014-3567.patch
@@ -0,0 +1,14 @@
+diff -up openssl-1.0.1e/ssl/t1_lib.c.ticket-leak openssl-1.0.1e/ssl/t1_lib.c
+--- a/a/ssl/t1_lib.c.ticket-leak 2014-10-15 13:19:26.825454374 +0200
++++ b/b/ssl/t1_lib.c 2014-10-15 13:19:59.955202293 +0200
+@@ -2280,7 +2280,10 @@ static int tls_decrypt_ticket(SSL *s, co
+ HMAC_Final(&hctx, tick_hmac, NULL);
+ HMAC_CTX_cleanup(&hctx);
+ if (CRYPTO_memcmp(tick_hmac, etick + eticklen, mlen))
++ {
++ EVP_CIPHER_CTX_cleanup(&ctx);
+ return 2;
++ }
+ /* Attempt to decrypt session data */
+ /* Move p after IV to start of encrypted ticket, update length */
+ p = etick + 16 + EVP_CIPHER_CTX_iv_length(&ctx);