]>
cvs.zerfleddert.de Git - proxmark3-svn/blob - client/cmdlfhid.c
344662e1dd23f61609f09676c8b12e7aa675e26e
   1 //----------------------------------------------------------------------------- 
   2 // Copyright (C) 2010 iZsh <izsh at fail0verflow.com> 
   4 // This code is licensed to you under the terms of the GNU GPL, version 2 or, 
   5 // at your option, any later version. See the LICENSE.txt file for the text of 
   7 //----------------------------------------------------------------------------- 
   8 // Low frequency HID commands 
   9 //----------------------------------------------------------------------------- 
  15 #include "cmdparser.h" 
  18 static int CmdHelp(const char *Cmd
); 
  20 int CmdHIDDemod(const char *Cmd
) 
  22   if (GraphTraceLen 
< 4800) { 
  23     PrintAndLog("too short; need at least 4800 samples"); 
  28   for (int i 
= 0; i 
< GraphTraceLen
; ++i
) { 
  29     if (GraphBuffer
[i
] < 0) { 
  39 int CmdHIDDemodFSK(const char *Cmd
) 
  41   UsbCommand c
={CMD_HID_DEMOD_FSK
}; 
  46 int CmdHIDSim(const char *Cmd
) 
  48   unsigned int hi 
= 0, lo 
= 0; 
  51   while (sscanf(&Cmd
[i
++], "%1x", &n 
) == 1) { 
  52     hi 
= (hi 
<< 4) | (lo 
>> 28); 
  53     lo 
= (lo 
<< 4) | (n 
& 0xf); 
  56   PrintAndLog("Emulating tag with ID %x%16x", hi
, lo
); 
  58   UsbCommand c 
= {CMD_HID_SIM_TAG
, {hi
, lo
, 0}}; 
  63 static command_t CommandTable
[] =  
  65   {"help",      CmdHelp
,        1, "This help"}, 
  66   {"demod",     CmdHIDDemod
,    1, "Demodulate HID Prox Card II (not optimal)"}, 
  67   {"fskdemod",  CmdHIDDemodFSK
, 0, "Realtime HID FSK demodulator"}, 
  68   {"sim",       CmdHIDSim
,      0, "<ID> -- HID tag simulator"}, 
  72 int CmdLFHID(const char *Cmd
) 
  74   CmdsParse(CommandTable
, Cmd
); 
  78 int CmdHelp(const char *Cmd
) 
  80   CmdsHelp(CommandTable
);