From: Patrick Steuer Date: Tue, 21 May 2019 17:10:28 +0000 (+0200) Subject: s390x assembly pack: allow specifying the tag after aad in aes-ccm X-Git-Tag: openssl-3.0.0-alpha1~2053 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=887e22dd8b6f054e39b2d20fc8870eaba7fc61a8;p=oweals%2Fopenssl.git s390x assembly pack: allow specifying the tag after aad in aes-ccm 67c81ec311 forgot about s390x Signed-off-by: Patrick Steuer Reviewed-by: Tim Hudson Reviewed-by: Shane Lontis (Merged from https://github.com/openssl/openssl/pull/8971) --- diff --git a/crypto/evp/e_aes.c b/crypto/evp/e_aes.c index 6d8d4370a7..c9dbca98d7 100644 --- a/crypto/evp/e_aes.c +++ b/crypto/evp/e_aes.c @@ -2264,9 +2264,6 @@ static int s390x_aes_ccm_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, if (!cctx->aes.ccm.iv_set) return -1; - if (!enc && !cctx->aes.ccm.tag_set) - return -1; - if (out == NULL) { /* Update(): Pass message length. */ if (in == NULL) { @@ -2285,6 +2282,10 @@ static int s390x_aes_ccm_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, return len; } + /* The tag must be set before actually decrypting data */ + if (!enc && !cctx->aes.ccm.tag_set) + return -1; + /* Update(): Process message. */ if (!cctx->aes.ccm.len_set) {