diff --git a/client/src/cmdanalyse.c b/client/src/cmdanalyse.c index c567b18c3..4d3352da8 100644 --- a/client/src/cmdanalyse.c +++ b/client/src/cmdanalyse.c @@ -1052,7 +1052,7 @@ static int CmdAnalyseFoo(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("r", "raw", "", "raw bytes (strx)"), + arg_str1("r", "raw", "", "raw bytes"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); diff --git a/client/src/cmddata.c b/client/src/cmddata.c index 1188b5308..70bc65b44 100644 --- a/client/src/cmddata.c +++ b/client/src/cmddata.c @@ -2407,7 +2407,7 @@ static int Cmdbin2hex(const char *Cmd) { ); void *argtable[] = { arg_param_begin, - arg_strx0("d", "data", "", "binary string to convert"), + arg_str1("d", "data", "", "binary string to convert"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); diff --git a/client/src/cmdflashmem.c b/client/src/cmdflashmem.c index c7af3141f..e7a42085b 100644 --- a/client/src/cmdflashmem.c +++ b/client/src/cmdflashmem.c @@ -167,7 +167,7 @@ static int CmdFlashMemLoad(const char *Cmd) { arg_lit0("m", "mifare,mfc", "upload 6 bytes keys (mifare key dictionary)"), arg_lit0("i", "iclass", "upload 8 bytes keys (iClass key dictionary)"), arg_lit0("t", "t55xx", "upload 4 bytes keys (password dictionary)"), - arg_strx0("f", "file", "", "file name"), + arg_str1("f", "file", "", "file name"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); @@ -327,7 +327,7 @@ static int CmdFlashMemDump(const char *Cmd) { arg_int0("o", "offset", "", "offset in memory"), arg_int0("l", "len", "", "length"), arg_lit0("v", "view", "view dump"), - arg_strx0("f", "file", "", "file name"), + arg_str0("f", "file", "", "file name"), arg_int0("c", "cols", "", "column breaks (def 32)"), arg_param_end }; diff --git a/client/src/cmdhf14a.c b/client/src/cmdhf14a.c index b55043ff9..123f3d929 100644 --- a/client/src/cmdhf14a.c +++ b/client/src/cmdhf14a.c @@ -2274,7 +2274,7 @@ static int CmdHf14AFindapdu(const char *Cmd) { arg_str0(NULL, "p2", "", "Start value of P2 (1 hex byte)"), arg_u64_0("r", "reset", "", "Minimum secondes before resetting the tag (to prevent timeout issues). Default is 5 minutes"), arg_u64_0("e", "error-limit", "", "Maximum times an status word other than 0x9000 or 0x6D00 is shown. Default is 512."), - arg_strx0("s", "skip-ins", "", "Do not test an instructions (can be specified multiple times)"), + arg_strx0("s", "skip-ins", "", "Do not test an instruction (can be specified multiple times)"), arg_lit0("l", "with-le", "Search for APDUs with Le=0 (case 2S) as well"), arg_lit0("v", "verbose", "Verbose output"), arg_param_end diff --git a/client/src/cmdhf14b.c b/client/src/cmdhf14b.c index bd085210d..e6503478f 100644 --- a/client/src/cmdhf14b.c +++ b/client/src/cmdhf14b.c @@ -221,7 +221,7 @@ static int CmdHF14BSim(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("u", "uid", "hex", "4byte UID/PUPI"), + arg_str1("u", "uid", "hex", "4byte UID/PUPI"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); @@ -288,7 +288,7 @@ static int CmdHF14BCmdRaw(const char *Cmd) { arg_lit0("r", NULL, "do not read response from card"), arg_int0("t", "timeout", "", "timeout in ms"), arg_lit0("v", "verbose", "verbose"), - arg_strx0("d", "data", "", "data, bytes to send"), + arg_str0("d", "data", "", "data, bytes to send"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); @@ -1276,7 +1276,7 @@ static int CmdHF14BDump(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("f", "file", "", "(optional) filename, if no UID will be used as filename"), + arg_str0("f", "file", "", "(optional) filename, if no UID will be used as filename"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, true); @@ -1822,7 +1822,7 @@ static int CmdHF14BAPDU(const char *Cmd) { " must be 4 bytes: "), arg_lit0("e", "extended", "make extended length apdu if `m` parameter included"), arg_int0("l", "le", "", "Le apdu parameter if `m` parameter included"), - arg_strx1("d", "data", "", " if `m` parameter included"), + arg_str1("d", "data", "", " if `m` parameter included"), arg_int0(NULL, "timeout", "", "timeout in ms"), arg_param_end }; diff --git a/client/src/cmdhf15.c b/client/src/cmdhf15.c index 73652837b..16071df8b 100644 --- a/client/src/cmdhf15.c +++ b/client/src/cmdhf15.c @@ -1450,7 +1450,7 @@ static int CmdHF15Raw(const char *Cmd) { arg_lit0("c", "crc", "calculate and append CRC"), arg_lit0("k", NULL, "keep signal field ON after receive"), arg_lit0("r", NULL, "do not read response"), - arg_strx1("d", "data", "", "raw bytes to send"), + arg_str1("d", "data", "", "raw bytes to send"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); diff --git a/client/src/cmdhffelica.c b/client/src/cmdhffelica.c index 02f14c893..d6a03f0ef 100644 --- a/client/src/cmdhffelica.c +++ b/client/src/cmdhffelica.c @@ -2122,7 +2122,7 @@ static int CmdHFFelicaCmdRaw(const char *Cmd) { arg_u64_0("n", NULL, "", "number of bits"), arg_lit0("r", NULL, "do not read response"), arg_lit0("s", NULL, "active signal field ON with select"), - arg_strx1(NULL, NULL, "", "raw bytes to send"), + arg_str1(NULL, NULL, "", "raw bytes to send"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); diff --git a/client/src/cmdhfksx6924.c b/client/src/cmdhfksx6924.c index 05a838bb0..6642804d2 100644 --- a/client/src/cmdhfksx6924.c +++ b/client/src/cmdhfksx6924.c @@ -244,7 +244,7 @@ static int CmdHFKSX6924Initialize(const char *Cmd) { arg_param_begin, arg_lit0("k", "keep", "keep field ON for next command"), arg_lit0("a", "apdu", "show APDU reqests and responses"), - arg_strx1(NULL, NULL, "", NULL), + arg_str1(NULL, NULL, "", NULL), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, true); @@ -297,7 +297,7 @@ static int CmdHFKSX6924PRec(const char *Cmd) { arg_param_begin, arg_lit0("k", "keep", "keep field ON for next command"), arg_lit0("a", "apdu", "show APDU reqests and responses"), - arg_strx1(NULL, NULL, "", NULL), + arg_str1(NULL, NULL, "", NULL), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, true); diff --git a/client/src/cmdhfmfdes.c b/client/src/cmdhfmfdes.c index c8b165dda..69630e679 100644 --- a/client/src/cmdhfmfdes.c +++ b/client/src/cmdhfmfdes.c @@ -1035,7 +1035,7 @@ static int CmdHF14aDesChk(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0(NULL, "aid", "", "Use specific AID (3 hex bytes, big endian)"), + arg_str0(NULL, "aid", "", "Use specific AID (3 hex bytes, big endian)"), arg_str0("k", "key", "", "Key for checking (HEX 16 bytes)"), arg_str0("d", "dict", "", "File with keys dictionary"), arg_lit0(NULL, "pattern1b", "Check all 1-byte combinations of key (0000...0000, 0101...0101, 0202...0202, ...)"), @@ -1893,8 +1893,8 @@ static int CmdHF14ADesBruteApps(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("s", "start", "", "Starting App ID as hex bytes (3 bytes, big endian)"), - arg_strx0("e", "end", "", "Last App ID as hex bytes (3 bytes, big endian)"), + arg_str0("s", "start", "", "Starting App ID as hex bytes (3 bytes, big endian)"), + arg_str0("e", "end", "", "Last App ID as hex bytes (3 bytes, big endian)"), arg_int0("i", "step", "", "Increment step when bruteforcing"), arg_lit0("m", "mad", "Only bruteforce the MAD range"), arg_param_end diff --git a/client/src/cmdhfmfp.c b/client/src/cmdhfmfp.c index 89584260a..339d8fae4 100644 --- a/client/src/cmdhfmfp.c +++ b/client/src/cmdhfmfp.c @@ -456,7 +456,7 @@ static int CmdHFMFPWritePerso(const char *Cmd) { arg_param_begin, arg_lit0("v", "verbose", "show internal data."), arg_str1(NULL, "ki", "", " key number, 2 hex bytes"), - arg_strx0(NULL, "key", "", " key, 16 hex bytes"), + arg_str0(NULL, "key", "", " key, 16 hex bytes"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, true); @@ -521,7 +521,7 @@ static int CmdHFMFPInitPerso(const char *Cmd) { void *argtable[] = { arg_param_begin, arg_litn("v", "verbose", 0, 2, "show internal data."), - arg_strx0("k", "key", "", "key, 16 hex bytes"), + arg_str0("k", "key", "", "key, 16 hex bytes"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, true); diff --git a/client/src/cmdlfdestron.c b/client/src/cmdlfdestron.c index 7c8cf2760..a510089aa 100644 --- a/client/src/cmdlfdestron.c +++ b/client/src/cmdlfdestron.c @@ -136,7 +136,7 @@ static int CmdDestronClone(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx1("u", "uid", "", "5 bytes max"), + arg_str1("u", "uid", "", "5 bytes max"), arg_lit0(NULL, "q5", "optional - specify writing to Q5/T5555 tag"), arg_lit0(NULL, "em", "optional - specify writing to EM4305/4469 tag"), arg_param_end diff --git a/client/src/cmdlfguard.c b/client/src/cmdlfguard.c index acd6aab47..4a31e8f19 100644 --- a/client/src/cmdlfguard.c +++ b/client/src/cmdlfguard.c @@ -182,7 +182,7 @@ static int CmdGuardDemod(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("r", "raw", "", "raw bytes"), + arg_str0("r", "raw", "", "raw bytes"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, true); diff --git a/client/src/cmdlfhid.c b/client/src/cmdlfhid.c index 984dc482d..103dd9f87 100644 --- a/client/src/cmdlfhid.c +++ b/client/src/cmdlfhid.c @@ -246,7 +246,7 @@ static int CmdHIDSim(const char *Cmd) { arg_u64_0(NULL, "cn", "", "card number"), arg_u64_0("i", NULL, "", "issue level"), arg_u64_0("o", "oem", "", "OEM code"), - arg_strx0("r", "raw", "", "raw bytes"), + arg_str0("r", "raw", "", "raw bytes"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); @@ -330,7 +330,7 @@ static int CmdHIDClone(const char *Cmd) { arg_u64_0(NULL, "cn", "", "card number"), arg_int0("i", NULL, "", "issue level"), arg_int0("o", "oem", "", "OEM code"), - arg_strx0("r", "raw", "", "raw bytes"), + arg_str0("r", "raw", "", "raw bytes"), arg_lit0(NULL, "q5", "optional - specify writing to Q5/T5555 tag"), arg_lit0(NULL, "em", "optional - specify writing to EM4305/4469 tag"), arg_str0(NULL, "bin", "", "Binary string i.e 0001001001"), diff --git a/client/src/cmdlfidteck.c b/client/src/cmdlfidteck.c index 81bf270ad..d9830c282 100644 --- a/client/src/cmdlfidteck.c +++ b/client/src/cmdlfidteck.c @@ -112,7 +112,7 @@ static int CmdIdteckClone(const char *Cmd) { ); void *argtable[] = { arg_param_begin, - arg_strx0("r", "raw", "", "raw bytes"), + arg_str1("r", "raw", "", "raw bytes"), arg_lit0(NULL, "q5", "optional - specify writing to Q5/T5555 tag"), arg_lit0(NULL, "em", "optional - specify writing to EM4305/4469 tag"), arg_param_end @@ -178,7 +178,7 @@ static int CmdIdteckSim(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("r", "raw", "", "raw bytes"), + arg_str1("r", "raw", "", "raw bytes"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); diff --git a/client/src/cmdlfindala.c b/client/src/cmdlfindala.c index e18f34301..3ffed0453 100644 --- a/client/src/cmdlfindala.c +++ b/client/src/cmdlfindala.c @@ -542,7 +542,7 @@ static int CmdIndalaSim(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("r", "raw", "", "raw bytes"), + arg_str0("r", "raw", "", "raw bytes"), arg_int0(NULL, "heden", "", "Cardnumber for Heden 2L format"), arg_param_end }; @@ -639,7 +639,7 @@ static int CmdIndalaClone(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("r", "raw", "", "raw bytes"), + arg_str0("r", "raw", "", "raw bytes"), arg_int0(NULL, "heden", "", "Card number for Heden 2L format"), arg_int0(NULL, "fc", "", "Facility code (26 bit H10301 format)"), arg_int0(NULL, "cn", "", "Card number (26 bit H10301 format)"), diff --git a/client/src/cmdlfmotorola.c b/client/src/cmdlfmotorola.c index dd00cfca6..b4d8fa1d2 100644 --- a/client/src/cmdlfmotorola.c +++ b/client/src/cmdlfmotorola.c @@ -193,7 +193,7 @@ static int CmdMotorolaClone(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx1("r", "raw", "", "raw hex bytes. 8 bytes"), + arg_str1("r", "raw", "", "raw hex bytes. 8 bytes"), arg_lit0(NULL, "q5", "optional - specify writing to Q5/T5555 tag"), arg_lit0(NULL, "em", "optional - specify writing to EM4305/4469 tag"), arg_param_end diff --git a/client/src/cmdlfviking.c b/client/src/cmdlfviking.c index 72ae4df45..206e65c67 100644 --- a/client/src/cmdlfviking.c +++ b/client/src/cmdlfviking.c @@ -111,7 +111,7 @@ static int CmdVikingClone(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0(NULL, "cn", "", "8 digit hex viking card number"), + arg_str1(NULL, "cn", "", "8 digit hex viking card number"), arg_lit0(NULL, "q5", "optional - specify writing to Q5/T5555 tag"), arg_lit0(NULL, "em", "optional - specify writing to EM4305/4469 tag"), arg_param_end @@ -185,7 +185,7 @@ static int CmdVikingSim(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0(NULL, "cn", "", "8 digit hex viking card number"), + arg_str1(NULL, "cn", "", "8 digit hex viking card number"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); diff --git a/client/src/cmdnfc.c b/client/src/cmdnfc.c index ca0f31a15..3606eb5b4 100644 --- a/client/src/cmdnfc.c +++ b/client/src/cmdnfc.c @@ -70,7 +70,7 @@ static int CmdNfcDecode(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("d", "data", "", "NDEF data to decode"), + arg_str0("d", "data", "", "NDEF data to decode"), arg_str0("f", "file", "", "file to load"), arg_lit0("v", "verbose", "verbose mode"), arg_param_end diff --git a/client/src/cmdtrace.c b/client/src/cmdtrace.c index 7b04250d7..55e270d84 100644 --- a/client/src/cmdtrace.c +++ b/client/src/cmdtrace.c @@ -590,7 +590,7 @@ static int CmdTraceLoad(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("f", "file", "", "trace file to load"), + arg_str1("f", "file", "", "trace file to load"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); @@ -629,7 +629,7 @@ static int CmdTraceSave(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("f", "file", "", "trace file to save"), + arg_str1("f", "file", "", "trace file to save"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); @@ -677,7 +677,7 @@ int CmdTraceListAlias(const char *Cmd, const char *alias, const char *protocol) arg_lit0("u", NULL, "display times in microseconds instead of clock cycles"), arg_lit0("x", NULL, "show hexdump to convert to pcap(ng)\n" " or to import into Wireshark using encapsulation type \"ISO 14443\""), - arg_strx0(NULL, "dict", "", "use dictionary keys file"), + arg_str0(NULL, "dict", "", "use dictionary keys file"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, true); @@ -725,8 +725,8 @@ int CmdTraceList(const char *Cmd) { arg_lit0("u", NULL, "display times in microseconds instead of clock cycles"), arg_lit0("x", NULL, "show hexdump to convert to pcap(ng)\n" " or to import into Wireshark using encapsulation type \"ISO 14443\""), - arg_strx0("t", "type", NULL, "protocol to annotate the trace"), - arg_strx0(NULL, "dict", "", "use dictionary keys file"), + arg_str0("t", "type", NULL, "protocol to annotate the trace"), + arg_str0(NULL, "dict", "", "use dictionary keys file"), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, false); diff --git a/client/src/cmdwiegand.c b/client/src/cmdwiegand.c index e29db6a7b..3873a500a 100644 --- a/client/src/cmdwiegand.c +++ b/client/src/cmdwiegand.c @@ -113,7 +113,7 @@ int CmdWiegandDecode(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_strx0("r", "raw", "", "raw hex to be decoded"), + arg_str0("r", "raw", "", "raw hex to be decoded"), arg_str0("b", "bin", "", "binary string to be decoded"), arg_param_end }; diff --git a/client/src/emv/cmdemv.c b/client/src/emv/cmdemv.c index 8cd66dfaf..e738db089 100644 --- a/client/src/emv/cmdemv.c +++ b/client/src/emv/cmdemv.c @@ -81,10 +81,10 @@ static int CmdEMVSelect(const char *Cmd) { arg_param_begin, arg_lit0("sS", "select", "activate field and select card"), arg_lit0("kK", "keep", "keep field for next command"), - arg_lit0("aA", "apdu", "show APDU reqests and responses"), + arg_lit0("aA", "apdu", "show APDU requests and responses"), arg_lit0("tT", "tlv", "TLV decode results"), arg_lit0("wW", "wired", "Send data via contact (iso7816) interface. Contactless interface set by default."), - arg_strx0(NULL, NULL, "", NULL), + arg_str1(NULL, NULL, "", NULL), arg_param_end }; CLIExecWithReturn(ctx, Cmd, argtable, true); diff --git a/doc/cliparser.md b/doc/cliparser.md index 08d277180..118a82c86 100644 --- a/doc/cliparser.md +++ b/doc/cliparser.md @@ -139,7 +139,7 @@ e.g. lf indala clone -r a0000000a0002021 -> this uses ..... arg_param_begin, arg_lit0("l", "long", "optional - long UID 224 bits"), arg_int0("c", "heden", "", "Cardnumber for Heden 2L format"), - arg_strx0("r", "raw", "", "raw bytes"), + arg_str0("r", "raw", "", "raw bytes"), arg_lit0("q", "Q5", "optional - specify writing to Q5/T5555 tag"), arg_int0(NULL, "fc", "", "Facility Code (26 bit format)"), arg_int0(NULL, "cn", "", "Cardnumber (26 bit format)"), diff --git a/doc/commands.json b/doc/commands.json index 52293fee2..cb186f43c 100644 --- a/doc/commands.json +++ b/doc/commands.json @@ -76,9 +76,9 @@ "offline": true, "options": [ "-h, --help this help", - "-r, --raw raw bytes (strx)" + "-r, --raw raw bytes" ], - "usage": "analyse foo [-h] [-r ]..." + "usage": "analyse foo [-h] -r " }, "analyse freq": { "command": "analyse freq", @@ -227,7 +227,7 @@ "-h, --help this help", "-d, --data binary string to convert" ], - "usage": "data bin2hex [-h] [-d ]..." + "usage": "data bin2hex [-h] -d " }, "data bitsamples": { "command": "data bitsamples", @@ -831,7 +831,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "emv list [-h1fcrux] [--dict ]..." + "usage": "emv list [-h1fcrux] [--dict ]" }, "emv pse": { "command": "emv pse", @@ -941,11 +941,11 @@ "-h, --help this help", "-s, -s, --select activate field and select card", "-k, -k, --keep keep field for next command", - "-a, -a, --apdu show apdu reqests and responses", + "-a, -a, --apdu show apdu requests and responses", "-t, -t, --tlv tlv decode results", "-w, -w, --wired send data via contact (iso7816) interface. contactless interface set by default." ], - "usage": "emv select [-hskatw] []..." + "usage": "emv select [-hskatw] " }, "emv test": { "command": "emv test", @@ -1055,7 +1055,7 @@ "--p2 start value of p2 (1 hex byte)", "-r, --reset minimum secondes before resetting the tag (to prevent timeout issues). default is 5 minutes", "-e, --error-limit maximum times an status word other than 0x9000 or 0x6d00 is shown. default is 512.", - "-s, --skip-ins do not test an instructions (can be specified multiple times)", + "-s, --skip-ins do not test an instruction (can be specified multiple times)", "-l, --with-le search for apdus with le=0 (case 2s) as well", "-v, --verbose verbose output" ], @@ -1093,7 +1093,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf 14a list [-h1fcrux] [--dict ]..." + "usage": "hf 14a list [-h1fcrux] [--dict ]" }, "hf 14a info": { "command": "hf 14a info", @@ -1226,7 +1226,7 @@ "-h, --help this help", "-f, --file (optional) filename, if no uid will be used as filename" ], - "usage": "hf 14b dump [-h] [-f ]..." + "usage": "hf 14b dump [-h] [-f ]" }, "hf 14b help": { "command": "hf 14b help", @@ -1251,7 +1251,7 @@ "-d, --data if `m` parameter included", "--timeout timeout in ms" ], - "usage": "hf 14b apdu [-hskte] [--decode] [-m ] [-l ] -d [-d ]... [--timeout ]" + "usage": "hf 14b apdu [-hskte] [--decode] [-m ] [-l ] -d [--timeout ]" }, "hf 14b info": { "command": "hf 14b info", @@ -1286,7 +1286,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf 14b list [-h1fcrux] [--dict ]..." + "usage": "hf 14b list [-h1fcrux] [--dict ]" }, "hf 14b ndefread": { "command": "hf 14b ndefread", @@ -1323,7 +1323,7 @@ "-v, --verbose verbose", "-d, --data data, bytes to send" ], - "usage": "hf 14b raw [-hkscrv] [--sr] [--cts] [-t ] [-d ]..." + "usage": "hf 14b raw [-hkscrv] [--sr] [--cts] [-t ] [-d ]" }, "hf 14b rdbl": { "command": "hf 14b rdbl", @@ -1363,7 +1363,7 @@ "-h, --help this help", "-u, --uid hex 4byte uid/pupi" ], - "usage": "hf 14b sim [-h] [-u hex]..." + "usage": "hf 14b sim [-h] -u hex" }, "hf 14b sniff": { "command": "hf 14b sniff", @@ -1473,7 +1473,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf 15 list [-h1fcrux] [--dict ]..." + "usage": "hf 15 list [-h1fcrux] [--dict ]" }, "hf 15 info": { "command": "hf 15 info", @@ -1510,7 +1510,7 @@ "-r do not read response", "-d, --data raw bytes to send" ], - "usage": "hf 15 raw [-h2ckr] -d [-d ]..." + "usage": "hf 15 raw [-h2ckr] -d " }, "hf 15 rdbl": { "command": "hf 15 rdbl", @@ -1898,7 +1898,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf emrtd list [-h1fcrux] [--dict ]..." + "usage": "hf emrtd list [-h1fcrux] [--dict ]" }, "hf epa preplay": { "command": "hf epa preplay", @@ -1974,7 +1974,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf felica list [-h1fcrux] [--dict ]..." + "usage": "hf felica list [-h1fcrux] [--dict ]" }, "hf felica info": { "command": "hf felica info", @@ -2031,7 +2031,7 @@ "-s active signal field on with select", " raw bytes to send" ], - "usage": "hf felica raw [-hackrs] [-n ] []..." + "usage": "hf felica raw [-hackrs] [-n ] " }, "hf felica rdbl": { "command": "hf felica rdbl", @@ -2260,7 +2260,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf fido list [-h1fcrux] [--dict ]..." + "usage": "hf fido list [-h1fcrux] [--dict ]" }, "hf fido info": { "command": "hf fido info", @@ -2334,7 +2334,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf list [-h1fcrux] [--dict ]..." + "usage": "hf list [-h1fcrux] [--dict ]" }, "hf iclass calcnewkey": { "command": "hf iclass calcnewkey", @@ -2553,7 +2553,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf iclass list [-h1fcrux] [--dict ]..." + "usage": "hf iclass list [-h1fcrux] [--dict ]" }, "hf iclass loclass": { "command": "hf iclass loclass", @@ -2874,7 +2874,7 @@ "-k, --keep keep field on for next command", "-a, --apdu show apdu reqests and responses" ], - "usage": "hf ksx6924 initialize [-hka] []..." + "usage": "hf ksx6924 initialize [-hka] " }, "hf ksx6924 prec": { "command": "hf ksx6924 prec", @@ -2888,7 +2888,7 @@ "-k, --keep keep field on for next command", "-a, --apdu show apdu reqests and responses" ], - "usage": "hf ksx6924 prec [-hka] []..." + "usage": "hf ksx6924 prec [-hka] " }, "hf ksx6924 select": { "command": "hf ksx6924 select", @@ -2989,7 +2989,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf legic list [-h1fcrux] [--dict ]..." + "usage": "hf legic list [-h1fcrux] [--dict ]" }, "hf legic info": { "command": "hf legic info", @@ -3135,7 +3135,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf lto list [-h1fcrux] [--dict ]..." + "usage": "hf lto list [-h1fcrux] [--dict ]" }, "hf lto rdbl": { "command": "hf lto rdbl", @@ -3746,7 +3746,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf mf list [-h1fcrux] [--dict ]..." + "usage": "hf mf list [-h1fcrux] [--dict ]" }, "hf mf mad": { "command": "hf mf mad", @@ -4087,7 +4087,7 @@ "-i, --step increment step when bruteforcing", "-m, --mad only bruteforce the mad range" ], - "usage": "hf mfdes bruteaid [-hm] [-s ]... [-e ]... [-i ]" + "usage": "hf mfdes bruteaid [-hm] [-s ] [-e ] [-i ]" }, "hf mfdes changekey": { "command": "hf mfdes changekey", @@ -4186,7 +4186,7 @@ "-i, --kdfi kdf input (hex 1-31 bytes)", "-a, --apdu show apdu requests and responses" ], - "usage": "hf mfdes chk [-hva] [--aid ]... [-k ] [-d ] [--pattern1b] [--pattern2b] [--startp2b ] [-j ] [-f ] [-i ]" + "usage": "hf mfdes chk [-hva] [--aid ] [-k ] [-d ] [--pattern1b] [--pattern2b] [--startp2b ] [-j ] [-f ] [-i ]" }, "hf mfdes chkeysettings": { "command": "hf mfdes chkeysettings", @@ -4873,7 +4873,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf mfdes list [-h1fcrux] [--dict ]..." + "usage": "hf mfdes list [-h1fcrux] [--dict ]" }, "hf mfdes lsapp": { "command": "hf mfdes lsapp", @@ -5244,7 +5244,7 @@ "-v, --verbose show internal data.", "-k, --key key, 16 hex bytes" ], - "usage": "hf mfp initp [-hv] [-k ]..." + "usage": "hf mfp initp [-hv] [-k ]" }, "hf mfp mad": { "command": "hf mfp mad", @@ -5354,7 +5354,7 @@ "--ki key number, 2 hex bytes", "--key key, 16 hex bytes" ], - "usage": "hf mfp wrp [-hv] --ki [--key ]..." + "usage": "hf mfp wrp [-hv] --ki [--key ]" }, "hf mfu cauth": { "command": "hf mfu cauth", @@ -5654,7 +5654,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf seos list [-h1fcrux] [--dict ]..." + "usage": "hf seos list [-h1fcrux] [--dict ]" }, "hf sniff": { "command": "hf sniff", @@ -5702,7 +5702,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf st25ta list [-h1fcrux] [--dict ]..." + "usage": "hf st25ta list [-h1fcrux] [--dict ]" }, "hf st25ta ndefread": { "command": "hf st25ta ndefread", @@ -5798,7 +5798,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf thinfilm list [-h1fcrux] [--dict ]..." + "usage": "hf thinfilm list [-h1fcrux] [--dict ]" }, "hf thinfilm sim": { "command": "hf thinfilm sim", @@ -5833,7 +5833,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "hf topaz list [-h1fcrux] [--dict ]..." + "usage": "hf topaz list [-h1fcrux] [--dict ]" }, "hf topaz info": { "command": "hf topaz info", @@ -6356,7 +6356,7 @@ "--q5 optional - specify writing to q5/t5555 tag", "--em optional - specify writing to em4305/4469 tag" ], - "usage": "lf destron clone [-h] -u [-u ]... [--q5] [--em]" + "usage": "lf destron clone [-h] -u [--q5] [--em]" }, "lf destron help": { "command": "lf destron help", @@ -7143,7 +7143,7 @@ "-h, --help this help", "-r, --raw raw bytes" ], - "usage": "lf gproxii demod [-h] [-r ]..." + "usage": "lf gproxii demod [-h] [-r ]" }, "lf gproxii reader": { "command": "lf gproxii reader", @@ -7248,7 +7248,7 @@ "--em optional - specify writing to em4305/4469 tag", "--bin binary string i.e 0001001001" ], - "usage": "lf hid clone [-h] [-w ] [--fc ] [--cn ] [-i ] [-o ] [-r ]... [--q5] [--em] [--bin ]" + "usage": "lf hid clone [-h] [-w ] [--fc ] [--cn ] [-i ] [-o ] [-r ] [--q5] [--em] [--bin ]" }, "lf hid help": { "command": "lf hid help", @@ -7295,7 +7295,7 @@ "-o, --oem oem code", "-r, --raw raw bytes" ], - "usage": "lf hid sim [-h] [-w ] [--fc ] [--cn ] [-i ] [-o ] [-r ]..." + "usage": "lf hid sim [-h] [-w ] [--fc ] [--cn ] [-i ] [-o ] [-r ]" }, "lf hid watch": { "command": "lf hid watch", @@ -7386,7 +7386,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "lf hitag list [-h1fcrux] [--dict ]..." + "usage": "lf hitag list [-h1fcrux] [--dict ]" }, "lf hitag reader": { "command": "lf hitag reader", @@ -7481,7 +7481,7 @@ "--q5 optional - specify writing to q5/t5555 tag", "--em optional - specify writing to em4305/4469 tag" ], - "usage": "lf idteck clone [-h] [-r ]... [--q5] [--em]" + "usage": "lf idteck clone [-h] -r [--q5] [--em]" }, "lf idteck help": { "command": "lf idteck help", @@ -7519,7 +7519,7 @@ "-h, --help this help", "-r, --raw raw bytes" ], - "usage": "lf idteck sim [-h] [-r ]..." + "usage": "lf idteck sim [-h] -r " }, "lf indala altdemod": { "command": "lf indala altdemod", @@ -7556,7 +7556,7 @@ "--em optional - specify writing to em4305/4469 tag", "--4041x optional - specify indala 4041x format, must use with fc and cn" ], - "usage": "lf indala clone [-h] [-r ]... [--heden ] [--fc ] [--cn ] [--q5] [--em] [--4041x]" + "usage": "lf indala clone [-h] [-r ] [--heden ] [--fc ] [--cn ] [--q5] [--em] [--4041x]" }, "lf indala help": { "command": "lf indala help", @@ -7606,7 +7606,7 @@ "-r, --raw raw bytes", "--heden cardnumber for heden 2l format" ], - "usage": "lf indala sim [-h] [-r ]... [--heden ]" + "usage": "lf indala sim [-h] [-r ] [--heden ]" }, "lf io clone": { "command": "lf io clone", @@ -7803,7 +7803,7 @@ "--q5 optional - specify writing to q5/t5555 tag", "--em optional - specify writing to em4305/4469 tag" ], - "usage": "lf motorola clone [-h] -r [-r ]... [--q5] [--em]" + "usage": "lf motorola clone [-h] -r [--q5] [--em]" }, "lf motorola help": { "command": "lf motorola help", @@ -9001,7 +9001,7 @@ "--q5 optional - specify writing to q5/t5555 tag", "--em optional - specify writing to em4305/4469 tag" ], - "usage": "lf viking clone [-h] [--cn ]... [--q5] [--em]" + "usage": "lf viking clone [-h] --cn [--q5] [--em]" }, "lf viking help": { "command": "lf viking help", @@ -9039,7 +9039,7 @@ "-h, --help this help", "--cn 8 digit hex viking card number" ], - "usage": "lf viking sim [-h] [--cn ]..." + "usage": "lf viking sim [-h] --cn " }, "lf visa2000 clone": { "command": "lf visa2000 clone", @@ -9138,7 +9138,7 @@ "-f, --file file name", "-c, --cols column breaks (def 32)" ], - "usage": "mem dump [-hv] [-o ] [-l ] [-f ]... [-c ]" + "usage": "mem dump [-hv] [-o ] [-l ] [-f ] [-c ]" }, "mem help": { "command": "mem help", @@ -9188,7 +9188,7 @@ "-t, --t55xx upload 4 bytes keys (password dictionary)", "-f, --file file name" ], - "usage": "mem load [-hmit] [-o ] [-f ]..." + "usage": "mem load [-hmit] [-o ] -f " }, "mem spiffs check": { "command": "mem spiffs check", @@ -9404,7 +9404,7 @@ "or to import into wireshark using encapsulation type \"iso 14443\"", "--dict use dictionary keys file" ], - "usage": "smart list [-h1fcrux] [--dict ]..." + "usage": "smart list [-h1fcrux] [--dict ]" }, "nfc barcode sim": { "command": "nfc barcode sim", @@ -9435,7 +9435,7 @@ "-f, --file file to load", "-v, --verbose verbose mode" ], - "usage": "nfc decode [-hv] [-d ]... [-f ]" + "usage": "nfc decode [-hv] [-d ] [-f ]" }, "nfc mf help": { "command": "nfc mf help", @@ -9968,7 +9968,7 @@ "-t, --type protocol to annotate the trace", "--dict use dictionary keys file" ], - "usage": "trace list [-h1fcrux] [-t ]... [--dict ]..." + "usage": "trace list [-h1fcrux] [-t ] [--dict ]" }, "trace load": { "command": "trace load", @@ -9981,7 +9981,7 @@ "-h, --help this help", "-f, --file trace file to load" ], - "usage": "trace load [-h] [-f ]..." + "usage": "trace load [-h] -f " }, "trace save": { "command": "trace save", @@ -9994,7 +9994,7 @@ "-h, --help this help", "-f, --file trace file to save" ], - "usage": "trace save [-h] [-f ]..." + "usage": "trace save [-h] -f " }, "usart btfactory": { "command": "usart btfactory", @@ -10119,7 +10119,7 @@ "-r, --raw raw hex to be decoded", "-b, --bin binary string to be decoded" ], - "usage": "wiegand decode [-h] [-r ]... [-b ]" + "usage": "wiegand decode [-h] [-r ] [-b ]" }, "wiegand encode": { "command": "wiegand encode", @@ -10156,6 +10156,6 @@ "metadata": { "commands_extracted": 597, "extracted_by": "PM3Help2JSON v1.00", - "extracted_on": "2021-12-31T11:53:15" + "extracted_on": "2022-01-01T01:38:04" } } \ No newline at end of file