X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/9c4e28a44540d6314c93558cc0ad162af86e63cc..8b15860ed17bc9008e59bd9e9d581d30ded6bd93:/client/cmdhficlass.c diff --git a/client/cmdhficlass.c b/client/cmdhficlass.c index d4750735..22d443f8 100644 --- a/client/cmdhficlass.c +++ b/client/cmdhficlass.c @@ -286,10 +286,10 @@ int CmdHFiClassELoad(const char *Cmd) { 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); @@ -1316,8 +1316,13 @@ int CmdHFiClassReadTagFile(const char *Cmd) { long fsize = ftell(f); fseek(f, 0, SEEK_SET); - uint8_t *dump = malloc(fsize); + if ( fsize < 0 ) { + PrintAndLog("Error, when getting filesize"); + fclose(f); + return 1; + } + uint8_t *dump = malloc(fsize); size_t bytes_read = fread(dump, 1, fsize, f); fclose(f); @@ -1509,6 +1514,12 @@ static int loadKeys(char *filename) { long fsize = ftell(f); fseek(f, 0, SEEK_SET); + if ( fsize < 0 ) { + PrintAndLog("Error, when getting filesize"); + fclose(f); + return 1; + } + uint8_t *dump = malloc(fsize); size_t bytes_read = fread(dump, 1, fsize, f); @@ -1601,7 +1612,7 @@ int CmdHFiClassManageKeys(const char *Cmd) { case 'n': case 'N': keyNbr = param_get8(Cmd, cmdp+1); - if (keyNbr < 0) { + if (keyNbr == 0) { PrintAndLog("Wrong block number"); errors = true; }