static uint8_t trailerAccessBytes[4] = {0x08, 0x77, 0x8F, 0x00};\r
\r
// variables\r
-char logHexFileName[200] = {0x00};\r
+char logHexFileName[FILE_PATH_SIZE] = {0x00};\r
static uint8_t traceCard[4096] = {0x00};\r
-static char traceFileName[200] = {0x00};\r
+static char traceFileName[FILE_PATH_SIZE] = {0x00};\r
static int traceState = TRACE_IDLE;\r
static uint8_t traceCurBlock = 0;\r
static uint8_t traceCurKey = 0;\r
FillFileNameByUID(traceFileName, tuid, ".eml", 7);\r
\r
f = fopen(traceFileName, "r");\r
- if (!f) return 1;\r
+ if (!f) {\r
+ fclose(f);\r
+ return 1;\r
+ }\r
\r
blockNum = 0;\r
+ \r
while(!feof(f)){\r
+ \r
memset(buf, 0, sizeof(buf));\r
if (fgets(buf, sizeof(buf), f) == NULL) {\r
PrintAndLog("File reading error.");\r
if ((!strlen(traceFileName)) || (isTraceCardEmpty())) return 0;\r
\r
f = fopen(traceFileName, "w+");\r
+ if ( !f ) {\r
+ fclose(f);\r
+ return 1;\r
+ }\r
+ \r
for (int i = 0; i < 64; i++) { // blocks\r
for (int j = 0; j < 16; j++) // bytes\r
fprintf(f, "%02x", *(traceCard + i * 16 + j)); \r
fprintf(f,"\n");\r
}\r
fclose(f);\r
-\r
return 0;\r
}\r
\r
int foundKey[2];\r
} sector;\r
\r
-extern char logHexFileName[200];\r
+extern char logHexFileName[FILE_PATH_SIZE];\r
\r
int mfnested(uint8_t blockNo, uint8_t keyType, uint8_t * key, uint8_t trgBlockNo, uint8_t trgKeyType, uint8_t * ResultKeys, bool calibrate);\r
int mfCheckKeys (uint8_t blockNo, uint8_t keyType, uint8_t keycnt, uint8_t * keyBlock, uint64_t * key);\r