wok-next diff syslinux/stuff/iso2exe/iso2exe.sh @ rev 17492
syslinux/iso2exe: check ISO md5
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sat Jan 03 21:41:48 2015 +0100 (2015-01-03) |
parents | 2c2a6dd5ba40 |
children | 26654c1a7ca7 |
line diff
1.1 --- a/syslinux/stuff/iso2exe/iso2exe.sh Fri Jan 02 21:46:16 2015 +0100 1.2 +++ b/syslinux/stuff/iso2exe/iso2exe.sh Sat Jan 03 21:41:48 2015 +0100 1.3 @@ -37,6 +37,11 @@ 1.4 mkdir -p $TMP/bin $TMP/dev 1.5 cp -a /dev/?d?* /dev/tty /dev/tty0 $TMP/dev 1.6 $0 --get init > $TMP/init.exe 1.7 + if [ $(stat -c %s $1) -gt 32768 ]; then 1.8 + echo "Compute ISO image md5 ..." 1.9 + sed -i "s/^ISOMD5.*/ISOMD5=$(ddq if=$1 bs=32k skip=1 | \ 1.10 + md5sum | cut -c-32)/" $TMP/init.exe 1.11 + fi 1.12 # mount -o loop,ro $1 $TMP 1.13 # oldslitaz="$(ls $TMP/boot/isolinux/splash.lss 2> /dev/null)" 1.14 # umount -d $TMP 1.15 @@ -57,10 +62,12 @@ 1.16 1.17 add_dosexe() 1.18 { 1.19 - OFS=$((0x7EE0)) 1.20 - printf "Adding DOS/EXE at %04X (%d bytes) ...\n" $OFS $((0x8000 - $OFS)) 1.21 - $0 --get bootiso.bin 2> /dev/null | \ 1.22 - ddq bs=1 skip=$OFS of=$1 seek=$OFS conv=notrunc 1.23 + TMP=/tmp/bootiso$$ 1.24 + $0 --get bootiso.bin > $TMP 2> /dev/null 1.25 + OFS=$(($(get 20 $TMP) - 0xC0)) 1.26 + printf "Adding DOS/EXE stub at %04X (%d bytes) ...\n" $OFS $((0x8000 - $OFS)) 1.27 + ddq if=$TMP bs=1 skip=$OFS of=$1 seek=$OFS conv=notrunc 1.28 + rm -f $TMP 1.29 } 1.30 1.31 add_doscom()