X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/e3f9c50d81680809c6cdb821dee419a666ecd2c3..a8ee668770c99f651346266a506b79192e944ab3:/client/cmdhf.c diff --git a/client/cmdhf.c b/client/cmdhf.c index 41c10c29..a14c2e59 100644 --- a/client/cmdhf.c +++ b/client/cmdhf.c @@ -270,17 +270,16 @@ void annotateIso14443b(char *exp, size_t size, uint8_t* cmd, uint8_t cmdsize) case ISO14443B_REQB : { switch ( cmd[2] & 0x07 ) { - case 0: snprintf(exp, size,"1 slot "); - case 1: snprintf(exp, size,"2 slots "); - case 2: snprintf(exp, size,"4 slots "); - case 3: snprintf(exp, size,"8 slots "); - default: snprintf(exp, size,"16 slots "); - } - - if ( (cmd[2] & 0x4) == 1 ) - snprintf(exp, size,"REQB"); - else + case 0: snprintf(exp, size,"1 slot ");break; + case 1: snprintf(exp, size,"2 slots ");break; + case 2: snprintf(exp, size,"4 slots ");break; + case 3: snprintf(exp, size,"8 slots ");break; + default: snprintf(exp, size,"16 slots ");break; + } + if ( (cmd[2] & 0x8) ) snprintf(exp, size,"WUPB"); + else + snprintf(exp, size,"REQB"); break; } case ISO14443B_ATTRIB : snprintf(exp,size,"ATTRIB");break; @@ -543,7 +542,7 @@ uint16_t printTraceLine(uint16_t tracepos, uint16_t traceLen, uint8_t *trace, ui oddparity ^= (((frame[j] & 0xFF) >> k) & 0x01); } uint8_t parityBits = parityBytes[j>>3]; - if (protocol != ISO_14443B && (isResponse || protocol == ISO_14443A) && (oddparity != ((parityBits >> (7-(j&0x0007))) & 0x01))) { + if (protocol != ISO_14443B && protocol != ISO_7816_4 && (isResponse || protocol == ISO_14443A) && (oddparity != ((parityBits >> (7-(j&0x0007))) & 0x01))) { snprintf(line[j/16]+(( j % 16) * 4),110, "%02x! ", frame[j]); } else { @@ -562,9 +561,10 @@ uint16_t printTraceLine(uint16_t tracepos, uint16_t traceLen, uint8_t *trace, ui } } - if(data_len == 0){ + if(data_len == 0 ) sprintf(line[0],""); - } + + //--- Draw the CRC column char *crc = (crcStatus == 0 ? "!crc" : (crcStatus == 1 ? " ok " : " ")); @@ -742,12 +742,12 @@ int CmdHFSearch(const char *Cmd){ int ans = CmdHF14AReader("s"); if (ans > 0) { - PrintAndLog("\nValid ISO14443A Tag Found - Quiting Search\n"); + PrintAndLog("\nValid ISO14443-A Tag Found - Quiting Search\n"); return ans; } ans = CmdHF14BReader("s"); if (ans) { - PrintAndLog("\nValid ISO14443B Tag Found - Quiting Search\n"); + PrintAndLog("\nValid ISO14443-B Tag Found - Quiting Search\n"); return ans; } ans = HFiClassReader("", false, false);