From 667e2bb9f817a6b16ebb43cffddcba32156905ed Mon Sep 17 00:00:00 2001 From: iceman1001 Date: Fri, 12 Feb 2021 11:10:58 +0100 Subject: [PATCH] fix pm3test for mfu keygen. UID array was not zero:d --- client/src/cmdhfmfu.c | 7 ++++++- tools/pm3_tests.sh | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/client/src/cmdhfmfu.c b/client/src/cmdhfmfu.c index bdd74aa92..94fff01ea 100644 --- a/client/src/cmdhfmfu.c +++ b/client/src/cmdhfmfu.c @@ -2629,7 +2629,7 @@ static int CmdHF14AMfUGenDiverseKeys(const char *Cmd) { void *argtable[] = { arg_param_begin, - arg_str0("u", "uid", "", "4|7 hex byte UID"), + arg_str0("u", "uid", "", "<4|7> hex byte UID"), arg_lit0("r", NULL, "read UID from tag"), arg_param_end }; @@ -2667,6 +2667,11 @@ static int CmdHF14AMfUGenDiverseKeys(const char *Cmd) { } ulen = card.uidlen; memcpy(uid, card.uid, card.uidlen); + } else { + if (ulen != 4 && ulen != 7) { + PrintAndLogEx(ERR, "Must supply 4 or 7 hex byte uid"); + return PM3_EINVARG; + } } uint8_t iv[8] = { 0x00 }; diff --git a/tools/pm3_tests.sh b/tools/pm3_tests.sh index 1dd575298..da5ea56a5 100755 --- a/tools/pm3_tests.sh +++ b/tools/pm3_tests.sh @@ -343,7 +343,7 @@ while true; do if ! CheckExecute "reveng -g test" "$CLIENTBIN -c 'reveng -g abda202c'" "CRC-16/ISO-IEC-14443-3-A"; then break; fi if ! CheckExecute "reveng -w test" "$CLIENTBIN -c 'reveng -w 8 -s 01020304e3 010204039d'" "CRC-8/SMBUS"; then break; fi if ! CheckExecute "mfu pwdgen test" "$CLIENTBIN -c 'hf mfu pwdgen -t'" "Selftest OK"; then break; fi - if ! CheckExecute "mfu keygen test" "$CLIENTBIN -c 'hf mfu keygen'" "A7 D8 7A 4B 1A 29"; then break; fi + if ! CheckExecute "mfu keygen test" "$CLIENTBIN -c 'hf mfu keygen --uid 11223344556677'" "80 B1 C2 71 D8 A0"; then break; fi if ! CheckExecute "jooki encode test" "$CLIENTBIN -c 'hf jooki encode -t'" "04 28 F4 DA F0 4A 81 ( ok )"; then break; fi if ! CheckExecute "trace load/list 14a" "$CLIENTBIN -c 'trace load -f traces/hf_14a_mfu.trace; trace list -1 -t 14a;'" "READBLOCK(8)"; then break; fi if ! CheckExecute "trace load/list x" "$CLIENTBIN -c 'trace load -f traces/hf_14a_mfu.trace; trace list -x1 -t 14a;'" "0.0101840425"; then break; fi