summaryrefslogtreecommitdiff
path: root/Cryptlib/OpenSSL/crypto/evp/e_aes_cbc_hmac_sha256.c
diff options
context:
space:
mode:
authorGary Lin <glin@suse.com>2016-07-21 12:28:11 +0800
committerPeter Jones <pjones@redhat.com>2016-09-06 15:05:36 -0400
commit8dcfecc6c76effa8afe0d4b6eca95023d51f1e03 (patch)
tree42c00f22bb1e6c668703bd83939f30dda01ad7e6 /Cryptlib/OpenSSL/crypto/evp/e_aes_cbc_hmac_sha256.c
parentd8b0e8e0ce347d9f5830cfeb3fd09a887a903d09 (diff)
downloadefi-boot-shim-8dcfecc6c76effa8afe0d4b6eca95023d51f1e03.tar.gz
efi-boot-shim-8dcfecc6c76effa8afe0d4b6eca95023d51f1e03.zip
Update to openssl 1.0.2h
Signed-off-by: Gary Lin <glin@suse.com>
Diffstat (limited to 'Cryptlib/OpenSSL/crypto/evp/e_aes_cbc_hmac_sha256.c')
-rw-r--r--Cryptlib/OpenSSL/crypto/evp/e_aes_cbc_hmac_sha256.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/Cryptlib/OpenSSL/crypto/evp/e_aes_cbc_hmac_sha256.c b/Cryptlib/OpenSSL/crypto/evp/e_aes_cbc_hmac_sha256.c
index 37800213..46c9d033 100644
--- a/Cryptlib/OpenSSL/crypto/evp/e_aes_cbc_hmac_sha256.c
+++ b/Cryptlib/OpenSSL/crypto/evp/e_aes_cbc_hmac_sha256.c
@@ -60,6 +60,7 @@
# include <openssl/sha.h>
# include <openssl/rand.h>
# include "modes_lcl.h"
+# include "constant_time_locl.h"
# ifndef EVP_CIPH_FLAG_AEAD_CIPHER
# define EVP_CIPH_FLAG_AEAD_CIPHER 0x200000
@@ -589,6 +590,8 @@ static int aesni_cbc_hmac_sha256_cipher(EVP_CIPHER_CTX *ctx,
maxpad |= (255 - maxpad) >> (sizeof(maxpad) * 8 - 8);
maxpad &= 255;
+ ret &= constant_time_ge(maxpad, pad);
+
inp_len = len - (SHA256_DIGEST_LENGTH + pad + 1);
mask = (0 - ((inp_len - len) >> (sizeof(inp_len) * 8 - 1)));
inp_len &= mask;