diff options
author | Daniel Baumann <daniel@debian.org> | 2007-11-14 09:55:50 +0100 |
---|---|---|
committer | Daniel Baumann <daniel@debian.org> | 2011-03-09 18:22:29 +0100 |
commit | c6236a0794c598d82aa470ca7b358bd1d0986aa1 (patch) | |
tree | 99362671c4e5af013d79e3757022b52b6999c9f5 | |
parent | b5dc2031264b83c837451f3c09ab1cbbc4cd6047 (diff) | |
download | vyos-live-build-c6236a0794c598d82aa470ca7b358bd1d0986aa1.tar.gz vyos-live-build-c6236a0794c598d82aa470ca7b358bd1d0986aa1.zip |
Moving lh_losetup into an internal function, avoiding helper failure with return value due to new trap.
-rwxr-xr-x | functions/losetup.sh | 37 | ||||
-rwxr-xr-x | helpers/lh_binary_usb-hdd | 4 | ||||
-rwxr-xr-x | helpers/lh_losetup | 58 | ||||
-rwxr-xr-x | helpers/lh_source_usb-hdd | 4 | ||||
-rw-r--r-- | manpages/live-helper.en.7 | 2 |
5 files changed, 41 insertions, 64 deletions
diff --git a/functions/losetup.sh b/functions/losetup.sh new file mode 100755 index 000000000..4ca1d5fe1 --- /dev/null +++ b/functions/losetup.sh @@ -0,0 +1,37 @@ +#!/bin/sh + +# losetup - wrapper around losetup +# Copyright (C) 2006-2007 Daniel Baumann <daniel@debian.org> +# +# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING. +# This is free software, and you are welcome to redistribute it +# under certain conditions; see COPYING for details. + +set -e + +Losetup () +{ + DEVICE="${1}" + FILE="${2}" + PARTITION="${3:=1}" + + ${LH_ROOT_COMMAND} ${LH_LOSETUP} "${DEVICE}" "${FILE}" + FDISK_OUT="$(LH_FDISK -l -u ${DEVICE} 2>&1)" + ${LH_ROOT_COMMAND} ${LH_LOSETUP} -d "${DEVICE}" + + LOOPDEVICE="$(echo ${DEVICE}p${PARTITION})" + + if [ "${PARTITION}" = "0" ] + then + Echo_message "Mounting ${DEVICE} with offset 0" + + ${LH_ROOT_COMMAND} ${LH_LOSETUP} "${DEVICE}" "${FILE}" + else + CYLINDERS="$(echo "$FDISK_OUT" | sed -ne "s_^$LOOPDEVICE[ *]*\([0-9]*\).*_\1_p")" + OFFSET="$(expr ${CYLINDERS} '*' 512)" + + Echo_message "Mounting ${DEVICE} with offset ${OFFSET}" + + ${LH_ROOT_COMMAND} ${LH_LOSETUP} -o "${OFFSET}" "${DEVICE}" "${FILE}" + fi +} diff --git a/helpers/lh_binary_usb-hdd b/helpers/lh_binary_usb-hdd index 9ac66b883..f4d0945d8 100755 --- a/helpers/lh_binary_usb-hdd +++ b/helpers/lh_binary_usb-hdd @@ -94,7 +94,7 @@ then fi echo "!!! The following error/warning messages can be ignored !!!" -lh_losetup $FREELO chroot/binary.img 0 +Losetup $FREELO chroot/binary.img 0 case "${LH_CHROOT_BUILD}" in enabled) @@ -125,7 +125,7 @@ esac ${LH_LOSETUP} -d ${FREELO} FREELO="$(${LH_LOSETUP} -f)" -lh_losetup $FREELO chroot/binary.img 1 +Losetup $FREELO chroot/binary.img 1 case "${LH_CHROOT_BUILD}" in enabled) diff --git a/helpers/lh_losetup b/helpers/lh_losetup deleted file mode 100755 index f3b6720a5..000000000 --- a/helpers/lh_losetup +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/sh - -# lh_losetup - wrapper around losetup -# Copyright (C) 2006-2007 Daniel Baumann <daniel@debian.org> -# -# live-helper comes with ABSOLUTELY NO WARRANTY; for details see COPYING. -# This is free software, and you are welcome to redistribute it -# under certain conditions; see COPYING for details. - -set -e - -# Including common functions -LH_BASE="${LH_BASE:-/usr/share/live-helper}" - -for FUNCTION in "${LH_BASE}"/functions/*.sh -do - . "${FUNCTION}" -done - -# Setting static variables -DESCRIPTION="wrapper around losetup" -HELP="" -USAGE="${PROGRAM} DEVICE FILE [PARTITION]" - -Arguments "${@}" - -# Reading configuration files -Read_conffile config/common -Read_conffile config/bootstrap -Read_conffile config/chroot -Read_conffile config/binary -Read_conffile config/source -Read_conffile "${LH_CONFIG}" -Set_defaults - -DEVICE="${1}" -FILE="${2}" -PARTITION="${3:=1}" - -${LH_ROOT_COMMAND} ${LH_LOSETUP} "${DEVICE}" "${FILE}" -FDISK_OUT="$(LH_FDISK -l -u ${DEVICE} 2>&1)" -${LH_ROOT_COMMAND} ${LH_LOSETUP} -d "${DEVICE}" - -LOOPDEVICE="$(echo ${DEVICE}p${PARTITION})" - -if [ "${PARTITION}" = "0" ] -then - Echo_message "Mounting ${DEVICE} with offset 0" - - ${LH_ROOT_COMMAND} ${LH_LOSETUP} "${DEVICE}" "${FILE}" -else - CYLINDERS="$(echo "$FDISK_OUT" | sed -ne "s_^$LOOPDEVICE[ *]*\([0-9]*\).*_\1_p")" - OFFSET="$(expr ${CYLINDERS} '*' 512)" - - Echo_message "Mounting ${DEVICE} with offset ${OFFSET}" - - ${LH_ROOT_COMMAND} ${LH_LOSETUP} -o "${OFFSET}" "${DEVICE}" "${FILE}" -fi diff --git a/helpers/lh_source_usb-hdd b/helpers/lh_source_usb-hdd index dfbf0227b..a94ac3df4 100755 --- a/helpers/lh_source_usb-hdd +++ b/helpers/lh_source_usb-hdd @@ -84,13 +84,13 @@ then fi echo "!!! The following error/warning messages can be ignored !!!" -lh_losetup $FREELO source.img 0 +Losetup $FREELO source.img 0 Chroot "parted -s ${FREELO} mklabel msdos" || true Chroot "parted -s ${FREELO} mkpartfs primary fat16 0.0 100%" || true Chroot "parted -s ${FREELO} set 1 lba off" || true ${LH_LOSETUP} -d ${FREELO} -lh_losetup $FREELO source.img 1 +Losetup $FREELO source.img 1 Chroot " mkfs.vfat -F 16 -n DEBIAN_LIVE ${FREELO}" mkdir -p source.tmp ${LH_ROOT_COMMAND} mount ${FREELO} source.tmp diff --git a/manpages/live-helper.en.7 b/manpages/live-helper.en.7 index 05da48ae3..a1ca44873 100644 --- a/manpages/live-helper.en.7 +++ b/manpages/live-helper.en.7 @@ -81,8 +81,6 @@ meta\-helper for lh_chroot_* clean up build directories .IP "\fIlh_config\fR(1)" 4 create configuration directory -.IP "\fIlh_losetup\fR(1)" 4 -wrapper for losetup .IP "\fIlh_source\fR(1)" 4 meta\-helper for lh_source_* .IP "\fIlh_source_debian\fR(1)" 4 |