From 2a0d4e2995f22c47bfaa41bc66cf604099416277 Mon Sep 17 00:00:00 2001 From: Ryan Everett Date: Thu, 23 Nov 2023 16:33:12 +0000 Subject: [PATCH] Revert "Refactor `psa_load_persistent_key_into_slot` to remove bad `goto`" This reverts commit d69f4017fbf949ab3aceca178b034b73e6e43dbc. Signed-off-by: Ryan Everett --- library/psa_crypto_slot_management.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/library/psa_crypto_slot_management.c b/library/psa_crypto_slot_management.c index 027800984c..5ecc3a76c7 100644 --- a/library/psa_crypto_slot_management.c +++ b/library/psa_crypto_slot_management.c @@ -234,10 +234,14 @@ static psa_status_t psa_load_persistent_key_into_slot(psa_key_slot_t *slot) status = PSA_ERROR_DATA_INVALID; goto exit; } - data = (psa_se_key_data_storage_t *) key_data; - key_data = data->slot_number; - key_data_length = sizeof(key_data); + status = psa_copy_key_material_into_slot( + slot, data->slot_number, sizeof(data->slot_number)); + + if (status == PSA_SUCCESS) { + slot->status = PSA_SLOT_OCCUPIED; + } + goto exit; } #endif /* MBEDTLS_PSA_CRYPTO_SE_C */