/usr/share/debian-cd/tools/imagesums is in debian-cd 3.1.17.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | #!/bin/bash
VERBOSE=0
if [ "$1" = "-v" ] ; then
VERBOSE=1
shift
fi
cd $1
if [ "$2"x != ""x ] ; then
EXT="$2"
fi
if [ "$CHECKSUMS"x = ""x ] ; then
CHECKSUMS="sha1 md5 sha512 sha256"
fi
for SUM in $CHECKSUMS; do
UPSUM=`echo $SUM | tr 'a-z' 'A-Z'`
FILE=$UPSUM"SUMS"$EXT
if [ $VERBOSE -eq 1 ] ; then
echo "Clearing $PWD/$FILE"
fi
:> $FILE
done
# 2 calls to find here to get the ordering right - we *really* want to
# get the jigdo files first
for file in `find * -name \*.jigdo` `find * -name \*.iso`; do
case $file in
*.jigdo)
iso=${file%%.jigdo}.iso
JIGDO=1
;;
*.iso)
iso=$file
JIGDO=0
;;
*)
echo "Found unexpected file $file!"
exit 1
;;
esac
for SUM in $CHECKSUMS; do
UPSUM=`echo $SUM | tr 'a-z' 'A-Z'`
FILE=$UPSUM"SUMS"$EXT
CMD="$SUM"sum
grep -q $iso $FILE
if [ $? -ne 0 ] ; then
CKSUM=""
if [ "$JIGDO" == 1 ] ; then
CKSUM=`zcat -f $file | grep -i "Image Hex $CMD" | \
awk '{print $5}'`
fi
if [ "$CKSUM"x != ""x ] ; then
echo "$CKSUM $iso" >> $FILE
grep $iso $FILE
else
echo "No Jigdo help for $SUM, doing it the long way with $CMD"
$CMD $iso >> $FILE
grep $iso $FILE
fi
fi
done
done
|