{
case "${1}" in
*.squashfs|*.ext2|*.ext3|*.jffs2)
- echo $(setup_loop "${1}" "loop" "/sys/block/loop*" '0' "${LIVE_MEDIA_ENCRYPTION}")
+ echo $(setup_loop "${1}" "loop" "/sys/block/loop*" '0' "${LIVE_MEDIA_ENCRYPTION}" "${2}")
;;
*.dir)
return 1
}
-is_supported_fs ()
-{
- # FIXME: do something better like the scan of supported filesystems
- fstype="${1}"
-
- case ${fstype} in
- vfat|iso9660|udf|ext2|ext3|ntfs|jffs2)
- return 0
- ;;
- esac
-
- return 1
-}
-
copy_live_to ()
{
copyfrom="${1}"
cd "${copyto}"
tar zxf "${copyfrom}/${LIVE_MEDIA_PATH}/$(basename ${FETCH})"
rm -f "${copyfrom}/${LIVE_MEDIA_PATH}/$(basename ${FETCH})"
- mount -r --move "${copyto}" "${rootmnt}"
+ mount -r -o move "${copyto}" "${rootmnt}"
cd "${OLDPWD}"
else
if [ -n "${MODULETORAMFILE}" ]
livefs_root
umount ${copyfrom}
- mount -r --move ${copyto} ${copyfrom}
+ mount -r -o move ${copyto} ${copyfrom}
fi
rmdir ${copyto}
rofslist="${image} ${rofslist}"
elif [ -f "${image}" ]
then
- backdev=$(get_backing_device "${image}")
+ backdev=$(get_backing_device "${image}" "-r")
fstype=$(get_fstype "${backdev}")
if [ "${fstype}" = "unknown" ]
;;
*)
- mount --move "${d}" "${rootmnt}/live/${d##*/}"
+ mount -o move "${d}" "${rootmnt}/live/${d##*/}"
;;
esac
done
devname="${loopdevname}"
fi
+ if [ -d "${devname}" ]
+ then
+ mount -o bind "${devname}" $mountpoint || continue
+
+ if is_live_path $mountpoint
+ then
+ echo $mountpoint
+ return 0
+ else
+ umount $mountpoint
+ fi
+ fi
+
fstype=$(get_fstype "${devname}")
if is_supported_fs ${fstype}
fi
# or do the scan of block devices
- for sysblock in $(echo /sys/block/* | tr ' ' '\n' | grep -v loop | grep -v ram | grep -v 'dm-')
+ for sysblock in $(echo /sys/block/* | tr ' ' '\n' | grep -v loop | grep -v ram | grep -v 'dm-' | grep -v fd )
do
devname=$(sys2dev "${sysblock}")
fstype=$(get_fstype "${devname}")