From c22950c9d057be71938f7509280e72ce19c57cee Mon Sep 17 00:00:00 2001 From: Paul Elliott Date: Thu, 8 Jul 2021 16:50:01 +0100 Subject: [PATCH] Change PSA Cipher macro safety to use block length Although checking if the key was symmetric was correct, its easier to read if we just check the block length is not zero before we use it in a division. Signed-off-by: Paul Elliott --- include/psa/crypto_sizes.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/include/psa/crypto_sizes.h b/include/psa/crypto_sizes.h index 836f9ee147..1f8b6c305c 100644 --- a/include/psa/crypto_sizes.h +++ b/include/psa/crypto_sizes.h @@ -992,8 +992,7 @@ */ #define PSA_CIPHER_ENCRYPT_OUTPUT_SIZE(key_type, alg, input_length) \ (alg == PSA_ALG_CBC_PKCS7 ? \ - (((key_type) & PSA_KEY_TYPE_CATEGORY_MASK) \ - == PSA_KEY_TYPE_CATEGORY_SYMMETRIC ? \ + (PSA_BLOCK_CIPHER_BLOCK_LENGTH(key_type) != 0 ? \ PSA_ROUND_UP_TO_MULTIPLE(PSA_BLOCK_CIPHER_BLOCK_LENGTH(key_type), \ (input_length) + 1) + \ PSA_CIPHER_IV_LENGTH((key_type), (alg)) : 0) : \