]> cvs.zerfleddert.de Git - proxmark3-svn/commitdiff
FIX: another file_path found in loadTraceCard and saveTraceCard, is now corrected...
authoriceman1001 <iceman@iuse.se>
Tue, 20 Jan 2015 20:58:53 +0000 (21:58 +0100)
committericeman1001 <iceman@iuse.se>
Tue, 20 Jan 2015 20:58:53 +0000 (21:58 +0100)
FIX: some filehandles that didn't get closed.

client/mifarehost.c
client/mifarehost.h

index e62d6260dcc758881cd1ae43b1bdb88c117fc281..7f784850841095713a0a54284259bf9e1b552d05 100644 (file)
@@ -301,9 +301,9 @@ int mfCGetBlock(uint8_t blockNo, uint8_t *data, uint8_t params) {
 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
@@ -351,10 +351,15 @@ int loadTraceCard(uint8_t *tuid) {
        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
@@ -386,13 +391,17 @@ int saveTraceCard(void) {
        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
index 3e946cd9279550cdd2cd8e9d2fbddd98af57bce6..96eb75f7031b808035841c999a13085d813dad1d 100644 (file)
@@ -47,7 +47,7 @@ typedef struct {
        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
Impressum, Datenschutz