]> Git Repo - J-u-boot.git/blob - cmd/hash.c
Merge patch series "Enable OSPI on j721e"
[J-u-boot.git] / cmd / hash.c
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * Copyright (c) 2012 The Chromium OS Authors.
4  *
5  * (C) Copyright 2011
6  * Joe Hershberger, National Instruments, [email protected]
7  *
8  * (C) Copyright 2000
9  * Wolfgang Denk, DENX Software Engineering, [email protected].
10  */
11
12 #include <common.h>
13 #include <command.h>
14 #include <hash.h>
15 #include <linux/ctype.h>
16
17 #if IS_ENABLED(CONFIG_HASH_VERIFY)
18 #define HARGS 6
19 #else
20 #define HARGS 5
21 #endif
22
23 static int do_hash(struct cmd_tbl *cmdtp, int flag, int argc,
24                    char *const argv[])
25 {
26         char *s;
27         int flags = HASH_FLAG_ENV;
28
29         if (argc < (HARGS - 1))
30                 return CMD_RET_USAGE;
31
32 #if IS_ENABLED(CONFIG_HASH_VERIFY)
33         if (!strcmp(argv[1], "-v")) {
34                 flags |= HASH_FLAG_VERIFY;
35                 argc--;
36                 argv++;
37         }
38 #endif
39         /* Move forward to 'algorithm' parameter */
40         argc--;
41         argv++;
42         for (s = *argv; *s; s++)
43                 *s = tolower(*s);
44         return hash_command(*argv, flags, cmdtp, flag, argc - 1, argv + 1);
45 }
46
47 U_BOOT_CMD(
48         hash,   HARGS,  1,      do_hash,
49         "compute hash message digest",
50         "algorithm address count [[*]hash_dest]\n"
51                 "    - compute message digest [save to env var / *address]"
52 #if IS_ENABLED(CONFIG_HASH_VERIFY)
53         "\nhash -v algorithm address count [*]hash\n"
54                 "    - verify message digest of memory area to immediate value, \n"
55                 "      env var or *address"
56 #endif
57 );
This page took 0.028953 seconds and 4 git commands to generate.