From cb4ba660abb6333ac202271a11410eb9faf5a1a4 Mon Sep 17 00:00:00 2001 From: Henry Gabryjelski <740168+henrygab@users.noreply.github.com> Date: Fri, 14 Nov 2025 18:32:48 -0800 Subject: [PATCH] framework for saflok selftest --- client/src/cmdhfsaflok.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/client/src/cmdhfsaflok.c b/client/src/cmdhfsaflok.c index 2ac26b445..4f242ae19 100644 --- a/client/src/cmdhfsaflok.c +++ b/client/src/cmdhfsaflok.c @@ -1333,6 +1333,29 @@ static int CmdHFSaflokDecrypt(const char *Cmd) { return PM3_SUCCESS; } +static int CmdHFSaflokSelfTest(const char *Cmd) { + CLIParserContext *ctx; + CLIParserInit(&ctx, "hf saflok selftest", + "Validate internal functionality of Saflok routines", + "hf saflok selftest"); + + void *argtable[] = { + arg_param_begin, + arg_param_end + }; + CLIExecWithReturn(ctx, Cmd, argtable, true); + CLIParserFree(ctx); + + int result = PM3_SUCCESS; + + PrintAndLogEx(WARNING, "NYI: Saflok self-test not yet implemented."); + + + + return result; +} + + static int CmdHFSaflokChecksum(const char *Cmd) { CLIParserContext *ctx; CLIParserInit(&ctx, "hf saflok cksum", @@ -1569,6 +1592,7 @@ static command_t CommandTable[] = { {"decrypt", CmdHFSaflokDecrypt, AlwaysAvailable, "Decrypt 17-byte encrypted block"}, {"interrogate", CmdHFSaflokInterrogate, IfPm3NfcBarcode, "Interrogate saflok card"}, {"cksum", CmdHFSaflokChecksum, IfPm3NfcBarcode, "Generate checksum for data block"}, + {"selftest", CmdHFSaflokSelfTest, AlwaysAvailable, "Run self-test"}, {NULL, NULL, NULL, NULL} };