1
0
mirror of git://git.sv.gnu.org/coreutils.git synced 2026-04-20 18:56:39 +02:00

tests: cksum: check more length variants

* tests/cksum/cksum-raw.sh: Adjust to non legacy naming,
and also check various length variations.
* tests/misc/read-errors.sh: Likewise.
This commit is contained in:
Pádraig Brady
2025-09-04 14:42:03 +01:00
parent 31ed9a30c0
commit a43a17f216
2 changed files with 26 additions and 21 deletions

View File

@@ -25,30 +25,31 @@ sysv u2
crc u4
md5 x1
sha1 x1
sha224 x1
sha256 x1
sha384 x1
sha512 x1
blake2b x1
sha2 x1 -l224 -l256 -l384 -l512
sha3 x1 -l224 -l256 -l384 -l512
blake2b x1 -l8 -l256 -l512
sm3 x1
EOF
date > file.in || framework_failure_
while read algo type; do
# Binary converted back to text
cksum --raw --algorithm $algo file.in > digest.bin || fail=1
d='digest.bin.txt'
od --endian=big -An -w1024 -t$type < digest.bin | tr -d ' ' \
> "$d" || framework_failure_
# Pad the bsd checksum with leading 0's, if needed.
case $algo in bsd) n=$(cat "$d"); printf '%05d\n' "$n" > "$d" ;; esac
while read algo type lengths; do
: "${lengths:=-l0}"
for len in $lengths; do
# Binary converted back to text
cksum --raw -a $algo $len file.in > digest.bin || fail=1
d='digest.bin.txt'
od --endian=big -An -w1024 -t$type < digest.bin | tr -d ' ' \
> "$d" || framework_failure_
# Pad the bsd checksum with leading 0's, if needed.
case $algo in bsd) n=$(cat "$d"); printf '%05d\n' "$n" > "$d" ;; esac
# Standard text output
cksum --untagged --algorithm $algo < file.in | cut -d ' ' -f1 \
> digest.txt || fail=1
# Standard text output
cksum --untagged -a $algo $len < file.in | cut -d ' ' -f1 \
> digest.txt || fail=1
compare digest.txt "$d" || fail=1
compare digest.txt "$d" || fail=1
done
done < digest_types
# Ensure --base64 and --raw not used together

View File

@@ -30,10 +30,14 @@ cksum -a crc .
cksum -a crc32b .
cksum -a md5 .
cksum -a sha1 .
cksum -a sha224 .
cksum -a sha256 .
cksum -a sha384 .
cksum -a sha512 .
cksum -a sha2 -l 224 .
cksum -a sha2 -l 256 .
cksum -a sha2 -l 384 .
cksum -a sha2 -l 512 .
cksum -a sha3 -l 224 .
cksum -a sha3 -l 256 .
cksum -a sha3 -l 384 .
cksum -a sha3 -l 512 .
cksum -a sm3 .
cksum -a sysv .
comm . .