summaryrefslogtreecommitdiffstats
path: root/commands
diff options
context:
space:
mode:
authorJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2015-03-11 17:53:06 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2015-03-12 07:58:24 +0100
commit2505dd9b413aca61b3acd74765683ee6430a06cf (patch)
treedb3eecce875059f2ffdec311cbb80c9d0f071c08 /commands
parent5149be813f1d016d26b3688870506d7100930e65 (diff)
downloadbarebox-2505dd9b413aca61b3acd74765683ee6430a06cf.tar.gz
barebox-2505dd9b413aca61b3acd74765683ee6430a06cf.tar.xz
command: add sha384sum and sha512sum support
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'commands')
-rw-r--r--commands/Kconfig24
-rw-r--r--commands/digest.c42
2 files changed, 66 insertions, 0 deletions
diff --git a/commands/Kconfig b/commands/Kconfig
index e4f68e7bda..8fa2178b14 100644
--- a/commands/Kconfig
+++ b/commands/Kconfig
@@ -1016,6 +1016,30 @@ config CMD_SHA256SUM
Calculate a SHA256 digest over a FILE or a memory area.
+config CMD_SHA384SUM
+ tristate
+ select COMPILE_DIGEST
+ select SHA384
+ prompt "sha384sum"
+ help
+ Calculate SHA384 digest
+
+ Usage: sha384sum FILE|AREA
+
+ Calculate a SHA384 digest over a FILE or a memory area.
+
+config CMD_SHA512SUM
+ tristate
+ select COMPILE_DIGEST
+ select SHA512
+ prompt "sha512sum"
+ help
+ sha512sum - calculate SHA512 digest
+
+ Usage: sha512sum FILE|AREA
+
+ Calculate a SHA512 digest over a FILE or a memory area.
+
config CMD_UNCOMPRESS
bool
select UNCOMPRESS
diff --git a/commands/digest.c b/commands/digest.c
index c6a2751356..20fa13f303 100644
--- a/commands/digest.c
+++ b/commands/digest.c
@@ -159,3 +159,45 @@ BAREBOX_CMD_START(sha256sum)
BAREBOX_CMD_END
#endif /* CMD_CMD_SHA256SUM */
+
+#ifdef CONFIG_CMD_SHA384SUM
+
+static int do_sha384(int argc, char *argv[])
+{
+ return do_digest("sha384", argc, argv);
+}
+
+BAREBOX_CMD_HELP_START(sha384sum)
+BAREBOX_CMD_HELP_TEXT("Calculate a SHA384 digest over a FILE or a memory area.")
+BAREBOX_CMD_HELP_END
+
+BAREBOX_CMD_START(sha384sum)
+ .cmd = do_sha384,
+ BAREBOX_CMD_DESC("calculate SHA384 digest")
+ BAREBOX_CMD_OPTS("FILE|AREA")
+ BAREBOX_CMD_GROUP(CMD_GRP_FILE)
+ BAREBOX_CMD_HELP(cmd_sha384sum_help)
+BAREBOX_CMD_END
+
+#endif /* CMD_CMD_SHA384SUM */
+
+#ifdef CONFIG_CMD_SHA512SUM
+
+static int do_sha512(int argc, char *argv[])
+{
+ return do_digest("sha512", argc, argv);
+}
+
+BAREBOX_CMD_HELP_START(sha512sum)
+BAREBOX_CMD_HELP_TEXT("Calculate a SHA512 digest over a FILE or a memory area.")
+BAREBOX_CMD_HELP_END
+
+BAREBOX_CMD_START(sha512sum)
+ .cmd = do_sha512,
+ BAREBOX_CMD_DESC("calculate SHA512 digest")
+ BAREBOX_CMD_OPTS("FILE|AREA")
+ BAREBOX_CMD_GROUP(CMD_GRP_FILE)
+ BAREBOX_CMD_HELP(cmd_sha512sum_help)
+BAREBOX_CMD_END
+
+#endif /* CMD_CMD_SHA512SUM */