diff options
author | Rich Salz <rsalz@openssl.org> | 2017-04-24 18:23:11 -0400 |
---|---|---|
committer | Rich Salz <rsalz@openssl.org> | 2017-04-24 18:23:11 -0400 |
commit | 1e0b1ae58393bc25b5ece816b2df0525a862bdd1 (patch) | |
tree | 33d594601df9a80b1b4a9805fa08eb92f8ade275 /engines | |
parent | c13ff3d222d38f66f5cde3d46d8c8dd6b2055d82 (diff) |
check length sanity before correcting in EVP_CTRL_AEAD_TLS1_AAD
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3290)
Diffstat (limited to 'engines')
-rw-r--r-- | engines/e_dasync.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/engines/e_dasync.c b/engines/e_dasync.c index 89b12775b1..4e3e9369fc 100644 --- a/engines/e_dasync.c +++ b/engines/e_dasync.c @@ -606,6 +606,8 @@ static int dasync_cipher_ctrl_helper(EVP_CIPHER_CTX *ctx, int type, int arg, if (pipe_ctx->enc) { if ((p[arg - 4] << 8 | p[arg - 3]) >= TLS1_1_VERSION) { + if (len < AES_BLOCK_SIZE) + return 0; len -= AES_BLOCK_SIZE; } |