Simplify testing psa_key_derivation_input_*() bad state

Signed-off-by: Waleed Elmelegy <waleed.elmelegy@arm.com>
This commit is contained in:
Waleed Elmelegy
2025-03-03 12:42:55 +00:00
parent 72b391fe07
commit b6ed6f72cd
2 changed files with 7 additions and 20 deletions

View File

@@ -5697,6 +5697,10 @@ PSA key derivation: PBKDF2-AES-CMAC-PRF-128, reject cost greater than PSA_VENDOR
depends_on:PSA_WANT_ALG_PBKDF2_AES_CMAC_PRF_128:PSA_WANT_ALG_CMAC:PSA_WANT_KEY_TYPE_AES
derive_input_invalid_cost:PSA_ALG_PBKDF2_AES_CMAC_PRF_128:PSA_VENDOR_PBKDF2_MAX_ITERATIONS+1ULL
PSA key derivation: reject calling input functions without calling setup
depends_on:PSA_WANT_ALG_SHA_256
derive_input:0:PSA_KEY_DERIVATION_INPUT_COST:INPUT_INTEGER:"01":PSA_ERROR_BAD_STATE:PSA_KEY_DERIVATION_INPUT_SALT:PSA_KEY_TYPE_NONE:"73616c74":PSA_ERROR_BAD_STATE:PSA_KEY_DERIVATION_INPUT_PASSWORD:PSA_KEY_TYPE_NONE:"706173737764":PSA_ERROR_BAD_STATE:PSA_KEY_TYPE_NONE:PSA_ERROR_BAD_STATE
PSA key derivation over capacity: HKDF
depends_on:PSA_WANT_ALG_HKDF:PSA_WANT_ALG_SHA_256
derive_over_capacity:PSA_ALG_HKDF(PSA_ALG_SHA_256)

View File

@@ -8839,7 +8839,9 @@ void derive_input(int alg_arg,
psa_set_key_usage_flags(&attributes, PSA_KEY_USAGE_DERIVE);
psa_set_key_algorithm(&attributes, alg);
PSA_ASSERT(psa_key_derivation_setup(&operation, alg));
if (alg != 0) {
PSA_ASSERT(psa_key_derivation_setup(&operation, alg));
}
for (i = 0; i < ARRAY_LENGTH(steps); i++) {
mbedtls_test_set_step(i);
@@ -8893,25 +8895,6 @@ void derive_input(int alg_arg,
}
TEST_EQUAL(actual_output_status, expected_output_status);
/* Test calling input functions after operation has been aborted
result in PSA_ERROR_BAD_STATE error.
*/
psa_key_derivation_abort(&operation);
for (i = 0; i < ARRAY_LENGTH(steps); i++) {
if (key_types[i] == INPUT_INTEGER) {
TEST_EQUAL(psa_key_derivation_input_integer(
&operation, steps[i],
mbedtls_test_parse_binary_string(inputs[i])),
PSA_ERROR_BAD_STATE);
break;
}
}
TEST_EQUAL(psa_key_derivation_input_bytes(
&operation, steps[0],
inputs[0]->x, inputs[0]->len),
PSA_ERROR_BAD_STATE);
exit:
psa_key_derivation_abort(&operation);
for (i = 0; i < ARRAY_LENGTH(keys); i++) {