uboot/common/cmd_sha1sum.c
<<
>>
Prefs
   1/*
   2 * (C) Copyright 2011
   3 * Joe Hershberger, National Instruments, joe.hershberger@ni.com
   4 *
   5 * (C) Copyright 2000
   6 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
   7 *
   8 * SPDX-License-Identifier:     GPL-2.0+
   9 */
  10
  11#include <common.h>
  12#include <command.h>
  13#include <hash.h>
  14#include <u-boot/sha1.h>
  15
  16int do_sha1sum(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
  17{
  18        int flags = HASH_FLAG_ENV;
  19        int ac;
  20        char * const *av;
  21
  22        if (argc < 3)
  23                return CMD_RET_USAGE;
  24
  25        av = argv + 1;
  26        ac = argc - 1;
  27#ifdef CONFIG_SHA1SUM_VERIFY
  28        if (strcmp(*av, "-v") == 0) {
  29                flags |= HASH_FLAG_VERIFY;
  30                av++;
  31                ac--;
  32        }
  33#endif
  34
  35        return hash_command("sha1", flags, cmdtp, flag, ac, av);
  36}
  37
  38#ifdef CONFIG_SHA1SUM_VERIFY
  39U_BOOT_CMD(
  40        sha1sum,        5,      1,      do_sha1sum,
  41        "compute SHA1 message digest",
  42        "address count [[*]sum]\n"
  43                "    - compute SHA1 message digest [save to sum]\n"
  44        "sha1sum -v address count [*]sum\n"
  45                "    - verify sha1sum of memory area"
  46);
  47#else
  48U_BOOT_CMD(
  49        sha1sum,        4,      1,      do_sha1sum,
  50        "compute SHA1 message digest",
  51        "address count [[*]sum]\n"
  52                "    - compute SHA1 message digest [save to sum]"
  53);
  54#endif
  55