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
15 Index: live-boot-grml/scripts/live
16 ===================================================================
17 --- live-boot-grml.orig/scripts/live 2011-12-06 22:10:24.000000000 +0100
18 +++ live-boot-grml/scripts/live 2011-12-06 22:10:25.000000000 +0100
24 + BOOTID="${ARGUMENT#bootid=}"
29 DEFCONSOLE="${ARGUMENT#*=}"
37 + export IGNORE_BOOTID
51 + if [ -n "$IGNORE_BOOTID" ] ; then
52 + echo " * Ignoring verification of bootid.txt as requested via ignore_bootid.">>/live-boot.log
56 + if [ -n "$BOOTID" ] && ! [ -r "${path}/conf/bootid.txt" ] ; then
57 + echo " * Warning: bootid=... specified but no bootid.txt found on currently requested device.">>/live-boot.log
61 + [ -r "${path}/conf/bootid.txt" ] || return 0
63 + bootid_conf=$(cat "${path}/conf/bootid.txt")
65 + if [ -z "$BOOTID" -a -z "$IGNORE_BOOTID" ]
67 + echo " * Warning: bootid.txt found but ignore_bootid / bootid=.. bootoption missing...">>/live-boot.log
71 + if [ "$BOOTID" = "$bootid_conf" ]
73 + echo " * Successfully verified /conf/bootid.txt from ISO, continuing... ">>/live-boot.log
75 + echo " * Warning: BOOTID of ISO does not match. Retrying and continuing search...">>/live-boot.log
85 if [ "${IGNORE_UUID}" ] || [ ! -e /conf/uuid.conf ]
89 if is_live_path ${mountpoint} && \
90 - ([ "${skip_uuid_check}" ] || matches_uuid ${mountpoint})
91 + ([ "${skip_uuid_check}" ] || grml_match_bootid ${mountpoint})
95 @@ -1881,19 +1927,6 @@
99 - elif [ "${fstype}" = "squashfs" -o \
100 - "${fstype}" = "btrfs" -o \
101 - "${fstype}" = "ext2" -o \
102 - "${fstype}" = "ext3" -o \
103 - "${fstype}" = "ext4" -o \
104 - "${fstype}" = "jffs2" ]
106 - # This is an ugly hack situation, the block device has
107 - # an image directly on it. It's hopefully
108 - # live-boot, so take it and run with it.
109 - ln -s "${devname}" "${devname}.${fstype}"
110 - echo "${devname}.${fstype}"