mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-07-16 10:03:04 -07:00
textual
This commit is contained in:
parent
68d71c751d
commit
e016582e1f
2 changed files with 19 additions and 15 deletions
|
@ -1073,7 +1073,7 @@ static int CmdHF15Sniff(const char *Cmd) {
|
||||||
static int CmdHF15Reader(const char *Cmd) {
|
static int CmdHF15Reader(const char *Cmd) {
|
||||||
CLIParserContext *ctx;
|
CLIParserContext *ctx;
|
||||||
CLIParserInit(&ctx, "hf 15 reader",
|
CLIParserInit(&ctx, "hf 15 reader",
|
||||||
"This command continues loops and tries to identify ISO 15693 tags\n",
|
"Act as a ISO15693 reader. Look for ISO15693 tags until Enter or the pm3 button is pressed\n",
|
||||||
"hf 15 reader\n"
|
"hf 15 reader\n"
|
||||||
"hf 15 reader -1");
|
"hf 15 reader -1");
|
||||||
|
|
||||||
|
|
|
@ -272,17 +272,6 @@ static int usage_hf_iclass_managekeys(void) {
|
||||||
PrintAndLogEx(NORMAL, "");
|
PrintAndLogEx(NORMAL, "");
|
||||||
return PM3_SUCCESS;
|
return PM3_SUCCESS;
|
||||||
}
|
}
|
||||||
static int usage_hf_iclass_reader(void) {
|
|
||||||
PrintAndLogEx(NORMAL, "Act as a iCLASS reader. Look for iCLASS tags until Enter or the pm3 button is pressed\n");
|
|
||||||
PrintAndLogEx(NORMAL, "Usage: hf iclass reader [h] [1]\n");
|
|
||||||
PrintAndLogEx(NORMAL, "Options:");
|
|
||||||
PrintAndLogEx(NORMAL, " h Show this help");
|
|
||||||
PrintAndLogEx(NORMAL, " 1 read only 1 tag");
|
|
||||||
PrintAndLogEx(NORMAL, "Examples:");
|
|
||||||
PrintAndLogEx(NORMAL, _YELLOW_("\thf iclass reader 1"));
|
|
||||||
PrintAndLogEx(NORMAL, "");
|
|
||||||
return PM3_SUCCESS;
|
|
||||||
}
|
|
||||||
static int usage_hf_iclass_loclass(void) {
|
static int usage_hf_iclass_loclass(void) {
|
||||||
PrintAndLogEx(NORMAL, "Execute the offline part of loclass attack");
|
PrintAndLogEx(NORMAL, "Execute the offline part of loclass attack");
|
||||||
PrintAndLogEx(NORMAL, " An iclass dumpfile is assumed to consist of an arbitrary number of");
|
PrintAndLogEx(NORMAL, " An iclass dumpfile is assumed to consist of an arbitrary number of");
|
||||||
|
@ -875,10 +864,25 @@ int read_iclass_csn(bool loop, bool verbose) {
|
||||||
}
|
}
|
||||||
|
|
||||||
static int CmdHFiClassReader(const char *Cmd) {
|
static int CmdHFiClassReader(const char *Cmd) {
|
||||||
char cmdp = tolower(param_getchar(Cmd, 0));
|
|
||||||
if (cmdp == 'h') return usage_hf_iclass_reader();
|
|
||||||
bool loop_read = (cmdp == '1') ? false : true;
|
|
||||||
|
|
||||||
|
CLIParserContext *ctx;
|
||||||
|
CLIParserInit(&ctx, "hf iclass reader",
|
||||||
|
"Act as a iCLASS reader. Look for iCLASS tags until Enter or the pm3 button is pressed\n",
|
||||||
|
"hf iclass reader\n"
|
||||||
|
"hf iclass reader -1");
|
||||||
|
|
||||||
|
void *argtable[] = {
|
||||||
|
arg_param_begin,
|
||||||
|
arg_lit0("", NULL, "read once"),
|
||||||
|
arg_param_end
|
||||||
|
};
|
||||||
|
CLIExecWithReturn(ctx, Cmd, argtable, true);
|
||||||
|
bool loop_read = arg_get_lit(ctx, 1);
|
||||||
|
CLIParserFree(ctx);
|
||||||
|
|
||||||
|
|
||||||
|
PrintAndLogEx(INFO, "Starting iCLASS reader mode");
|
||||||
|
PrintAndLogEx(INFO, "press " _YELLOW_("`enter`") " to cancel");
|
||||||
return read_iclass_csn(loop_read, true);
|
return read_iclass_csn(loop_read, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue