From 57fbdb19397ec8b45a002252f5f187d7f6c76a19 Mon Sep 17 00:00:00 2001 From: Gilles Peskine Date: Wed, 17 Oct 2018 18:29:17 +0200 Subject: [PATCH] Use a public macro for AEAD tag length variations Avoid depending on the encoding of algorithms inside psa_crypto.c. --- library/psa_crypto.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/library/psa_crypto.c b/library/psa_crypto.c index f3a2c64af..ab9ec725e 100644 --- a/library/psa_crypto.c +++ b/library/psa_crypto.c @@ -1225,7 +1225,7 @@ static const mbedtls_cipher_info_t *mbedtls_cipher_info_from_psa( mbedtls_cipher_id_t cipher_id_tmp; if( PSA_ALG_IS_AEAD( alg ) ) - alg &= ~PSA_ALG_AEAD_TAG_LENGTH_MASK; + alg = PSA_ALG_AEAD_WITH_TAG_LENGTH( alg, 0 ); if( PSA_ALG_IS_CIPHER( alg ) || PSA_ALG_IS_AEAD( alg ) ) { @@ -1249,10 +1249,10 @@ static const mbedtls_cipher_info_t *mbedtls_cipher_info_from_psa( case PSA_ALG_CBC_PKCS7: mode = MBEDTLS_MODE_CBC; break; - case PSA_ALG_CCM & ~PSA_ALG_AEAD_TAG_LENGTH_MASK: + case PSA_ALG_AEAD_WITH_TAG_LENGTH( PSA_ALG_CCM, 0 ): mode = MBEDTLS_MODE_CCM; break; - case PSA_ALG_GCM & ~PSA_ALG_AEAD_TAG_LENGTH_MASK: + case PSA_ALG_AEAD_WITH_TAG_LENGTH( PSA_ALG_GCM, 0 ): mode = MBEDTLS_MODE_GCM; break; default: