mirror of
https://github.com/yuzu-mirror/mbedtls.git
synced 2026-04-20 22:05:15 +00:00
Don't exercise if the algorithm is not supported
Parsing a key and importing it into PSA may result in a policy that specifies an algorithm that is not included in the build. This happens if the key type is supported, but not the algorithm, e.g. in a build with MBEDTLS_ECP_C but not MBEDTLS_ECDSA_C. Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
This commit is contained in:
parent
1d33876d37
commit
34955677e5
3 changed files with 67 additions and 2 deletions
|
|
@ -48,10 +48,14 @@ static int test_psa_bridge(const mbedtls_pk_context *ctx,
|
|||
|
||||
TEST_EQUAL(mbedtls_pk_get_psa_attributes(ctx, usage_flag, &attributes), 0);
|
||||
TEST_EQUAL(mbedtls_pk_import_into_psa(ctx, &attributes, &psa_key), 0);
|
||||
|
||||
psa_algorithm_t exercise_usage = psa_get_key_usage_flags(&attributes);
|
||||
psa_algorithm_t exercise_alg = psa_get_key_algorithm(&attributes);
|
||||
TEST_ASSERT(mbedtls_test_psa_exercise_key(psa_key,
|
||||
exercise_usage, exercise_alg));
|
||||
if (mbedtls_test_can_exercise_psa_algorithm(exercise_alg)) {
|
||||
TEST_ASSERT(mbedtls_test_psa_exercise_key(psa_key,
|
||||
exercise_usage,
|
||||
exercise_alg));
|
||||
}
|
||||
|
||||
mbedtls_test_set_step((unsigned long) -1);
|
||||
ok = 1;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue