mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2026-05-12 11:18:11 -07:00
style
This commit is contained in:
+2
-2
@@ -129,10 +129,10 @@ void print_result(const char *name, const uint8_t *d, size_t n) {
|
||||
}
|
||||
|
||||
// Prints message and hexdump
|
||||
void print_dbg(char *msg, uint8_t *d, uint16_t n) {
|
||||
void print_dbg(char *msg, uint8_t *d, uint16_t n) {
|
||||
if (g_dbglevel == DBG_DEBUG) {
|
||||
print_result(msg, d, n);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* useful when debugging new protocol implementations like FeliCa
|
||||
|
||||
+5
-5
@@ -240,7 +240,7 @@ static bool I2C_WaitForSim(uint32_t wait) {
|
||||
// 1000*110*3.07 = 337.7ms (337700)
|
||||
// 4 560 000 * 3.07 = 13999,2ms (13999200)
|
||||
// 1byte transfer == 1ms with max frame being 256bytes
|
||||
|
||||
|
||||
// fct WaitSCL_H_delay uses a I2C_DELAY_1CLK in the loop with "wait" as number of iterations.
|
||||
// I2C_DELAY_1CLK == I2CSpinDelayClk(1) = 3.07us
|
||||
return WaitSCL_H_delay(wait);
|
||||
@@ -474,7 +474,7 @@ bool I2C_BufferWrite(const uint8_t *data, uint16_t len, uint8_t device_cmd, uint
|
||||
if (len == 0) {
|
||||
_break = false;
|
||||
}
|
||||
|
||||
|
||||
} while (false);
|
||||
|
||||
I2C_Stop();
|
||||
@@ -586,7 +586,7 @@ int16_t I2C_BufferRead(uint8_t *data, uint16_t len, uint8_t device_cmd, uint8_t
|
||||
// Dbprintf("rec len... %u readcount... %u", recv_len, readcount);
|
||||
// Dbhexdump(readcount, pd, false);
|
||||
|
||||
if (readcount < 2 ) {
|
||||
if (readcount < 2) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -771,7 +771,7 @@ bool GetATR(smart_card_atr_t *card_ptr, bool verbose) {
|
||||
if (card_ptr == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
card_ptr->atr_len = 0;
|
||||
memset(card_ptr->atr, 0, sizeof(card_ptr->atr));
|
||||
@@ -781,7 +781,7 @@ bool GetATR(smart_card_atr_t *card_ptr, bool verbose) {
|
||||
I2C_WriteCmd(I2C_DEVICE_CMD_GENERATE_ATR, I2C_DEVICE_ADDRESS_MAIN);
|
||||
|
||||
// wait for sim card to answer.
|
||||
// 1byte = 1ms , max frame 256bytes. Should wait 256ms atleast just in case.
|
||||
// 1byte = 1ms , max frame 256bytes. Should wait 256ms atleast just in case.
|
||||
if (I2C_WaitForSim(SIM_WAIT_DELAY) == false) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -2939,7 +2939,7 @@ int CmdHF14ANdefRead(const char *Cmd) {
|
||||
PrintAndLogEx(NORMAL, "");
|
||||
PrintAndLogEx(INFO, "--- " _CYAN_("NDEF raw") " ----------------");
|
||||
print_buffer(ndef_file, ndef_size, 1);
|
||||
}
|
||||
}
|
||||
|
||||
NDEFRecordsDecodeAndPrint(ndef_file, ndef_size, verbose);
|
||||
|
||||
|
||||
@@ -2184,9 +2184,9 @@ static int CmdHF15Restore(const char *Cmd) {
|
||||
void *argtable[6 + 5] = {};
|
||||
uint8_t arglen = arg_add_default(argtable);
|
||||
argtable[arglen++] = arg_str0("f", "file", "<fn>", "Specify a filename for dump file"),
|
||||
argtable[arglen++] = arg_int0("r", "retry", "<dec>", "number of retries (def 3)"),
|
||||
argtable[arglen++] = arg_int0(NULL, "bs", "<dec>", "block size (def 4)"),
|
||||
argtable[arglen++] = arg_lit0("v", "verbose", "verbose output");
|
||||
argtable[arglen++] = arg_int0("r", "retry", "<dec>", "number of retries (def 3)"),
|
||||
argtable[arglen++] = arg_int0(NULL, "bs", "<dec>", "block size (def 4)"),
|
||||
argtable[arglen++] = arg_lit0("v", "verbose", "verbose output");
|
||||
argtable[arglen++] = arg_param_end;
|
||||
CLIExecWithReturn(ctx, Cmd, argtable, true);
|
||||
|
||||
|
||||
@@ -412,7 +412,7 @@ int CmdHFST25TANdefRead(const char *Cmd) {
|
||||
n = resplen;
|
||||
|
||||
pm3_save_dump(filename, response + 2, n, jsfNDEF);
|
||||
|
||||
|
||||
return PM3_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
+35
-35
@@ -2321,7 +2321,7 @@ static int CmdT55xxDump(const char *Cmd) {
|
||||
data[i] = BSWAP_32(cardmem[i].blockdata);
|
||||
}
|
||||
|
||||
pm3_save_dump(filename, (uint8_t*)data, (T55x7_BLOCK_COUNT * sizeof(uint32_t)), jsfT55x7);
|
||||
pm3_save_dump(filename, (uint8_t *)data, (T55x7_BLOCK_COUNT * sizeof(uint32_t)), jsfT55x7);
|
||||
}
|
||||
|
||||
return PM3_SUCCESS;
|
||||
@@ -3512,24 +3512,24 @@ bool tryDetectP1(bool getData) {
|
||||
|
||||
if (FSKrawDemod(0, 0, 0, 0, false) == PM3_SUCCESS) {
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if (FSKrawDemod(0, 1, 0, 0, false) == PM3_SUCCESS) {
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -3541,13 +3541,13 @@ bool tryDetectP1(bool getData) {
|
||||
if (clk > 0) {
|
||||
if (ASKDemod_ext(0, 0, 1, 0, false, false, false, 1, &st) == PM3_SUCCESS) {
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -3555,36 +3555,36 @@ bool tryDetectP1(bool getData) {
|
||||
st = true;
|
||||
if (ASKDemod_ext(0, 1, 1, 0, false, false, false, 1, &st) == PM3_SUCCESS) {
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if (ASKbiphaseDemod(0, 0, 0, 2, false) == PM3_SUCCESS) {
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if (ASKbiphaseDemod(0, 0, 1, 2, false) == PM3_SUCCESS) {
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -3595,24 +3595,24 @@ bool tryDetectP1(bool getData) {
|
||||
if (clk > 0) {
|
||||
if (NRZrawDemod(0, 0, 1, false) == PM3_SUCCESS) {
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if (NRZrawDemod(0, 1, 1, false) == PM3_SUCCESS) {
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -3629,12 +3629,12 @@ bool tryDetectP1(bool getData) {
|
||||
if (PSKDemod(0, 0, 6, false) == PM3_SUCCESS) {
|
||||
//save_restoreGB(GRAPH_RESTORE);
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -3642,12 +3642,12 @@ bool tryDetectP1(bool getData) {
|
||||
if (PSKDemod(0, 1, 6, false) == PM3_SUCCESS) {
|
||||
//save_restoreGB(GRAPH_RESTORE);
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -3658,12 +3658,12 @@ bool tryDetectP1(bool getData) {
|
||||
|
||||
//save_restoreGB(GRAPH_RESTORE);
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_atmel, sizeof(preamble_atmel), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
if (preambleSearchEx(g_DemodBuffer, preamble_silicon, sizeof(preamble_silicon), &g_DemodBufferLen, &startIdx, false) &&
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
(g_DemodBufferLen == 32 || g_DemodBufferLen == 64)) {
|
||||
return true;
|
||||
}
|
||||
} // inverse waves does not affect PSK2 demod
|
||||
|
||||
@@ -455,7 +455,7 @@ static int CmdSmartRaw(const char *Cmd) {
|
||||
if (active_select)
|
||||
payload->flags |= SC_SELECT;
|
||||
}
|
||||
|
||||
|
||||
payload->wait_delay = 0;
|
||||
if (timeout > -1) {
|
||||
payload->flags |= SC_WAIT;
|
||||
|
||||
+38
-38
@@ -361,7 +361,7 @@ int saveFileJSONex(const char *preferredName, JSONFileType ftype, uint8_t *data,
|
||||
}
|
||||
|
||||
// size of header 56b
|
||||
|
||||
|
||||
size_t len = (datalen - MFU_DUMP_PREFIX_LENGTH) / MFU_BLOCK_SIZE;
|
||||
|
||||
for (size_t i = 0; i < len; i++) {
|
||||
@@ -426,7 +426,7 @@ int saveFileJSONex(const char *preferredName, JSONFileType ftype, uint8_t *data,
|
||||
for (size_t i = 0; i < datalen / 4; i++) {
|
||||
snprintf(path, sizeof(path), "$.blocks.%zu", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &data[i * 4], 4);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
// handles ISO15693 w blocksize of 4 bytes
|
||||
@@ -438,7 +438,7 @@ int saveFileJSONex(const char *preferredName, JSONFileType ftype, uint8_t *data,
|
||||
}
|
||||
break;
|
||||
}
|
||||
// handles ISO15693 w blocksize of 8 bytes
|
||||
// handles ISO15693 w blocksize of 8 bytes
|
||||
case jsf15_v3: {
|
||||
JsonSaveStr(root, "FileType", "15693 v3");
|
||||
for (size_t i = 0; i < datalen / 8; i++) {
|
||||
@@ -457,8 +457,8 @@ int saveFileJSONex(const char *preferredName, JSONFileType ftype, uint8_t *data,
|
||||
}
|
||||
if (datalen % 16) {
|
||||
snprintf(path, sizeof(path), "$.blocks.%zu", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &data[i * 16], (datalen % 16));
|
||||
}
|
||||
JsonSaveBufAsHexCompact(root, path, &data[i * 16], (datalen % 16));
|
||||
}
|
||||
break;
|
||||
}
|
||||
case jsfT5555: {
|
||||
@@ -610,7 +610,7 @@ int saveFileJSONex(const char *preferredName, JSONFileType ftype, uint8_t *data,
|
||||
break;
|
||||
}
|
||||
case jsfNDEF: {
|
||||
JsonSaveStr(root, "FileType", "ndef");
|
||||
JsonSaveStr(root, "FileType", "ndef");
|
||||
JsonSaveInt(root, "Ndef.Size", datalen);
|
||||
size_t i = 0;
|
||||
for (; i < datalen / 16; i++) {
|
||||
@@ -619,17 +619,17 @@ int saveFileJSONex(const char *preferredName, JSONFileType ftype, uint8_t *data,
|
||||
}
|
||||
if (datalen % 16) {
|
||||
snprintf(path, sizeof(path), "$.blocks.%zu", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &data[i * 16], (datalen % 16));
|
||||
}
|
||||
JsonSaveBufAsHexCompact(root, path, &data[i * 16], (datalen % 16));
|
||||
}
|
||||
break;
|
||||
}
|
||||
// no action
|
||||
case jsfFido:
|
||||
case jsfFido:
|
||||
break;
|
||||
// depricated
|
||||
case jsfCardMemory:
|
||||
case jsfCardMemory:
|
||||
case jsf14b:
|
||||
case jsf15:
|
||||
case jsf15:
|
||||
case jsfLegic:
|
||||
default:
|
||||
break;
|
||||
@@ -1264,7 +1264,7 @@ int loadFileJSONex(const char *preferredName, void *data, size_t maxdatalen, siz
|
||||
|
||||
// handles ISO15693 w blocksize of 4 bytes.
|
||||
if (!strcmp(ctype, "15693 v2")) {
|
||||
size_t sptr = 0;
|
||||
size_t sptr = 0;
|
||||
for (int i = 0; i < (maxdatalen / 4); i++) {
|
||||
if (sptr + 4 > maxdatalen) {
|
||||
retval = PM3_EMALLOC;
|
||||
@@ -1284,7 +1284,7 @@ int loadFileJSONex(const char *preferredName, void *data, size_t maxdatalen, siz
|
||||
}
|
||||
// handles ISO15693 w blocksize of 8 bytes.
|
||||
if (!strcmp(ctype, "15693 v3")) {
|
||||
size_t sptr = 0;
|
||||
size_t sptr = 0;
|
||||
for (int i = 0; i < (maxdatalen / 8); i++) {
|
||||
if (sptr + 8 > maxdatalen) {
|
||||
retval = PM3_EMALLOC;
|
||||
@@ -1403,36 +1403,36 @@ int loadFileJSONex(const char *preferredName, void *data, size_t maxdatalen, siz
|
||||
// size_t sptr = (14 + atslen);
|
||||
// uint8_t dvdata[4][0xE][24 + 1] = {{{0}}};
|
||||
|
||||
/*
|
||||
for (int i = 0; i < (int)datalen; i++) {
|
||||
char path[PATH_MAX_LENGTH] = {0};
|
||||
/*
|
||||
for (int i = 0; i < (int)datalen; i++) {
|
||||
char path[PATH_MAX_LENGTH] = {0};
|
||||
|
||||
if (dvdata[0][i][0]) {
|
||||
snprintf(path, sizeof(path), "$.DES.%d.Key", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &dvdata[0][i][1], DES_KEY_LEN);
|
||||
}
|
||||
|
||||
if (dvdata[1][i][0]) {
|
||||
snprintf(path, sizeof(path), "$.3DES.%d.Key", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &dvdata[1][i][1], T2DES_KEY_LEN);
|
||||
}
|
||||
if (dvdata[2][i][0]) {
|
||||
snprintf(path, sizeof(path), "$.AES.%d.Key", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &dvdata[2][i][1], AES_KEY_LEN);
|
||||
}
|
||||
if (dvdata[3][i][0]) {
|
||||
snprintf(path, sizeof(path), "$.K3KDES.%d.Key", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &dvdata[3][i][1], T3DES_KEY_LEN);
|
||||
}
|
||||
if (dvdata[0][i][0]) {
|
||||
snprintf(path, sizeof(path), "$.DES.%d.Key", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &dvdata[0][i][1], DES_KEY_LEN);
|
||||
}
|
||||
*/
|
||||
|
||||
if (dvdata[1][i][0]) {
|
||||
snprintf(path, sizeof(path), "$.3DES.%d.Key", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &dvdata[1][i][1], T2DES_KEY_LEN);
|
||||
}
|
||||
if (dvdata[2][i][0]) {
|
||||
snprintf(path, sizeof(path), "$.AES.%d.Key", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &dvdata[2][i][1], AES_KEY_LEN);
|
||||
}
|
||||
if (dvdata[3][i][0]) {
|
||||
snprintf(path, sizeof(path), "$.K3KDES.%d.Key", i);
|
||||
JsonSaveBufAsHexCompact(root, path, &dvdata[3][i][1], T3DES_KEY_LEN);
|
||||
}
|
||||
}
|
||||
*/
|
||||
// memcpy(&data[14 + atslen], dvdata, 4 * 0xE * (24 + 1));
|
||||
|
||||
goto out;
|
||||
}
|
||||
|
||||
if (!strcmp(ctype, "14b v2")) {
|
||||
size_t sptr = 0;
|
||||
size_t sptr = 0;
|
||||
for (int i = 0; i < (maxdatalen / 4); i++) {
|
||||
if (sptr + 4 > maxdatalen) {
|
||||
retval = PM3_EMALLOC;
|
||||
@@ -1452,7 +1452,7 @@ int loadFileJSONex(const char *preferredName, void *data, size_t maxdatalen, siz
|
||||
}
|
||||
|
||||
if (!strcmp(ctype, "lto")) {
|
||||
size_t sptr = 0;
|
||||
size_t sptr = 0;
|
||||
for (int i = 0; i < (maxdatalen / 32); i++) {
|
||||
if (sptr + 32 > maxdatalen) {
|
||||
retval = PM3_EMALLOC;
|
||||
@@ -1472,7 +1472,7 @@ int loadFileJSONex(const char *preferredName, void *data, size_t maxdatalen, siz
|
||||
}
|
||||
|
||||
if (!strcmp(ctype, "cryptorf")) {
|
||||
size_t sptr = 0;
|
||||
size_t sptr = 0;
|
||||
for (int i = 0; i < (maxdatalen / 8); i++) {
|
||||
if (sptr + 8 > maxdatalen) {
|
||||
retval = PM3_EMALLOC;
|
||||
@@ -2318,7 +2318,7 @@ int pm3_load_dump(const char *fn, void **pdump, size_t *dumplen, size_t maxdumpl
|
||||
|
||||
int pm3_save_dump(const char *fn, uint8_t *d, size_t n, JSONFileType jsft) {
|
||||
if (fn == NULL || strlen(fn) == 0) {
|
||||
return PM3_EINVARG;
|
||||
return PM3_EINVARG;
|
||||
}
|
||||
if (d == NULL || n == 0) {
|
||||
PrintAndLogEx(INFO, "No data to save, skipping...");
|
||||
|
||||
@@ -301,10 +301,10 @@ int pm3_save_dump(const char *fn, uint8_t *d, size_t n, JSONFileType jsft);
|
||||
* It also tries to save according to user preferences set dump folder paths.
|
||||
* E.g. dumpdata.bin
|
||||
* E.g. dumpdata.json
|
||||
*
|
||||
*
|
||||
* This function is dedicated for MIFARE CLASSIC dumps. Checking for 4 or 7 byte UID in indata.
|
||||
* Saves the corrected data in the json file
|
||||
*
|
||||
*
|
||||
* @param fn
|
||||
* @param d The binary data to write to the file
|
||||
* @param n the length of the data
|
||||
|
||||
@@ -1285,26 +1285,26 @@ int NDEFGetTotalLength(uint8_t *ndef, size_t ndeflen, size_t *outlen) {
|
||||
size_t idx = 0;
|
||||
while (idx < ndeflen) {
|
||||
|
||||
if (ndef[idx] == 0x00 ||
|
||||
ndef[idx] == 0x01 ||
|
||||
ndef[idx] == 0x02 ||
|
||||
ndef[idx] == 0x03 ||
|
||||
ndef[idx] == 0xFD) {
|
||||
if (ndef[idx] == 0x00 ||
|
||||
ndef[idx] == 0x01 ||
|
||||
ndef[idx] == 0x02 ||
|
||||
ndef[idx] == 0x03 ||
|
||||
ndef[idx] == 0xFD) {
|
||||
idx++;
|
||||
idx += ndefTLVGetLength(&ndef[idx], &idx);
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
if (ndef[idx] == 0xFE) {
|
||||
idx++;
|
||||
break;
|
||||
}
|
||||
|
||||
// invalid NDEF
|
||||
// invalid NDEF
|
||||
*outlen = 0;
|
||||
return PM3_ESOFT;
|
||||
}
|
||||
|
||||
*outlen = idx;
|
||||
return PM3_SUCCESS;
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -966,11 +966,11 @@ void byte_2_binstr(char *target, const uint8_t *source, size_t sourcelen) {
|
||||
*(target++) = ((b >> 7) & 0x1) + '0';
|
||||
*(target++) = ((b >> 6) & 0x1) + '0';
|
||||
*(target++) = ((b >> 5) & 0x1) + '0';
|
||||
*(target++) = ((b >> 4) & 0x1) + '0';
|
||||
*(target++) = ((b >> 4) & 0x1) + '0';
|
||||
*(target++) = ((b >> 3) & 0x1) + '0';
|
||||
*(target++) = ((b >> 2) & 0x1) + '0';
|
||||
*(target++) = ((b >> 1) & 0x1) + '0';
|
||||
*(target++) = (b & 0x1) + '0';
|
||||
*(target++) = (b & 0x1) + '0';
|
||||
}
|
||||
*target = '\0';
|
||||
}
|
||||
|
||||
+73
-73
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -700,7 +700,7 @@ typedef struct {
|
||||
#define CMD_HF_MIFARE_G4_GDM_CONFIG 0x0872
|
||||
#define CMD_HF_MIFARE_G4_GDM_WRCFG 0x0873
|
||||
|
||||
// HID SAM
|
||||
// HID SAM
|
||||
#define CMD_HF_SAM_PICOPASS 0x0900
|
||||
#define CMD_HF_SAM_SEOS 0x0901
|
||||
#define CMD_HF_SAM_MFC 0x0902
|
||||
|
||||
Reference in New Issue
Block a user