[SCM] live-boot branch, debian, updated. debian/3.0_a25-1-72-gfc7a680

Daniel Baumann daniel at debian.org
Thu Apr 5 06:21:41 UTC 2012


The following commit has been merged in the debian branch:
commit 880508024e177d800318827e109d603916050a15
Author: Tails developers <amnesia at boum.org>
Date:   Mon Feb 20 11:44:04 2012 +0100

    Don't allow . or .. in live.persist paths.
    
    Allowing it could cause serious breakage, and there's absolutely no
    need for it.

diff --git a/scripts/live-helpers b/scripts/live-helpers
index f13be57..26783f1 100644
--- a/scripts/live-helpers
+++ b/scripts/live-helpers
@@ -1281,10 +1281,15 @@ get_custom_mounts ()
 				dest="${source}"
 			fi
 
-			if echo ${dest} | grep -qe "^/\+$\|^/\+live\(/.*\)\?$"
+			if trim_path ${source} | grep -qe "^\(.*/\)\?\.\.\?\(/.*\)\?$"
 			then
-				# mounting on / or /live could cause trouble
-				log_warning_msg "Skipping unsafe custom mount on ${dest}"
+				log_warning_msg "Skipping unsafe custom mount with source ${source}: the source is a relative or absolute path w.r.t. the persistent media root and cannot use \".\" or \"..\""
+				continue
+			fi
+
+			if trim_path ${dest} | grep -q -e "^/$" -e "^/live\(/.*\)\?$" -e "^/\(.*/\)\?\.\.\?\(/.*\)\?$"
+			then
+				log_warning_msg "Skipping unsafe custom mount with desination ${dest}: the destination must be an absolute path using neither \".\" nor \"..\", and cannot be /live (or any sub-directory therein) or / (for the latter, use ${root_overlay_label}-type persistence instead)"
 				continue
 			fi
 
@@ -1481,6 +1486,6 @@ fix_home_rw_compatibility ()
 	if [ ! -r "${include_list}" ]
 	then
 		echo "# home-rw backwards compatibility:
-. /home" > "${include_list}"
+/ /home" > "${include_list}"
 	fi
 }

-- 
live-boot



More information about the debian-live-changes mailing list