From: Joe Hershberger Date: Tue, 5 May 2015 17:23:53 +0000 (-0500) Subject: Fix broken verify functionality in crc32 command X-Git-Tag: v2015.07-rc2~255 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=a69bdba9c6275b5673133ad057e2195ab48f3a53;p=oweals%2Fu-boot.git Fix broken verify functionality in crc32 command Introduced in change d20a40de9db07de1f1f06a79a4da1cdda5379b75 "Roll crc32 into hash infrastructure" The crc32 command with no -v expects an optional 3rd argument to be an address to store the result in. With the -v switch, the last argument is a crc, not an address. In the case where -v is set, we should set the HASH_FLAG_ENV flag since that will first look for the value to be a digest value, which matches the expected API for the crc32 command. Signed-off-by: Joe Hershberger Reviewed-by: Simon Glass --- diff --git a/common/cmd_mem.c b/common/cmd_mem.c index b91adb29c9..2e85d53dd2 100644 --- a/common/cmd_mem.c +++ b/common/cmd_mem.c @@ -1227,7 +1227,7 @@ static int do_mem_crc(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) ac = argc - 1; #ifdef CONFIG_HASH_VERIFY if (strcmp(*av, "-v") == 0) { - flags |= HASH_FLAG_VERIFY; + flags |= HASH_FLAG_VERIFY | HASH_FLAG_ENV; av++; ac--; }