Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Mar 2010 12:02:44 +0000 (UTC)
From:      Jaakko Heinonen <jh@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r205121 - head/etc/rc.d
Message-ID:  <201003131202.o2DC2icf013359@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jh
Date: Sat Mar 13 12:02:44 2010
New Revision: 205121
URL: http://svn.freebsd.org/changeset/base/205121

Log:
  Use an unique directory name instead of hardcoded /tmp/.diskless.
  A malicious user could create a file named /tmp/.diskless and cause
  the script to misbehave.
  
  PR:		conf/141258
  Reported by:	Jon Passki
  MFC after:	1 week

Modified:
  head/etc/rc.d/tmp

Modified: head/etc/rc.d/tmp
==============================================================================
--- head/etc/rc.d/tmp	Sat Mar 13 11:51:18 2010	(r205120)
+++ head/etc/rc.d/tmp	Sat Mar 13 12:02:44 2010	(r205121)
@@ -51,8 +51,8 @@ case "${tmpmfs}" in
 [Nn][Oo])
 	;;
 *)
-	if /bin/mkdir -p /tmp/.diskless 2> /dev/null; then
-		rmdir /tmp/.diskless
+	if _tmpdir=$(mktemp -d -q /tmp/.diskless.XXXXXX); then
+		rmdir ${_tmpdir}
 	else
 		if [ -h /tmp ]; then
 			echo "*** /tmp is a symlink to a non-writable area!"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201003131202.o2DC2icf013359>