mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-02-21 06:35:04 +08:00
minor bugfixes to hf mf sniff and hf 14a snoop
- tracing was not always enabled when starting hf mf sniff or hf 14a snoop - ATQA was displayed in wrong byte order in hf mf sniff - 4 Byte UIDs were displayed as 7 Byte UIDs (padded with 0x000000) in hf mf sniff - same for logfile names. - assignment (=) had been used instead of == in comparisons (shouldn't have been relevant though)
This commit is contained in:
parent
9a573554e0
commit
991f13f27d
2 changed files with 13 additions and 5 deletions
|
@ -507,6 +507,7 @@ void RAMFUNC SnoopIso14443a(uint8_t param) {
|
|||
LEDsoff();
|
||||
// init trace buffer
|
||||
iso14a_clear_trace();
|
||||
iso14a_set_tracing(TRUE);
|
||||
|
||||
// We won't start recording the frames that we acquire until we trigger;
|
||||
// a good trigger condition to get started is probably when we see a
|
||||
|
@ -2623,7 +2624,8 @@ void RAMFUNC SniffMifare(uint8_t param) {
|
|||
// C(red) A(yellow) B(green)
|
||||
LEDsoff();
|
||||
// init trace buffer
|
||||
iso14a_clear_trace();
|
||||
iso14a_clear_trace();
|
||||
iso14a_set_tracing(TRUE);
|
||||
|
||||
// The command (reader -> tag) that we're receiving.
|
||||
// The length of a received command will in most cases be no more than 18 bytes.
|
||||
|
|
|
@ -1848,7 +1848,8 @@ int CmdHF14AMfSniff(const char *Cmd){
|
|||
int blockLen = 0;
|
||||
int num = 0;
|
||||
int pckNum = 0;
|
||||
uint8_t uid[8];
|
||||
uint8_t uid[7];
|
||||
uint8_t uid_len;
|
||||
uint8_t atqa[2];
|
||||
uint8_t sak;
|
||||
bool isTag;
|
||||
|
@ -1926,14 +1927,19 @@ int CmdHF14AMfSniff(const char *Cmd){
|
|||
bufPtr += 4;
|
||||
len = bufPtr[0];
|
||||
bufPtr++;
|
||||
if ((len == 14) && (bufPtr[0] = 0xff) && (bufPtr[1] = 0xff)) {
|
||||
if ((len == 14) && (bufPtr[0] == 0xff) && (bufPtr[1] == 0xff)) {
|
||||
memcpy(uid, bufPtr + 2, 7);
|
||||
memcpy(atqa, bufPtr + 2 + 7, 2);
|
||||
uid_len = (atqa[0] & 0xC0) == 0x40 ? 7 : 4;
|
||||
sak = bufPtr[11];
|
||||
|
||||
PrintAndLog("tag select uid:%s atqa:%02x %02x sak:0x%02x", sprint_hex(uid, 7), atqa[0], atqa[1], sak);
|
||||
PrintAndLog("tag select uid:%s atqa:0x%02x%02x sak:0x%02x",
|
||||
sprint_hex(uid + (7 - uid_len), uid_len),
|
||||
atqa[1],
|
||||
atqa[0],
|
||||
sak);
|
||||
if (wantLogToFile || wantDecrypt) {
|
||||
FillFileNameByUID(logHexFileName, uid, ".log", 7);
|
||||
FillFileNameByUID(logHexFileName, uid + (7 - uid_len), ".log", uid_len);
|
||||
AddLogCurrentDT(logHexFileName);
|
||||
}
|
||||
if (wantDecrypt) mfTraceInit(uid, atqa, sak, wantSaveToEmlFile);
|
||||
|
|
Loading…
Reference in a new issue