Reduce scope of a number of globals:

APDUInFramingEnable atsFSC uid_label_map apdu_in_framing_enable uidmapping KENC_type KMAC_type jpeg_header jpeg2k_header *card_types card_app2_limit iclass_config_types jooks jooks_figures nfc_secret desdefaultkeys aesdefaultkeys k3kdefaultkeys CardAddresses default_3des_keys default_pwd_pack UL_TYPES_ARRAY UL_MEMORY_ARRAY fdxbCountryMapping translateTable invTranslateTable preamble paradox_lut pcf7931_config config DiArray FiArray FArray crc64_table signalprop
This commit is contained in:
Philippe Teuwen 2021-08-21 19:54:52 +02:00
parent b209b63a73
commit d88c98a786
17 changed files with 43 additions and 43 deletions

View file

@ -33,7 +33,7 @@
#include "nfc/ndef.h" // NDEFRecordsDecodeAndPrint #include "nfc/ndef.h" // NDEFRecordsDecodeAndPrint
#include "cmdnfc.h" // print_type4_cc_info #include "cmdnfc.h" // print_type4_cc_info
bool APDUInFramingEnable = true; static bool APDUInFramingEnable = true;
static int CmdHelp(const char *Cmd); static int CmdHelp(const char *Cmd);
static int waitCmd(bool i_select, uint32_t timeout, bool verbose); static int waitCmd(bool i_select, uint32_t timeout, bool verbose);
@ -182,7 +182,7 @@ static const hintAIDListT hintAIDList[] = {
// iso14a apdu input frame length // iso14a apdu input frame length
static uint16_t g_frame_len = 0; static uint16_t g_frame_len = 0;
uint16_t atsFSC[] = {16, 24, 32, 40, 48, 64, 96, 128, 256}; static uint16_t atsFSC[] = {16, 24, 32, 40, 48, 64, 96, 128, 256};
static int CmdHF14AList(const char *Cmd) { static int CmdHF14AList(const char *Cmd) {
return CmdTraceListAlias(Cmd, "hf 14a", "14a"); return CmdTraceListAlias(Cmd, "hf 14a", "14a");
@ -1573,7 +1573,7 @@ typedef struct {
const char *desc; const char *desc;
} uid_label_name; } uid_label_name;
const uid_label_name uid_label_map[] = { static const uid_label_name uid_label_map[] = {
// UID0, UID1, TEXT // UID0, UID1, TEXT
{0x02, 0x84, "M24SR64-Y"}, {0x02, 0x84, "M24SR64-Y"},
{0x02, 0xA3, "25TA02KB-P"}, {0x02, 0xA3, "25TA02KB-P"},

View file

@ -36,8 +36,8 @@
// iso14b apdu input frame length // iso14b apdu input frame length
static uint16_t apdu_frame_length = 0; static uint16_t apdu_frame_length = 0;
uint16_t ats_fsc[] = {16, 24, 32, 40, 48, 64, 96, 128, 256}; //static uint16_t ats_fsc[] = {16, 24, 32, 40, 48, 64, 96, 128, 256};
bool apdu_in_framing_enable = true; static bool apdu_in_framing_enable = true;
static int CmdHelp(const char *Cmd); static int CmdHelp(const char *Cmd);

View file

@ -65,7 +65,7 @@ typedef struct {
const char *desc; const char *desc;
} productName_t; } productName_t;
const productName_t uidmapping[] = { static const productName_t uidmapping[] = {
// UID, #significant Bits, "Vendor(+Product)" // UID, #significant Bits, "Vendor(+Product)"
{ 0xE001000000000000LL, 16, "Motorola UK" }, { 0xE001000000000000LL, 16, "Motorola UK" },

View file

@ -46,8 +46,8 @@
#define EMRTD_AID_MRTD {0xA0, 0x00, 0x00, 0x02, 0x47, 0x10, 0x01} #define EMRTD_AID_MRTD {0xA0, 0x00, 0x00, 0x02, 0x47, 0x10, 0x01}
// DESKey Types // DESKey Types
const uint8_t KENC_type[4] = {0x00, 0x00, 0x00, 0x01}; static const uint8_t KENC_type[4] = {0x00, 0x00, 0x00, 0x01};
const uint8_t KMAC_type[4] = {0x00, 0x00, 0x00, 0x02}; static const uint8_t KMAC_type[4] = {0x00, 0x00, 0x00, 0x02};
static int emrtd_dump_ef_dg2(uint8_t *file_contents, size_t file_length, const char *path); static int emrtd_dump_ef_dg2(uint8_t *file_contents, size_t file_length, const char *path);
static int emrtd_dump_ef_dg5(uint8_t *file_contents, size_t file_length, const char *path); static int emrtd_dump_ef_dg5(uint8_t *file_contents, size_t file_length, const char *path);
@ -704,8 +704,8 @@ static bool emrtd_select_and_read(uint8_t *dataout, size_t *dataoutlen, uint16_t
return true; return true;
} }
const uint8_t jpeg_header[4] = { 0xFF, 0xD8, 0xFF, 0xE0 }; static const uint8_t jpeg_header[4] = { 0xFF, 0xD8, 0xFF, 0xE0 };
const uint8_t jpeg2k_header[6] = { 0x00, 0x00, 0x00, 0x0C, 0x6A, 0x50 }; static const uint8_t jpeg2k_header[6] = { 0x00, 0x00, 0x00, 0x0C, 0x6A, 0x50 };
static int emrtd_dump_ef_dg2(uint8_t *file_contents, size_t file_length, const char *path) { static int emrtd_dump_ef_dg2(uint8_t *file_contents, size_t file_length, const char *path) {
int offset, datalen = 0; int offset, datalen = 0;

View file

@ -153,7 +153,7 @@ static void iclass_upload_emul(uint8_t *d, uint16_t n, uint16_t *bytes_sent) {
} }
} }
const char *card_types[] = { static const char *card_types[] = {
"PicoPass 16K / 16", // 000 "PicoPass 16K / 16", // 000
"PicoPass 32K with current book 16K / 16", // 001 "PicoPass 32K with current book 16K / 16", // 001
"Unknown Card Type!", // 010 "Unknown Card Type!", // 010
@ -164,7 +164,7 @@ const char *card_types[] = {
"PicoPass 32K with current book 16K / 2", // 111 "PicoPass 32K with current book 16K / 2", // 111
}; };
uint8_t card_app2_limit[] = { static uint8_t card_app2_limit[] = {
0xff, 0xff,
0xff, 0xff,
0xff, 0xff,
@ -175,7 +175,7 @@ uint8_t card_app2_limit[] = {
0xff, 0xff,
}; };
iclass_config_card_item_t iclass_config_types[14] = { static iclass_config_card_item_t iclass_config_types[14] = {
{"", ""}, {"", ""},
{"", ""}, {"", ""},
{"", ""}, {"", ""},

View file

@ -38,7 +38,7 @@ typedef struct {
} PACKED jooki_test_t; } PACKED jooki_test_t;
// sample set for selftest. // sample set for selftest.
jooki_test_t jooks[] = { static jooki_test_t jooks[] = {
{ {0x04, 0xDA, 0xB7, 0x6A, 0xE7, 0x4C, 0x80}, "ruxow8lnn88uyeX+", 0x01, 0x00}, { {0x04, 0xDA, 0xB7, 0x6A, 0xE7, 0x4C, 0x80}, "ruxow8lnn88uyeX+", 0x01, 0x00},
{ {0x04, 0xf0, 0x22, 0xc2, 0x33, 0x5e, 0x80}, "\0", 0x01, 0x00}, { {0x04, 0xf0, 0x22, 0xc2, 0x33, 0x5e, 0x80}, "\0", 0x01, 0x00},
{ {0x04, 0x8C, 0xEC, 0xDA, 0xF0, 0x4A, 0x80}, "ONrsVf7jX6IaSNV6", 0x01, 0x01}, { {0x04, 0x8C, 0xEC, 0xDA, 0xF0, 0x4A, 0x80}, "ONrsVf7jX6IaSNV6", 0x01, 0x01},
@ -51,7 +51,7 @@ jooki_test_t jooks[] = {
{ {0x04, 0x28, 0xF4, 0xDA, 0xF0, 0x4A, 0x81}, "7WzlgEzqLgwTnWNy", 0x01, 0x05}, { {0x04, 0x28, 0xF4, 0xDA, 0xF0, 0x4A, 0x81}, "7WzlgEzqLgwTnWNy", 0x01, 0x05},
}; };
jooki_figure_t jooks_figures[] = { static jooki_figure_t jooks_figures[] = {
{0x01, 0x00, "Dragon", "Figurine"}, {0x01, 0x00, "Dragon", "Figurine"},
{0x01, 0x01, "Fox", "Figurine"}, {0x01, 0x01, "Fox", "Figurine"},
{0x01, 0x02, "Ghost", "Figurine"}, {0x01, 0x02, "Ghost", "Figurine"},
@ -115,8 +115,8 @@ static int jooki_lookup(uint8_t tid, uint8_t fid) {
return -1; return -1;
} }
const uint8_t jooki_secret[] = {0x20, 0x20, 0x20, 0x6D, 0x24, 0x0B, 0xEB, 0x94, 0x2C, 0x80, 0x45, 0x16}; //static const uint8_t jooki_secret[] = {0x20, 0x20, 0x20, 0x6D, 0x24, 0x0B, 0xEB, 0x94, 0x2C, 0x80, 0x45, 0x16};
const uint8_t NFC_SECRET[] = { 0x03, 0x9c, 0x25, 0x6f, 0xb9, 0x2e, 0xe8, 0x08, 0x09, 0x83, 0xd9, 0x33, 0x56}; static const uint8_t nfc_secret[] = { 0x03, 0x9c, 0x25, 0x6f, 0xb9, 0x2e, 0xe8, 0x08, 0x09, 0x83, 0xd9, 0x33, 0x56};
#define JOOKI_UID_LEN 7 #define JOOKI_UID_LEN 7
#define JOOKI_IV_LEN 3 #define JOOKI_IV_LEN 3
@ -140,9 +140,9 @@ static int jooki_encode(uint8_t *iv, uint8_t tid, uint8_t fid, uint8_t *uid, uin
for (uint8_t i = 0; i < JOOKI_PLAIN_LEN; i++) { for (uint8_t i = 0; i < JOOKI_PLAIN_LEN; i++) {
if (i < 3) if (i < 3)
enc[i] = d[i] ^ NFC_SECRET[i]; enc[i] = d[i] ^ nfc_secret[i];
else else
enc[i] = d[i] ^ NFC_SECRET[i] ^ d[i % 3]; enc[i] = d[i] ^ nfc_secret[i] ^ d[i % 3];
} }
PrintAndLogEx(DEBUG, "encoded result.... %s", sprint_hex(enc, sizeof(enc))); PrintAndLogEx(DEBUG, "encoded result.... %s", sprint_hex(enc, sizeof(enc)));
@ -164,9 +164,9 @@ static int jooki_decode(uint8_t *b64, uint8_t *result) {
for (uint8_t i = 0; i < JOOKI_PLAIN_LEN; i++) { for (uint8_t i = 0; i < JOOKI_PLAIN_LEN; i++) {
if (i < 3) if (i < 3)
result[i] = ndef[i] ^ NFC_SECRET[i]; result[i] = ndef[i] ^ nfc_secret[i];
else else
result[i] = ndef[i] ^ NFC_SECRET[i] ^ ndef[i % 3] ^ NFC_SECRET[i % 3]; result[i] = ndef[i] ^ nfc_secret[i] ^ ndef[i % 3] ^ nfc_secret[i % 3];
} }
PrintAndLogEx(DEBUG, "(decode_jooki) plain......... %s", sprint_hex(result, sizeof(ndef))); PrintAndLogEx(DEBUG, "(decode_jooki) plain......... %s", sprint_hex(result, sizeof(ndef)));
return PM3_SUCCESS; return PM3_SUCCESS;

View file

@ -45,21 +45,21 @@
#define MAX_KEYS_LIST_LEN 1024 #define MAX_KEYS_LIST_LEN 1024
#define status(x) ( ((uint16_t)(0x91<<8)) + (uint16_t)x ) #define status(x) ( ((uint16_t)(0x91<<8)) + (uint16_t)x )
/*
uint8_t desdefaultkeys[3][8] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, //Official static uint8_t desdefaultkeys[3][8] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, //Official
{0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47}, {0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47},
{0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07} {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07}
}; };
uint8_t aesdefaultkeys[5][16] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, //Official, TRF7970A static uint8_t aesdefaultkeys[5][16] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, //Official, TRF7970A
{0x79, 0x70, 0x25, 0x53, 0x79, 0x70, 0x25, 0x53, 0x79, 0x70, 0x25, 0x53, 0x79, 0x70, 0x25, 0x53}, // TRF7970A {0x79, 0x70, 0x25, 0x53, 0x79, 0x70, 0x25, 0x53, 0x79, 0x70, 0x25, 0x53, 0x79, 0x70, 0x25, 0x53}, // TRF7970A
{0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF}, // TRF7970A {0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF}, // TRF7970A
{0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f}, {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f},
{0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f} {0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f}
}; };
uint8_t k3kdefaultkeys[1][24] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}; static uint8_t k3kdefaultkeys[1][24] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}};
*/
typedef struct mfdes_authinput { typedef struct mfdes_authinput {
uint8_t mode; uint8_t mode;
uint8_t algo; uint8_t algo;

View file

@ -28,7 +28,7 @@
#include "crypto/libpcrypto.h" #include "crypto/libpcrypto.h"
static const uint8_t DefaultKey[16] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; static const uint8_t DefaultKey[16] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
uint16_t CardAddresses[] = {0x9000, 0x9001, 0x9002, 0x9003, 0x9004, 0xA000, 0xA001, 0xA080, 0xA081, 0xC000, 0xC001}; static uint16_t CardAddresses[] = {0x9000, 0x9001, 0x9002, 0x9003, 0x9004, 0xA000, 0xA001, 0xA080, 0xA081, 0xC000, 0xC001};
typedef enum { typedef enum {
MFP_UNKNOWN = 0, MFP_UNKNOWN = 0,

View file

@ -44,7 +44,7 @@
static int CmdHelp(const char *Cmd); static int CmdHelp(const char *Cmd);
uint8_t default_3des_keys[][16] = { static uint8_t default_3des_keys[][16] = {
{ 0x42, 0x52, 0x45, 0x41, 0x4b, 0x4d, 0x45, 0x49, 0x46, 0x59, 0x4f, 0x55, 0x43, 0x41, 0x4e, 0x21 }, // 3des std key { 0x42, 0x52, 0x45, 0x41, 0x4b, 0x4d, 0x45, 0x49, 0x46, 0x59, 0x4f, 0x55, 0x43, 0x41, 0x4e, 0x21 }, // 3des std key
{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, // all zeroes { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, // all zeroes
{ 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f }, // 0x00-0x0F { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f }, // 0x00-0x0F
@ -54,12 +54,12 @@ uint8_t default_3des_keys[][16] = {
{ 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF } // 11 22 33 { 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF } // 11 22 33
}; };
uint8_t default_pwd_pack[][4] = { static uint8_t default_pwd_pack[][4] = {
{0xFF, 0xFF, 0xFF, 0xFF}, // PACK 0x00,0x00 -- factory default {0xFF, 0xFF, 0xFF, 0xFF}, // PACK 0x00,0x00 -- factory default
{0x4E, 0x45, 0x78, 0x54}, {0x4E, 0x45, 0x78, 0x54},
}; };
uint32_t UL_TYPES_ARRAY[] = { static uint32_t UL_TYPES_ARRAY[] = {
UNKNOWN, UL, UL_C, UL_EV1_48, UL_EV1_128, NTAG, UNKNOWN, UL, UL_C, UL_EV1_48, UL_EV1_128, NTAG,
NTAG_203, NTAG_210, NTAG_212, NTAG_213, NTAG_215, NTAG_216, NTAG_203, NTAG_210, NTAG_212, NTAG_213, NTAG_215, NTAG_216,
MY_D, MY_D_NFC, MY_D_MOVE, MY_D_MOVE_NFC, MY_D_MOVE_LEAN, FUDAN_UL, MY_D, MY_D_NFC, MY_D_MOVE, MY_D_MOVE_NFC, MY_D_MOVE_LEAN, FUDAN_UL,
@ -67,7 +67,7 @@ uint32_t UL_TYPES_ARRAY[] = {
NTAG_213_C, NTAG_210u NTAG_213_C, NTAG_210u
}; };
uint8_t UL_MEMORY_ARRAY[ARRAYLEN(UL_TYPES_ARRAY)] = { static uint8_t UL_MEMORY_ARRAY[ARRAYLEN(UL_TYPES_ARRAY)] = {
MAX_UL_BLOCKS, MAX_UL_BLOCKS, MAX_ULC_BLOCKS, MAX_ULEV1a_BLOCKS, MAX_ULEV1b_BLOCKS, MAX_NTAG_203, MAX_UL_BLOCKS, MAX_UL_BLOCKS, MAX_ULC_BLOCKS, MAX_ULEV1a_BLOCKS, MAX_ULEV1b_BLOCKS, MAX_NTAG_203,
MAX_NTAG_203, MAX_NTAG_210, MAX_NTAG_212, MAX_NTAG_213, MAX_NTAG_215, MAX_NTAG_216, MAX_NTAG_203, MAX_NTAG_210, MAX_NTAG_212, MAX_NTAG_213, MAX_NTAG_215, MAX_NTAG_216,
MAX_UL_BLOCKS, MAX_MY_D_NFC, MAX_MY_D_MOVE, MAX_MY_D_MOVE, MAX_MY_D_MOVE_LEAN, MAX_UL_BLOCKS, MAX_UL_BLOCKS, MAX_MY_D_NFC, MAX_MY_D_MOVE, MAX_MY_D_MOVE, MAX_MY_D_MOVE_LEAN, MAX_UL_BLOCKS,

View file

@ -213,7 +213,7 @@ static int CmdFDXBdemodBI(const char *Cmd) {
// For the country part: // For the country part:
// wget -q -O - "https://en.wikipedia.org/w/index.php?title=List_of_ISO_3166_country_codes&action=raw" | awk '/id=/{match($0, /\[\[([^\]|]*)/, a); name=a[1];getline;getline;getline;getline;getline;match($0, /numeric#([0-9]*)/, a);num=a[1]; if (num != "") {printf " { %3u, \"%s\" },\n", num, name}}' // wget -q -O - "https://en.wikipedia.org/w/index.php?title=List_of_ISO_3166_country_codes&action=raw" | awk '/id=/{match($0, /\[\[([^\]|]*)/, a); name=a[1];getline;getline;getline;getline;getline;match($0, /numeric#([0-9]*)/, a);num=a[1]; if (num != "") {printf " { %3u, \"%s\" },\n", num, name}}'
// Beware the bottom of the list contains also Manufacturers list // Beware the bottom of the list contains also Manufacturers list
const fdxbCountryMapping_t fdxbCountryMapping[] = { static const fdxbCountryMapping_t fdxbCountryMapping[] = {
{ 4, "Afghanistan" }, { 4, "Afghanistan" },
{ 8, "Albania" }, { 8, "Albania" },
{ 12, "Algeria" }, { 12, "Algeria" },

View file

@ -33,9 +33,9 @@
static int CmdHelp(const char *Cmd); static int CmdHelp(const char *Cmd);
const uint8_t translateTable[10] = {8, 2, 1, 12, 4, 5, 10, 13, 0, 9}; static const uint8_t translateTable[10] = {8, 2, 1, 12, 4, 5, 10, 13, 0, 9};
const uint8_t invTranslateTable[16] = {8, 2, 1, 0xff, 4, 5, 0xff, 0xff, 0, 9, 6, 0xff, 3, 7, 0xff, 0xff}; static const uint8_t invTranslateTable[16] = {8, 2, 1, 0xff, 4, 5, 0xff, 0xff, 0, 9, 6, 0xff, 3, 7, 0xff, 0xff};
const uint8_t preamble[] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0}; // zero inside static const uint8_t preamble[] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0}; // zero inside
static uint8_t isEven_64_63(const uint8_t *data) { // 8 static uint8_t isEven_64_63(const uint8_t *data) { // 8
uint32_t tmp[2]; uint32_t tmp[2];

View file

@ -29,7 +29,7 @@
static int CmdHelp(const char *Cmd); static int CmdHelp(const char *Cmd);
const uint8_t paradox_lut[] = { static const uint8_t paradox_lut[] = {
0xDB, 0xFC, 0x3F, 0xC5, 0x50, 0x14, 0x05, 0x47, 0xDB, 0xFC, 0x3F, 0xC5, 0x50, 0x14, 0x05, 0x47,
0x9F, 0xED, 0x7D, 0x59, 0x22, 0x84, 0x21, 0x4E, 0x9F, 0xED, 0x7D, 0x59, 0x22, 0x84, 0x21, 0x4E,
0x39, 0x48, 0x12, 0x88, 0x53, 0xDE, 0xBB, 0xE4, 0x39, 0x48, 0x12, 0x88, 0x53, 0xDE, 0xBB, 0xE4,

View file

@ -23,7 +23,7 @@ static int CmdHelp(const char *Cmd);
#define PCF7931_DEFAULT_OFFSET_POSITION 0 #define PCF7931_DEFAULT_OFFSET_POSITION 0
// Default values - Configuration // Default values - Configuration
struct pcf7931_config configPcf = { static struct pcf7931_config configPcf = {
{0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}, {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF},
PCF7931_DEFAULT_INITDELAY, PCF7931_DEFAULT_INITDELAY,
PCF7931_DEFAULT_OFFSET_WIDTH, PCF7931_DEFAULT_OFFSET_WIDTH,

View file

@ -45,7 +45,7 @@
//static uint8_t bit_rates[9] = {8, 16, 32, 40, 50, 64, 100, 128, 0}; //static uint8_t bit_rates[9] = {8, 16, 32, 40, 50, 64, 100, 128, 0};
// Default configuration // Default configuration
t55xx_conf_block_t config = { static t55xx_conf_block_t config = {
.modulation = DEMOD_ASK, .modulation = DEMOD_ASK,
.inverted = false, .inverted = false,
.offset = 0x00, .offset = 0x00,

View file

@ -68,7 +68,7 @@ static uint8_t GetATRTA1(uint8_t *atr, size_t atrlen) {
return 0x11; // default value is 0x11, corresponding to fmax=5 MHz, Fi=372, Di=1. return 0x11; // default value is 0x11, corresponding to fmax=5 MHz, Fi=372, Di=1.
} }
int DiArray[] = { static int DiArray[] = {
0, // b0000 RFU 0, // b0000 RFU
1, // b0001 1, // b0001
2, 2,
@ -87,7 +87,7 @@ int DiArray[] = {
0 // b1111 RFU 0 // b1111 RFU
}; };
int FiArray[] = { static int FiArray[] = {
372, // b0000 Historical note: in ISO/IEC 7816-3:1989, this was assigned to cards with internal clock 372, // b0000 Historical note: in ISO/IEC 7816-3:1989, this was assigned to cards with internal clock
372, // b0001 372, // b0001
558, // b0010 558, // b0010
@ -106,7 +106,7 @@ int FiArray[] = {
0 // b1111 RFU 0 // b1111 RFU
}; };
float FArray[] = { static float FArray[] = {
4, // b0000 Historical note: in ISO/IEC 7816-3:1989, this was assigned to cards with internal clock 4, // b0000 Historical note: in ISO/IEC 7816-3:1989, this was assigned to cards with internal clock
5, // b0001 5, // b0001
6, // b0010 6, // b0010

View file

@ -3,7 +3,7 @@
#define CRC64_ISO_PRESET 0xFFFFFFFFFFFFFFFF #define CRC64_ISO_PRESET 0xFFFFFFFFFFFFFFFF
#define CRC64_ECMA_PRESET 0x0000000000000000 #define CRC64_ECMA_PRESET 0x0000000000000000
const uint64_t crc64_table[] = { static const uint64_t crc64_table[] = {
0x0000000000000000, 0x42F0E1EBA9EA3693, 0x85E1C3D753D46D26, 0xC711223CFA3E5BB5, 0x0000000000000000, 0x42F0E1EBA9EA3693, 0x85E1C3D753D46D26, 0xC711223CFA3E5BB5,
0x493366450E42ECDF, 0x0BC387AEA7A8DA4C, 0xCCD2A5925D9681F9, 0x8E224479F47CB76A, 0x493366450E42ECDF, 0x0BC387AEA7A8DA4C, 0xCCD2A5925D9681F9, 0x8E224479F47CB76A,
0x9266CC8A1C85D9BE, 0xD0962D61B56FEF2D, 0x17870F5D4F51B498, 0x5577EEB6E6BB820B, 0x9266CC8A1C85D9BE, 0xD0962D61B56FEF2D, 0x17870F5D4F51B498, 0x5577EEB6E6BB820B,

View file

@ -62,7 +62,7 @@ uint8_t g_debugMode = 0;
# define prnt Dbprintf # define prnt Dbprintf
#endif #endif
signal_t signalprop = { 255, -255, 0, 0, true }; static signal_t signalprop = { 255, -255, 0, 0, true };
signal_t *getSignalProperties(void) { signal_t *getSignalProperties(void) {
return &signalprop; return &signalprop;
} }