mirror of
https://github.com/Proxmark/proxmark3.git
synced 2025-08-19 21:03:23 -07:00
fix/add help and update CHANGELOG.md
This commit is contained in:
parent
c8a50276fd
commit
75ed634795
3 changed files with 36 additions and 24 deletions
|
@ -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]
|
||||||
|
|
||||||
|
|
|
@ -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)
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
#ifndef CMDPARSER_H__
|
#ifndef CMDPARSER_H__
|
||||||
#define CMDPARSER_H__
|
#define CMDPARSER_H__
|
||||||
|
|
||||||
typedef struct command_s
|
typedef struct command_s
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue