diff --git a/CHANGELOG.md b/CHANGELOG.md index 36193a8c8..2dcf25177 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ - Apps: Build tag (**18aug2026p2**) - **Check out more Apps updates and fixes by following** [this link](https://github.com/xMasterX/all-the-plugins/commits/dev) ## Other changes - BadUSB: Moved demo files to examples folder +- NFC: Removed unreachable EMV render code that called an undefined function (by @mishamyte | PR #1085 | Fixes #1084)

---- diff --git a/applications/main/nfc/helpers/protocol_support/emv/emv_render.c b/applications/main/nfc/helpers/protocol_support/emv/emv_render.c index 9a586fe4b..ef8cdd513 100644 --- a/applications/main/nfc/helpers/protocol_support/emv/emv_render.c +++ b/applications/main/nfc/helpers/protocol_support/emv/emv_render.c @@ -1,6 +1,5 @@ #include "emv_render.h" -#include "../iso14443_4a/iso14443_4a_render.h" #include #include "nfc/nfc_app_i.h" @@ -30,28 +29,6 @@ void nfc_render_emv_uid(const uint8_t* uid, const uint8_t uid_len, FuriString* s furi_string_cat_printf(str, "\n"); } -void nfc_render_emv_data(const EmvData* data, FuriString* str) { - nfc_render_emv_pan(data->emv_application.pan, data->emv_application.pan_len, str); - nfc_render_emv_name(data->emv_application.application_name, str); -} - -void nfc_render_emv_pan(const uint8_t* data, const uint8_t len, FuriString* str) { - if(len == 0) return; - - FuriString* card_number = furi_string_alloc(); - for(uint8_t i = 0; i < len; i++) { - if((i % 2 == 0) && (i != 0)) furi_string_cat_printf(card_number, " "); - furi_string_cat_printf(card_number, "%02X", data[i]); - } - - // Cut padding 'F' from card number - furi_string_trim(card_number, "F"); - furi_string_cat(str, card_number); - furi_string_free(card_number); - - furi_string_cat_printf(str, "\n"); -} - void nfc_render_emv_currency(uint16_t cur_code, FuriString* str) { if(!cur_code) return; diff --git a/applications/main/nfc/helpers/protocol_support/emv/emv_render.h b/applications/main/nfc/helpers/protocol_support/emv/emv_render.h index de2e20ebb..2734c748e 100644 --- a/applications/main/nfc/helpers/protocol_support/emv/emv_render.h +++ b/applications/main/nfc/helpers/protocol_support/emv/emv_render.h @@ -7,12 +7,6 @@ void nfc_render_emv_info(const EmvData* data, NfcProtocolFormatType format_type, FuriString* str); -void nfc_render_emv_data(const EmvData* data, FuriString* str); - -void nfc_render_emv_pan(const uint8_t* data, const uint8_t len, FuriString* str); - -void nfc_render_emv_name(const char* data, FuriString* str); - void nfc_render_emv_application(const EmvApplication* data, FuriString* str); void nfc_render_emv_application_interchange_profile(const EmvApplication* apl, FuriString* str); diff --git a/applications/main/nfc/nfc_app.c b/applications/main/nfc/nfc_app.c index 806d4aaca..707970e43 100644 --- a/applications/main/nfc/nfc_app.c +++ b/applications/main/nfc/nfc_app.c @@ -265,7 +265,7 @@ void nfc_blink_stop(NfcApp* nfc) { notification_message(nfc->notifications, &sequence_blink_stop); } -void nfc_make_app_folders(NfcApp* instance) { +static void nfc_make_app_folders(NfcApp* instance) { furi_assert(instance); if(!storage_simply_mkdir(instance->storage, NFC_APP_FOLDER)) { diff --git a/applications/main/nfc/nfc_app_i.h b/applications/main/nfc/nfc_app_i.h index 408eaadb2..5d190532b 100644 --- a/applications/main/nfc/nfc_app_i.h +++ b/applications/main/nfc/nfc_app_i.h @@ -261,8 +261,6 @@ typedef enum { extern "C" { #endif -int32_t nfc_task(void* p); - void nfc_text_store_set(NfcApp* nfc, const char* text, ...); void nfc_text_store_clear(NfcApp* nfc); @@ -298,8 +296,6 @@ bool nfc_load_file(NfcApp* instance, FuriString* path, bool show_dialog); bool nfc_save_file(NfcApp* instance, FuriString* path); -void nfc_make_app_folder(NfcApp* instance); - void nfc_append_filename_string_when_present(NfcApp* instance, FuriString* string); void nfc_app_run_external(NfcApp* nfc, const char* app_path); diff --git a/lib/nfc/protocols/mf_classic/mf_classic_poller_i.h b/lib/nfc/protocols/mf_classic/mf_classic_poller_i.h index 3043deb15..9ff91fcc6 100644 --- a/lib/nfc/protocols/mf_classic/mf_classic_poller_i.h +++ b/lib/nfc/protocols/mf_classic/mf_classic_poller_i.h @@ -33,9 +33,6 @@ extern "C" { #define SET_PACKED_BIT(arr, bit) ((arr)[(bit) / 8] |= (1 << ((bit) % 8))) #define GET_PACKED_BIT(arr, bit) ((arr)[(bit) / 8] & (1 << ((bit) % 8))) -extern const MfClassicKey auth1_backdoor_key; -extern const MfClassicKey auth2_backdoor_key; -extern const MfClassicKey auth3_backdoor_key; extern const uint16_t valid_sums[19]; typedef enum {