From b42e2b5493501f9f2640fcce4315f65f47fd54a6 Mon Sep 17 00:00:00 2001 From: Pol Henarejos Date: Tue, 30 Aug 2022 16:57:01 +0200 Subject: [PATCH] Fix processing apdu. --- src/apdu.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/apdu.c b/src/apdu.c index 58ac39a..91ca9ca 100644 --- a/src/apdu.c +++ b/src/apdu.c @@ -18,6 +18,7 @@ #include "apdu.h" #include "hsm.h" #include "usb.h" +#include uint8_t *rdata_gr = NULL; uint16_t rdata_bk = 0x0; @@ -25,7 +26,8 @@ extern uint32_t timeout; int process_apdu() { led_set_blink(BLINK_PROCESSING); - if (!current_app) { + if (!current_app) + { if (INS(apdu) == 0xA4 && P1(apdu) == 0x04 && (P2(apdu) == 0x00 || P2(apdu) == 0x4)) { //select by AID for (int a = 0; a < num_apps; a++) { if ((current_app = apps[a].select_aid(&apps[a]))) { @@ -111,7 +113,7 @@ size_t apdu_process(const uint8_t *buffer, size_t buffer_size) { apdu.rlen = 0; apdu.rdata = usb_prepare_response(); rdata_gr = apdu.rdata; - return apdu.nc; + return 1; } return 0; }