aboutsummaryrefslogtreecommitdiffstats
path: root/util/mount.fuse
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2006-12-10 00:13:53 +0000
committerMiklos Szeredi <miklos@szeredi.hu>2006-12-10 00:13:53 +0000
commita2ff24b600d87995e2d3b5bfdcb04ed4e06b33bd (patch)
treed7579f7b67f776ea1da71875a159dde8538823f2 /util/mount.fuse
parent2ad6a4bc54f7bf43c08224e8f2d41c1812cbbe37 (diff)
downloadlibfuse-a2ff24b600d87995e2d3b5bfdcb04ed4e06b33bd.tar.gz
mounting fixes
Diffstat (limited to 'util/mount.fuse')
-rw-r--r--util/mount.fuse10
1 files changed, 8 insertions, 2 deletions
diff --git a/util/mount.fuse b/util/mount.fuse
index 0b111db..2a74449 100644
--- a/util/mount.fuse
+++ b/util/mount.fuse
@@ -45,8 +45,14 @@ MOUNTPOINT="$2"
shift
shift
-ignore_opts='\(user\|nouser\|users\|auto\|noauto\|_netdev\)'
+eval `echo $@ | sed -n "s/\([^,]*,\)*setuid=\([^,]*\).*/SETUID=\2/p"`
+
+ignore_opts='\(user\|nouser\|users\|auto\|noauto\|_netdev\|setuid=[^,]*\)'
OPTIONS=`echo $@ | sed "s/,${ignore_opts}\|${ignore_opts},//g"`
-${FSTYPE} ${MOUNTPATH} ${MOUNTPOINT} ${OPTIONS}
+if test -z "$SETUID"; then
+ ${FSTYPE} ${MOUNTPATH} ${MOUNTPOINT} ${OPTIONS}
+else
+ su - "$SETUID" -c "${FSTYPE} ${MOUNTPATH} ${MOUNTPOINT} ${OPTIONS}"
+fi