Keep MD and PSA max size in sync
Some TLS code is using MD_MAX_SIZE in parts that are common to USE_PSA and non-USE_PSA, then using PSA_HASH_MAX_SIZE in parts specific to USE_PSA, and having different values causes trouble. Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
This commit is contained in:
parent
28f504e892
commit
45b34517fb
2 changed files with 13 additions and 2 deletions
|
@ -151,6 +151,7 @@ typedef enum {
|
||||||
MBEDTLS_MD_RIPEMD160, /**< The RIPEMD-160 message digest. */
|
MBEDTLS_MD_RIPEMD160, /**< The RIPEMD-160 message digest. */
|
||||||
} mbedtls_md_type_t;
|
} mbedtls_md_type_t;
|
||||||
|
|
||||||
|
/* Note: this should be kept in sync with PSA_HASH_MAX_SIZE */
|
||||||
#if defined(MBEDTLS_MD_CAN_SHA512)
|
#if defined(MBEDTLS_MD_CAN_SHA512)
|
||||||
#define MBEDTLS_MD_MAX_SIZE 64 /* longest known is SHA512 */
|
#define MBEDTLS_MD_MAX_SIZE 64 /* longest known is SHA512 */
|
||||||
#elif defined(MBEDTLS_MD_CAN_SHA384)
|
#elif defined(MBEDTLS_MD_CAN_SHA384)
|
||||||
|
|
|
@ -128,12 +128,22 @@
|
||||||
/* Note: for HMAC-SHA-3, the block size is 144 bytes for HMAC-SHA3-226,
|
/* Note: for HMAC-SHA-3, the block size is 144 bytes for HMAC-SHA3-226,
|
||||||
* 136 bytes for HMAC-SHA3-256, 104 bytes for SHA3-384, 72 bytes for
|
* 136 bytes for HMAC-SHA3-256, 104 bytes for SHA3-384, 72 bytes for
|
||||||
* HMAC-SHA3-512. */
|
* HMAC-SHA3-512. */
|
||||||
#if defined(PSA_WANT_ALG_SHA_512) || defined(PSA_WANT_ALG_SHA_384)
|
/* Note: PSA_HASH_MAX_SIZE should be kept in sync with MBEDTLS_MD_MAX_SIZE. */
|
||||||
|
#if defined(PSA_WANT_ALG_SHA_512)
|
||||||
#define PSA_HASH_MAX_SIZE 64
|
#define PSA_HASH_MAX_SIZE 64
|
||||||
#define PSA_HMAC_MAX_HASH_BLOCK_SIZE 128
|
#define PSA_HMAC_MAX_HASH_BLOCK_SIZE 128
|
||||||
#else
|
#elif defined(PSA_WANT_ALG_SHA_384)
|
||||||
|
#define PSA_HASH_MAX_SIZE 48
|
||||||
|
#define PSA_HMAC_MAX_HASH_BLOCK_SIZE 128
|
||||||
|
#elif defined(PSA_WANT_ALG_SHA_256)
|
||||||
#define PSA_HASH_MAX_SIZE 32
|
#define PSA_HASH_MAX_SIZE 32
|
||||||
#define PSA_HMAC_MAX_HASH_BLOCK_SIZE 64
|
#define PSA_HMAC_MAX_HASH_BLOCK_SIZE 64
|
||||||
|
#elif defined(PSA_WANT_ALG_SHA_224)
|
||||||
|
#define PSA_HASH_MAX_SIZE 28
|
||||||
|
#define PSA_HMAC_MAX_HASH_BLOCK_SIZE 64
|
||||||
|
#else /* SHA-1 or smaller */
|
||||||
|
#define PSA_HASH_MAX_SIZE 20
|
||||||
|
#define PSA_HMAC_MAX_HASH_BLOCK_SIZE 64
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/** \def PSA_MAC_MAX_SIZE
|
/** \def PSA_MAC_MAX_SIZE
|
||||||
|
|
Loading…
Reference in a new issue