]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - client/cmdhf.c
- Little change to description in client
[proxmark3-svn] / client / cmdhf.c
index 16f7bb0f39f661c180723bd0c52bd1306407f8bd..b1e670059a849d0758c79a350b36a8a5a95dd361 100644 (file)
@@ -378,7 +378,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 (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 {
@@ -556,23 +556,31 @@ int CmdHFSearch(const char *Cmd){
        if (ans > 0) {
                PrintAndLog("\nValid ISO14443A Tag Found - Quiting Search\n");
                return ans;
-       } 
+       }
        ans = HFiClassReader("", false, false);
        if (ans) {
                PrintAndLog("\nValid iClass Tag (or PicoPass Tag) Found - Quiting Search\n");
                return ans;
        }
+       ans = HF14BInfo(false);
+       if (ans) {
+               PrintAndLog("\nValid ISO14443B Tag Found - Quiting Search\n");
+               return ans;
+       }
        ans = HF15Reader("", false);
        if (ans) {
                PrintAndLog("\nValid ISO15693 Tag Found - Quiting Search\n");
                return ans;
        }
+       PrintAndLog("\nno known/supported 13.56 MHz tags found\n");
+       return 0;
+}
 
-
-       //14b has issues currently...
-       //ans = CmdHF14BRead(Cmd);
-       //if (ans > 0) return ans;
-
+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;
 }
 
@@ -590,7 +598,8 @@ 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]"},
-       {NULL, NULL, 0, NULL}
+  {"snoop",       CmdHFSnoop,       0, "<samples to skip (10000)> <triggers to skip (1)> Generic HF Snoop"},
+  {NULL, NULL, 0, NULL}
 };
 
 int CmdHF(const char *Cmd)
Impressum, Datenschutz