summaryrefslogtreecommitdiffstats
path: root/commands/digest.c
diff options
context:
space:
mode:
authorAntony Pavlov <antonynpavlov@gmail.com>2012-08-23 23:21:11 +0400
committerSascha Hauer <s.hauer@pengutronix.de>2012-08-28 08:48:46 +0200
commit0d6aa9a82bd6e307b777a86997cc99d061d61e59 (patch)
tree00fc9c3e9702face81bbbda0fe1ec1b3987af052 /commands/digest.c
parent3f96b4938c4046590be8a38fb114148c4bf1ca8e (diff)
downloadbarebox-0d6aa9a82bd6e307b777a86997cc99d061d61e59.tar.gz
barebox-0d6aa9a82bd6e307b777a86997cc99d061d61e59.tar.xz
commands/digest: don't print checksum for non-existing files
This fixes the case: barebox:/ md5sum non-existing-file non-existing-file: No such file or directory 00000000000000000000000000000000 non-existing-file 0x00000000 ... 0xffffffffffffffff barebox:/ Signed-off-by: Antony Pavlov <antonynpavlov@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'commands/digest.c')
-rw-r--r--commands/digest.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/commands/digest.c b/commands/digest.c
index 07cbec9907..c077ad9892 100644
--- a/commands/digest.c
+++ b/commands/digest.c
@@ -60,13 +60,15 @@ static int do_digest(char *algorithm, int argc, char *argv[])
argv++;
}
- if (digest_file_window(d, filename, hash, start, size) < 0)
+ if (digest_file_window(d, filename, hash, start, size) < 0) {
ret = 1;
+ } else {
+ for (i = 0; i < d->length; i++)
+ printf("%02x", hash[i]);
- for (i = 0; i < d->length; i++)
- printf("%02x", hash[i]);
-
- printf(" %s\t0x%08llx ... 0x%08llx\n", filename, start, start + size);
+ printf(" %s\t0x%08llx ... 0x%08llx\n",
+ filename, start, start + size);
+ }
argv++;
}