diff options
Diffstat (limited to 'util/get-checksums')
| -rwxr-xr-x | util/get-checksums | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/util/get-checksums b/util/get-checksums new file mode 100755 index 0000000..9d1b86a --- /dev/null +++ b/util/get-checksums @@ -0,0 +1,42 @@ +#!/bin/sh +# See LICENSE file for copyright and license details. + +set -e + +gensums () { + gensum sha224sum SHA224 + gensum sha256sum SHA256 + gensum sha384sum SHA384 + gensum sha512sum SHA512 + gensum sha512-224sum SHA512/224 + gensum sha512-256sum SHA512/256 + gensum sha3-224sum SHA3-224 + gensum sha3-256sum SHA3-256 + gensum sha3-384sum SHA3-384 + gensum sha3-512sum SHA3-512 + gensum b2sum BLAKE2b +} + +if test $# = 1 && test "$1" = '-- output checksum order --'; then + gensum () { printf '%s\n' "$2"; } + gensums + exit 0 +fi + +if ! test $# = 1; then + printf 'usage: %s tarball\n' "$0" >&2 + exit 1 +fi + +tarball="$1" + +gensum () { + tool="$1" + name="$2" + + sum="$(${tool} < "${tarball}" | cut -d ' ' -f 1)" + test -n "${sum}" + printf '%s checksum: %s\n' "${name}" "${sum}" +} + +gensums |
