From dc50563ce8f26b9db84b94ae8adc5b60eabcc6ce Mon Sep 17 00:00:00 2001 From: wh201906 <1063042587@qq.com> Date: Thu, 7 Apr 2022 16:21:02 +0800 Subject: [PATCH] Make HF_14ASNIFF standalone mode compatible with old PM3 (without flashmem) --- armsrc/Standalone/Makefile.hal | 6 +++--- armsrc/Standalone/hf_14asniff.c | 10 +++++++++- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/armsrc/Standalone/Makefile.hal b/armsrc/Standalone/Makefile.hal index c9debeef8..20fd5f5ab 100644 --- a/armsrc/Standalone/Makefile.hal +++ b/armsrc/Standalone/Makefile.hal @@ -62,8 +62,8 @@ define KNOWN_STANDALONE_DEFINITIONS | LF_THAREXDE | Simulate/read EM4x50 tags | | (RDV4 only) | storing in flashmem | +----------------------------------------------------------+ -| HF_14ASNIFF | 14a sniff to flashmem | -| (RDV4 only) | | +| HF_14ASNIFF | 14a sniff to flashmem (rdv4) or ram | +| | | +----------------------------------------------------------+ | HF_14BSNIFF | 14b sniff | +----------------------------------------------------------+ @@ -121,7 +121,7 @@ STANDALONE_MODES := LF_SKELETON LF_EM4100EMUL LF_EM4100RSWB LF_EM4100RSWW LF_EM4 STANDALONE_MODES += HF_14ASNIFF HF_14BSNIFF HF_15SNIFF HF_AVEFUL HF_BOG HF_COLIN HF_CRAFTBYTE HF_ICECLASS HF_LEGIC HF_LEGICSIM HF_MATTYRUN HF_MFCSIM HF_MSDSAL HF_TCPRST HF_TMUDFORD HF_YOUNG HF_REBLAY DANKARMULTI STANDALONE_MODES_REQ_BT := HF_REBLAY STANDALONE_MODES_REQ_SMARTCARD := -STANDALONE_MODES_REQ_FLASH := LF_HIDFCBRUTE LF_ICEHID LF_NEXID LF_THAREXDE HF_14ASNIFF HF_BOG HF_COLIN HF_ICECLASS HF_MFCSIM HF_LEGICSIM +STANDALONE_MODES_REQ_FLASH := LF_HIDFCBRUTE LF_ICEHID LF_NEXID LF_THAREXDE HF_BOG HF_COLIN HF_ICECLASS HF_MFCSIM HF_LEGICSIM ifneq ($(filter $(STANDALONE),$(STANDALONE_MODES)),) STANDALONE_PLATFORM_DEFS += -DWITH_STANDALONE_$(STANDALONE) ifneq ($(filter $(STANDALONE),$(STANDALONE_MODES_REQ_SMARTCARD)),) diff --git a/armsrc/Standalone/hf_14asniff.c b/armsrc/Standalone/hf_14asniff.c index 05c8628d7..cb5469fbb 100644 --- a/armsrc/Standalone/hf_14asniff.c +++ b/armsrc/Standalone/hf_14asniff.c @@ -94,15 +94,22 @@ void RunMod(void) { StandAloneMode(); Dbprintf(_YELLOW_("HF 14A SNIFF started")); +#ifdef WITH_FLASH rdv40_spiffs_lazy_mount(); +#endif SniffIso14443a(0); Dbprintf("Stopped sniffing"); SpinDelay(200); - // Write stuff to spiffs logfile uint32_t trace_len = BigBuf_get_traceLen(); +#ifndef WITH_FLASH + // Keep stuff in BigBuf for USB/BT dumping + if (trace_len > 0) + Dbprintf("[!] Trace length (bytes) = %u", trace_len); +#else + // Write stuff to spiffs logfile if (trace_len > 0) { Dbprintf("[!] Trace length (bytes) = %u", trace_len); @@ -126,6 +133,7 @@ void RunMod(void) { SpinErr(LED_A, 200, 5); SpinDelay(100); +#endif Dbprintf("-=[ exit ]=-"); LEDsoff();