X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/6b1111d7b88efe0c22d793e08c501d37a9635e9c..2dcf60f3df145625781982040ae9c80d30e40482:/client/loclass/elite_crack.c diff --git a/client/loclass/elite_crack.c b/client/loclass/elite_crack.c index 2329e597..2395a178 100644 --- a/client/loclass/elite_crack.c +++ b/client/loclass/elite_crack.c @@ -522,8 +522,8 @@ int bruteforceDump(uint8_t dump[], size_t dumpsize, uint16_t keytable[]) errors += bruteforceItem(*attack, keytable); } free(attack); - clock_t t2 = clock(); - float diff = (((float)t2 - (float)t1) / CLOCKS_PER_SEC ); + t1 = clock() - t1; + float diff = ((float)t1 / CLOCKS_PER_SEC ); prnlog("\nPerformed full crack in %f seconds",diff); // Pick out the first 16 bytes of the keytable. @@ -552,7 +552,6 @@ int bruteforceDump(uint8_t dump[], size_t dumpsize, uint16_t keytable[]) */ int bruteforceFile(const char *filename, uint16_t keytable[]) { - FILE *f = fopen(filename, "rb"); if(!f) { prnlog("Failed to read from file '%s'", filename); @@ -565,19 +564,23 @@ int bruteforceFile(const char *filename, uint16_t keytable[]) if (fsize < 0) { prnlog("Error, when getting filesize"); - fclose(f); + if (f) { + fclose(f); + f = NULL; + } return 1; } uint8_t *dump = malloc(fsize); size_t bytes_read = fread(dump, 1, fsize, f); - fclose(f); - if (bytes_read < fsize) - { + if (f) { + fclose(f); + f = NULL; + } + if (bytes_read < fsize) { prnlog("Error, could only read %d bytes (should be %d)",bytes_read, fsize ); } - uint8_t res = bruteforceDump(dump,fsize,keytable); free(dump); return res;