sha1sum.c 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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. #include <common.h>
  11. #include <command.h>
  12. #include <hash.h>
  13. #include <u-boot/sha1.h>
  14. int do_sha1sum(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
  15. {
  16. int flags = HASH_FLAG_ENV;
  17. int ac;
  18. char * const *av;
  19. if (argc < 3)
  20. return CMD_RET_USAGE;
  21. av = argv + 1;
  22. ac = argc - 1;
  23. #ifdef CONFIG_SHA1SUM_VERIFY
  24. if (strcmp(*av, "-v") == 0) {
  25. flags |= HASH_FLAG_VERIFY;
  26. av++;
  27. ac--;
  28. }
  29. #endif
  30. return hash_command("sha1", flags, cmdtp, flag, ac, av);
  31. }
  32. #ifdef CONFIG_SHA1SUM_VERIFY
  33. U_BOOT_CMD(
  34. sha1sum, 5, 1, do_sha1sum,
  35. "compute SHA1 message digest",
  36. "address count [[*]sum]\n"
  37. " - compute SHA1 message digest [save to sum]\n"
  38. "sha1sum -v address count [*]sum\n"
  39. " - verify sha1sum of memory area"
  40. );
  41. #else
  42. U_BOOT_CMD(
  43. sha1sum, 4, 1, do_sha1sum,
  44. "compute SHA1 message digest",
  45. "address count [[*]sum]\n"
  46. " - compute SHA1 message digest [save to sum]"
  47. );
  48. #endif