fix/add help and update CHANGELOG.md

This commit is contained in:
pwpiwi 2019-02-19 09:21:17 +01:00
commit 75ed634795
3 changed files with 36 additions and 24 deletions

View file

@ -13,7 +13,7 @@ This project uses the changelog in accordance with [keepchangelog](http://keepac
### Fixed ### Fixed
- AC-Mode decoding for HitagS - AC-Mode decoding for HitagS
- Wrong UID at HitagS simulation - Wrong UID at HitagS simulation
- 'hf 15 sim' now works as expected (piwi) - `hf 15 sim` now works as expected (piwi)
### Added ### Added
- Support Standard Communication Mode in HITAG S - Support Standard Communication Mode in HITAG S
@ -25,8 +25,9 @@ This project uses the changelog in accordance with [keepchangelog](http://keepac
- Added `hf fido` `assert` and `make` commands from fido2 protocol (authenticatorMakeCredential and authenticatorGetAssertion) (Merlok) - Added `hf fido` `assert` and `make` commands from fido2 protocol (authenticatorMakeCredential and authenticatorGetAssertion) (Merlok)
- Added `lf paradox clone` to clone a Paradox card - Added `lf paradox clone` to clone a Paradox card
- Added `emv` commmands working for both contactless and smart cards (Merlok) - Added `emv` commmands working for both contactless and smart cards (Merlok)
- Added 'hf 15 snoop' (piwi) - Added `hf 15 snoop` (piwi)
- Added support for standard USB Smartcard Readers (piwi)
- Added `hf plot` (piwi)
## [v3.1.0][2018-10-10] ## [v3.1.0][2018-10-10]

View file

@ -16,6 +16,7 @@
#include "comms.h" #include "comms.h"
#include "ui.h" #include "ui.h"
#include "cmdparser.h" #include "cmdparser.h"
#include "cliparser/cliparser.h"
#include "cmdhf14a.h" #include "cmdhf14a.h"
#include "cmdhf14b.h" #include "cmdhf14b.h"
#include "cmdhf15.h" #include "cmdhf15.h"
@ -102,6 +103,16 @@ int CmdHFSnoop(const char *Cmd)
static int CmdHFPlot(const char *Cmd) static int CmdHFPlot(const char *Cmd)
{ {
CLIParserInit("hf plot",
"Plots HF signal after RF signal path and A/D conversion.",
"This can be used after any hf command and will show the last few milliseconds of the HF signal.\n"
"Note: If the last hf command terminated because of a timeout you will most probably see nothing.\n");
void* argtable[] = {
arg_param_begin,
arg_param_end
};
CLIExecWithReturn(Cmd, argtable, true);
uint8_t buf[FPGA_TRACE_SIZE]; uint8_t buf[FPGA_TRACE_SIZE];
if (GetFromFpgaRAM(buf, FPGA_TRACE_SIZE)) { if (GetFromFpgaRAM(buf, FPGA_TRACE_SIZE)) {
@ -118,32 +129,32 @@ static int CmdHFPlot(const char *Cmd)
} }
static command_t CommandTable[] = static command_t CommandTable[] =
{ {
{"help", CmdHelp, 0, "This help"}, {"help", CmdHelp, 1, "This help"},
{"14a", CmdHF14A, 1, "{ ISO14443A RFIDs... }"}, {"14a", CmdHF14A, 0, "{ ISO14443A RFIDs... }"},
{"14b", CmdHF14B, 1, "{ ISO14443B RFIDs... }"}, {"14b", CmdHF14B, 0, "{ ISO14443B RFIDs... }"},
{"15", CmdHF15, 1, "{ ISO15693 RFIDs... }"}, {"15", CmdHF15, 1, "{ ISO15693 RFIDs... }"},
{"epa", CmdHFEPA, 1, "{ German Identification Card... }"}, {"epa", CmdHFEPA, 0, "{ German Identification Card... }"},
{"legic", CmdHFLegic, 1, "{ LEGIC RFIDs... }"}, {"legic", CmdHFLegic, 0, "{ LEGIC RFIDs... }"},
{"iclass", CmdHFiClass, 1, "{ ICLASS RFIDs... }"}, {"iclass", CmdHFiClass, 1, "{ ICLASS RFIDs... }"},
{"mf", CmdHFMF, 1, "{ MIFARE RFIDs... }"}, {"mf", CmdHFMF, 1, "{ MIFARE RFIDs... }"},
{"mfu", CmdHFMFUltra, 1, "{ MIFARE Ultralight RFIDs... }"}, {"mfu", CmdHFMFUltra, 1, "{ MIFARE Ultralight RFIDs... }"},
{"mfp", CmdHFMFP, 1, "{ MIFARE Plus RFIDs... }"}, {"mfp", CmdHFMFP, 0, "{ MIFARE Plus RFIDs... }"},
{"topaz", CmdHFTopaz, 1, "{ TOPAZ (NFC Type 1) RFIDs... }"}, {"topaz", CmdHFTopaz, 0, "{ TOPAZ (NFC Type 1) RFIDs... }"},
{"fido", CmdHFFido, 1, "{ FIDO and FIDO2 authenticators... }"}, {"fido", CmdHFFido, 0, "{ FIDO and FIDO2 authenticators... }"},
{"tune", CmdHFTune, 1, "Continuously measure HF antenna tuning"}, {"tune", CmdHFTune, 0, "Continuously measure HF antenna tuning"},
{"list", CmdHFList, 1, "List protocol data in trace buffer"}, {"list", CmdHFList, 1, "List protocol data in trace buffer"},
{"plot", CmdHFPlot, 1, "Plot signal"}, {"plot", CmdHFPlot, 0, "Plot signal"},
{"search", CmdHFSearch, 1, "Search for known HF tags [preliminary]"}, {"search", CmdHFSearch, 0, "Search for known HF tags [preliminary]"},
{"snoop", CmdHFSnoop, 1, "<samples to skip (10000)> <triggers to skip (1)> Generic HF Snoop"}, {"snoop", CmdHFSnoop, 0, "<samples to skip (10000)> <triggers to skip (1)> Generic HF Snoop"},
{NULL, NULL, 0, NULL} {NULL, NULL, 0, NULL}
}; };
int CmdHF(const char *Cmd) int CmdHF(const char *Cmd)
{ {
CmdsParse(CommandTable, Cmd); CmdsParse(CommandTable, Cmd);
return 0; return 0;
} }
int CmdHelp(const char *Cmd) int CmdHelp(const char *Cmd)

View file

@ -9,7 +9,7 @@
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
#ifndef CMDPARSER_H__ #ifndef CMDPARSER_H__
#define CMDPARSER_H__ #define CMDPARSER_H__
typedef struct command_s typedef struct command_s
{ {