From 5360d62062d15ecbd87dd4e15560006b703531ff Mon Sep 17 00:00:00 2001 From: Pol Henarejos Date: Mon, 20 Feb 2023 10:19:25 +0100 Subject: [PATCH] Fix increasing counter on make credential. Closes #6 Signed-off-by: Pol Henarejos --- src/fido/cbor_make_credential.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/fido/cbor_make_credential.c b/src/fido/cbor_make_credential.c index ebe03fe..c798e13 100644 --- a/src/fido/cbor_make_credential.c +++ b/src/fido/cbor_make_credential.c @@ -15,17 +15,17 @@ * along with this program. If not, see . */ -#include "common.h" -#include "ctap2_cbor.h" #include "cbor_make_credential.h" +#include "ctap2_cbor.h" +#include "hid/ctap_hid.h" #include "fido.h" #include "ctap.h" #include "files.h" -#include "random.h" -#include "hsm.h" -#include #include "apdu.h" #include "credential.h" +#include "mbedtls/sha256.h" +#include "random.h" +#include "hsm.h" int cbor_make_credential(const uint8_t *data, size_t len) { CborParser parser; @@ -440,6 +440,9 @@ int cbor_make_credential(const uint8_t *data, size_t len) { if (credential_store(cred_id, cred_id_len, rp_id_hash) != 0) CBOR_ERROR(CTAP2_ERR_KEY_STORE_FULL); } + ctr++; + flash_write_data_to_file(ef_counter, (uint8_t *)&ctr, sizeof(ctr)); + low_flash_available(); err: CBOR_FREE_BYTE_STRING(clientDataHash); CBOR_FREE_BYTE_STRING(pinUvAuthParam);