]> cvs.zerfleddert.de Git - proxmark3-svn/blobdiff - client/cmdhf.c
CHG: the updated fpga image for the "hf snoop"
[proxmark3-svn] / client / cmdhf.c
index d7a52f6b3531bf09839cb60352c07cd7e9896260..d0b1f01c4f1aac43bd2a341395f11774e3053a85 100644 (file)
@@ -225,7 +225,10 @@ void annotateIso7816(char *exp, size_t size, uint8_t* cmd, uint8_t cmdsize){
        }
        // R-block (ack)
        else if ( ((cmd[0] & 0xD0) == 0x80) && ( cmdsize > 2) ) {
-               snprintf(exp, size, "R-block");
+               if ( (cmd[0] & 0x10) == 0 ) 
+                       snprintf(exp, size, "R-block ACK");
+               else
+                       snprintf(exp, size, "R-block NACK");
        }
        // I-block
        else {
@@ -528,7 +531,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 && (oddparity != ((parityBits >> (7-(j&0x0007))) & 0x01))) {
+               if (protocol != ISO_14443B &&  (isResponse || protocol == ISO_14443A)  && (oddparity != ((parityBits >> (7-(j&0x0007))) & 0x01))) {
                        snprintf(line[j/16]+(( j % 16) * 4),110, "%02x! ", frame[j]);
 
                } else {
@@ -733,6 +736,14 @@ int CmdHFSearch(const char *Cmd){
        return 0;
 }
 
+int CmdHFSnoop(const char *Cmd)
+{
+       char * pEnd;
+       UsbCommand c = {CMD_HF_SNIFFER, {strtol(Cmd, &pEnd,0),strtol(pEnd, &pEnd,0),0}};
+       SendCommand(&c);
+       return 0;
+}
+
 static command_t CommandTable[] = 
 {
   {"help",        CmdHelp,          1, "This help"},
@@ -749,6 +760,7 @@ static command_t CommandTable[] =
   {"tune",                     CmdHFTune,      0, "Continuously measure HF antenna tuning"},
   {"list",        CmdHFList,        1, "List protocol data in trace buffer"},
   {"search",      CmdHFSearch,      1, "Search for known HF tags [preliminary]"},
+  {"snoop",       CmdHFSnoop,       0, "<samples to skip (10000)> <triggers to skip (1)> Generic LF/HF Snoop in Testing stage"},
        {NULL, NULL, 0, NULL}
 };
 
Impressum, Datenschutz