From 5b39f1c9af535e8693e6996caa976c856db9104f Mon Sep 17 00:00:00 2001 From: Gilles Peskine Date: Fri, 28 May 2021 01:24:57 +0200 Subject: [PATCH] Make immediate constants unsigned PSA_KEY_LIFETIME_FROM_PERSISTENCE_AND_LOCATION shifts the location value (location << 8). This can go outside the range of a 32-bit int if the location value is above 2^23 as is the case here. Asan rightfully complained about it. Make the value unsigned to avoid the integer overflow. Signed-off-by: Gilles Peskine --- tests/suites/test_suite_psa_crypto_slot_management.data | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/suites/test_suite_psa_crypto_slot_management.data b/tests/suites/test_suite_psa_crypto_slot_management.data index 35c850fa9..68b196d32 100644 --- a/tests/suites/test_suite_psa_crypto_slot_management.data +++ b/tests/suites/test_suite_psa_crypto_slot_management.data @@ -134,11 +134,11 @@ create_fail:PSA_KEY_LIFETIME_FROM_PERSISTENCE_AND_LOCATION(PSA_KEY_PERSISTENCE_R Create failure: invalid location for a persistent key depends_on:MBEDTLS_PSA_CRYPTO_STORAGE_C -create_fail:PSA_KEY_LIFETIME_FROM_PERSISTENCE_AND_LOCATION(PSA_KEY_PERSISTENCE_DEFAULT, 0xbad10c):1:PSA_ERROR_INVALID_ARGUMENT +create_fail:PSA_KEY_LIFETIME_FROM_PERSISTENCE_AND_LOCATION(PSA_KEY_PERSISTENCE_DEFAULT, 0xbad10cU):1:PSA_ERROR_INVALID_ARGUMENT Create failure: invalid location for a volatile key depends_on:MBEDTLS_PSA_CRYPTO_STORAGE_C -create_fail:PSA_KEY_LIFETIME_FROM_PERSISTENCE_AND_LOCATION(PSA_KEY_PERSISTENCE_VOLATILE, 0xbad10c):0:PSA_ERROR_INVALID_ARGUMENT +create_fail:PSA_KEY_LIFETIME_FROM_PERSISTENCE_AND_LOCATION(PSA_KEY_PERSISTENCE_VOLATILE, 0xbad10cU):0:PSA_ERROR_INVALID_ARGUMENT Create failure: invalid key id (0) for a persistent key depends_on:MBEDTLS_PSA_CRYPTO_STORAGE_C