X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/d60418a05f2cbaa97140c569ba63f1a1eb831a79..6b1111d7b88efe0c22d793e08c501d37a9635e9c:/client/loclass/elite_crack.c diff --git a/client/loclass/elite_crack.c b/client/loclass/elite_crack.c index a8ab869e..2329e597 100644 --- a/client/loclass/elite_crack.c +++ b/client/loclass/elite_crack.c @@ -394,7 +394,7 @@ int bruteforceItem(dumpdata item, uint16_t keytable[]) //Diversify diversifyKey(item.csn, key_sel_p, div_key); //Calc mac - doMAC(item.cc_nr,12, div_key,calculated_MAC); + doMAC(item.cc_nr, div_key,calculated_MAC); if(memcmp(calculated_MAC, item.mac, 4) == 0) { @@ -563,6 +563,12 @@ int bruteforceFile(const char *filename, uint16_t keytable[]) long fsize = ftell(f); fseek(f, 0, SEEK_SET); + if (fsize < 0) { + prnlog("Error, when getting filesize"); + fclose(f); + return 1; + } + uint8_t *dump = malloc(fsize); size_t bytes_read = fread(dump, 1, fsize, f); @@ -571,7 +577,10 @@ int bruteforceFile(const char *filename, uint16_t keytable[]) { prnlog("Error, could only read %d bytes (should be %d)",bytes_read, fsize ); } - return bruteforceDump(dump,fsize,keytable); + + uint8_t res = bruteforceDump(dump,fsize,keytable); + free(dump); + return res; } /** *