From dc979194fa863863bb3090649beeaf7faca77f0d Mon Sep 17 00:00:00 2001 From: Pol Henarejos Date: Sun, 23 Jun 2024 01:00:14 +0200 Subject: [PATCH] Fix crash in mbedtls 3.6 Signed-off-by: Pol Henarejos --- src/hsm/sc_hsm.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/hsm/sc_hsm.c b/src/hsm/sc_hsm.c index 69d7a3e..66daccb 100644 --- a/src/hsm/sc_hsm.c +++ b/src/hsm/sc_hsm.c @@ -513,9 +513,10 @@ int store_keys(void *key_ctx, int type, uint8_t key_id) { } else if (type & PICO_KEYS_KEY_EC) { mbedtls_ecdsa_context *ecdsa = (mbedtls_ecdsa_context *) key_ctx; + size_t olen = 0; kdata[0] = ecdsa->grp.id & 0xff; - mbedtls_ecp_write_key_ext(ecdsa, (size_t *)&key_size, kdata + 1, sizeof(kdata) - 1); - key_size++; + mbedtls_ecp_write_key_ext(ecdsa, &olen, kdata + 1, sizeof(kdata) - 1); + key_size = olen + 1; } else if (type & PICO_KEYS_KEY_AES) { if (type == PICO_KEYS_KEY_AES_128) {