From 8ec06f5ef3c5c63a420b8292dd3ea5d0a5d6974e Mon Sep 17 00:00:00 2001 From: Oleg Moiseenko Date: Fri, 12 Jan 2018 23:37:55 +0200 Subject: [PATCH 1/1] hf mf sniff: small fixes --- armsrc/iso14443a.c | 4 ++-- client/cmdhfmf.c | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/armsrc/iso14443a.c b/armsrc/iso14443a.c index 94ca52f5..7d589f0e 100644 --- a/armsrc/iso14443a.c +++ b/armsrc/iso14443a.c @@ -2482,7 +2482,7 @@ void RAMFUNC SniffMifare(uint8_t param) { for(uint32_t sniffCounter = 0; true; ) { if(BUTTON_PRESS()) { - DbpString("cancelled by button"); + DbpString("Canceled by button."); break; } @@ -2576,7 +2576,7 @@ void RAMFUNC SniffMifare(uint8_t param) { } // main cycle - DbpString("COMMAND FINISHED"); + DbpString("COMMAND FINISHED."); FpgaDisableSscDma(); MfSniffEnd(); diff --git a/client/cmdhfmf.c b/client/cmdhfmf.c index 4956df8c..b653cf30 100644 --- a/client/cmdhfmf.c +++ b/client/cmdhfmf.c @@ -2527,14 +2527,13 @@ int CmdHF14AMfSniff(const char *Cmd){ } UsbCommand resp; - if (WaitForResponseTimeout(CMD_ACK,&resp,2000)) { + if (WaitForResponseTimeoutW(CMD_ACK, &resp, 2000, false)) { res = resp.arg[0] & 0xff; uint16_t traceLen = resp.arg[1]; len = resp.arg[2]; if (res == 0) { // we are done - free(buf); - return 0; + break; } if (res == 1) { // there is (more) data to be transferred @@ -2610,6 +2609,9 @@ int CmdHF14AMfSniff(const char *Cmd){ } // while (true) free(buf); + + msleep(300); // wait for exiting arm side. + PrintAndLog("Done."); return 0; } -- 2.39.5