X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/39d43ccc21f7c700010beb3f79773abbe13870a3..55db344f975cf790023151b9a9c26268fa035357:/client/mifarehost.c diff --git a/client/mifarehost.c b/client/mifarehost.c index 35054d25..b7cd3b59 100644 --- a/client/mifarehost.c +++ b/client/mifarehost.c @@ -125,8 +125,8 @@ int mfnested(uint8_t blockNo, uint8_t keyType, uint8_t * key, uint8_t trgBlockNo p4->even = 0; p4->odd = 0; statelists[0].len = p3 - statelists[0].head.slhead; statelists[1].len = p4 - statelists[1].head.slhead; - statelists[0].tail.sltail=--p3; - statelists[1].tail.sltail=--p4; + statelists[0].tail.sltail = --p3; + statelists[1].tail.sltail = --p4; // the statelists now contain possible keys. The key we are searching for must be in the // intersection of both lists. Create the intersection: @@ -412,14 +412,20 @@ int loadTraceCard(uint8_t *tuid, uint8_t uidlen) { memset(buf, 0, sizeof(buf)); if (fgets(buf, sizeof(buf), f) == NULL) { PrintAndLog("No trace file found or reading error."); - fclose(f); + if (f) { + fclose(f); + f = NULL; + } return 2; } if (strlen(buf) < 32){ if (feof(f)) break; PrintAndLog("File content error. Block data must include 32 HEX symbols"); - fclose(f); + if (f) { + fclose(f); + f = NULL; + } return 2; } for (i = 0; i < 32; i += 2) @@ -429,7 +435,10 @@ int loadTraceCard(uint8_t *tuid, uint8_t uidlen) { blockNum++; } - fclose(f); + if (f) { + fclose(f); + f = NULL; + } return 0; } @@ -447,7 +456,10 @@ int saveTraceCard(void) { fprintf(f,"\n"); } fflush(f); - fclose(f); + if (f) { + fclose(f); + f = NULL; + } return 0; }