#include <string.h>
#include "cmdparser.h"
#include "proxmark3.h"
-#include "data.h"
#include "usb_cmd.h"
#include "ui.h"
#include "cmdhf.h"
#include "util.h"
#include "util_posix.h"
#include "cmdscript.h"
-#include "cmdcrc.h"
-
-
-unsigned int current_command = CMD_UNKNOWN;
+#include "emv/cmdemv.h" // EMV
+#ifdef WITH_SMARTCARD
+ #include "cmdsmartcard.h"
+#endif
static int CmdHelp(const char *Cmd);
static int CmdQuit(const char *Cmd);
-static int CmdRev(const char *Cmd);
static command_t CommandTable[] =
{
- {"help", CmdHelp, 1, "This help. Use '<command> help' for details of a particular command."},
- {"data", CmdData, 1, "{ Plot window / data buffer manipulation... }"},
- {"hf", CmdHF, 1, "{ High Frequency commands... }"},
- {"hw", CmdHW, 1, "{ Hardware commands... }"},
- {"lf", CmdLF, 1, "{ Low Frequency commands... }"},
- {"reveng",CmdRev, 1, "Crc calculations from the software reveng1-30"},
- {"script",CmdScript,1, "{ Scripting commands }"},
- {"quit", CmdQuit, 1, "Exit program"},
- {"exit", CmdQuit, 1, "Exit program"},
- {NULL, NULL, 0, NULL}
+ {"help", CmdHelp, 1, "This help. Use '<command> help' for details of a particular command."},
+ {"data", CmdData, 1, "{ Plot window / data buffer manipulation... }"},
+ {"hf", CmdHF, 1, "{ High Frequency commands... }"},
+ {"hw", CmdHW, 1, "{ Hardware commands... }"},
+ {"lf", CmdLF, 1, "{ Low Frequency commands... }"},
+#ifdef WITH_SMARTCARD
+ {"emv", CmdEMV, 1, "{ EMV iso14443 and iso7816... }"},
+ {"sc", CmdSmartcard,1,"{ Smartcard commands... }"},
+#else
+ {"emv", CmdEMV, 1, "{ EMV iso14443 }"},
+#endif
+ {"script",CmdScript,1, "{ Scripting commands }"},
+ {"quit", CmdQuit, 1, "Exit program"},
+ {"exit", CmdQuit, 1, "Exit program"},
+ {NULL, NULL, 0, NULL}
};
command_t* getTopLevelCommandTable()
return CommandTable;
}
-int CmdHelp(const char *Cmd)
+static int CmdHelp(const char *Cmd)
{
CmdsHelp(CommandTable);
return 0;
}
-int CmdQuit(const char *Cmd)
+static int CmdQuit(const char *Cmd)
{
return 99;
}
-int CmdRev(const char *Cmd)
-{
- CmdCrc(Cmd);
- return 0;
-}
-
//-----------------------------------------------------------------------------
// Entry point into our code: called whenever the user types a command and
// then presses Enter, which the full command line that they typed.