1 #! /bin/sh /usr/share/dpatch/dpatch-run
2 ## 12_uuid_support.dpatch by Michael Prokop <prokop@grml-forensic.org>
4 ## DP: This patch enables support for verifying the ISO through bootid=.... bootoption.
5 ## DP: Logic behind bootoptions and possible combinations:
6 ## DP: * bootid.txt + wrong bootid=... => fails to boot
7 ## DP: * bootid.txt + right bootid=... => boots
8 ## DP: * bootid.txt + ignore_bootid => boots
9 ## DP: * bootid.txt + no bootid=... + no ignore_bootid => fails to boot
10 ## DP: * no bootid.txt + no bootid=... + no ignore_bootid => boots
11 ## DP: * no bootid.txt + bootid=... => fails to boot
12 ## DP: * no bootid.txt + ignore_bootid=... => boots
22 + BOOTID="${ARGUMENT#bootid=}"
27 DEFCONSOLE="${ARGUMENT#*=}"
35 + export IGNORE_BOOTID
49 + if [ -n "$IGNORE_BOOTID" ] ; then
50 + echo " * Ignoring verification of bootid.txt as requested via ignore_bootid.">>/live-boot.log
54 + if [ -n "$BOOTID" ] && ! [ -r "${path}/conf/bootid.txt" ] ; then
55 + echo " * Warning: bootid=... specified but no bootid.txt found on currently requested device.">>/live-boot.log
59 + [ -r "${path}/conf/bootid.txt" ] || return 0
61 + bootid_conf=$(cat "${path}/conf/bootid.txt")
63 + if [ -z "$BOOTID" -a -z "$IGNORE_BOOTID" ]
65 + echo " * Warning: bootid.txt found but ignore_bootid / bootid=.. bootoption missing...">>/live-boot.log
69 + if [ "$BOOTID" = "$bootid_conf" ]
71 + echo " * Successfully verified /conf/bootid.txt from ISO, continuing... ">>/live-boot.log
73 + echo " * Warning: BOOTID of ISO does not match. Retrying and continuing search...">>/live-boot.log
83 if [ "${IGNORE_UUID}" ] || [ ! -e /conf/uuid.conf ]
87 if is_live_path ${mountpoint} && \
88 - ([ "${skip_uuid_check}" ] || matches_uuid ${mountpoint})
89 + ([ "${skip_uuid_check}" ] || grml_match_bootid ${mountpoint})
93 @@ -1769,19 +1815,6 @@
97 - elif [ "${fstype}" = "squashfs" -o \
98 - "${fstype}" = "btrfs" -o \
99 - "${fstype}" = "ext2" -o \
100 - "${fstype}" = "ext3" -o \
101 - "${fstype}" = "ext4" -o \
102 - "${fstype}" = "jffs2" ]
104 - # This is an ugly hack situation, the block device has
105 - # an image directly on it. It's hopefully
106 - # live-boot, so take it and run with it.
107 - ln -s "${devname}" "${devname}.${fstype}"
108 - echo "${devname}.${fstype}"