[FL-3639] Fix MF DESFire record file handling (#3167)

This commit is contained in:
Georgii Surkov 2023-10-28 16:56:49 +03:00 committed by GitHub
parent d92b0a82cc
commit 844e0f10e5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 3 additions and 1 deletions

View file

@ -197,6 +197,7 @@ void nfc_render_mf_desfire_file_settings_data(
furi_string_cat_printf(str, "size %lu\n", record_size);
break;
case MfDesfireFileTypeValue:
record_size = MF_DESFIRE_VALUE_SIZE;
furi_string_cat_printf(
str, "lo %lu hi %lu\n", settings->value.lo_limit, settings->value.hi_limit);
furi_string_cat_printf(

View file

@ -29,6 +29,7 @@ extern "C" {
#define MF_DESFIRE_UID_SIZE (7)
#define MF_DESFIRE_BATCH_SIZE (5)
#define MF_DESFIRE_APP_ID_SIZE (3)
#define MF_DESFIRE_VALUE_SIZE (4)
typedef struct {
uint8_t hw_vendor;

View file

@ -353,7 +353,7 @@ MfDesfireError mf_desfire_poller_async_read_file_records(
furi_assert(instance);
bit_buffer_reset(instance->input_buffer);
bit_buffer_append_byte(instance->input_buffer, MF_DESFIRE_CMD_READ_DATA);
bit_buffer_append_byte(instance->input_buffer, MF_DESFIRE_CMD_READ_RECORDS);
bit_buffer_append_byte(instance->input_buffer, id);
bit_buffer_append_bytes(instance->input_buffer, (const uint8_t*)&offset, 3);
bit_buffer_append_bytes(instance->input_buffer, (const uint8_t*)&size, 3);