diff options
author | Mike Frysinger <vapier@gentoo.org> | 2011-04-02 21:40:19 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2011-04-13 15:56:47 -0400 |
commit | c3d2a17c1eba2b4c1621ee7550ae4ea7446bfc39 (patch) | |
tree | 800e2611774814221048ba999f37d07ffadaf46b /common/cmd_sha1sum.c | |
parent | 710b99385c389f5959a33a8e239f7f029e196125 (diff) | |
download | u-boot-c3d2a17c1eba2b4c1621ee7550ae4ea7446bfc39.tar.gz |
md5sum/sha1sum/unzip: split out of mondo mem file
There's no real need to keep these functions in the cmd_mem file since
they do not use any of the common global mem variables. So split them
out into their own dedicated cmd files.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'common/cmd_sha1sum.c')
-rw-r--r-- | common/cmd_sha1sum.c | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/common/cmd_sha1sum.c b/common/cmd_sha1sum.c new file mode 100644 index 0000000000..bb3cff01f0 --- /dev/null +++ b/common/cmd_sha1sum.c @@ -0,0 +1,53 @@ +/* + * (C) Copyright 2000 + * Wolfgang Denk, DENX Software Engineering, wd@denx.de. + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#include <common.h> +#include <command.h> +#include <sha1.h> + +static int do_sha1sum(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +{ + unsigned long addr, len; + unsigned int i; + u8 output[20]; + + if (argc < 3) + return cmd_usage(cmdtp); + + addr = simple_strtoul(argv[1], NULL, 16); + len = simple_strtoul(argv[2], NULL, 16); + + sha1_csum((unsigned char *) addr, len, output); + printf("SHA1 for %08lx ... %08lx ==> ", addr, addr + len - 1); + for (i = 0; i < 20; i++) + printf("%02x", output[i]); + printf("\n"); + + return 0; +} + +U_BOOT_CMD( + sha1sum, 3, 1, do_sha1sum, + "compute SHA1 message digest", + "address count" +); |