From 38ec147a181cc2b5d160d98ee20bb9aacc5de9eb Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Sun, 20 May 2007 12:32:41 +0000 Subject: mount: fix mounting of symlinks (mount from util-linux allows that) --- util-linux/mount.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'util-linux') diff --git a/util-linux/mount.c b/util-linux/mount.c index b76c38ab1..030ea662a 100644 --- a/util-linux/mount.c +++ b/util-linux/mount.c @@ -1453,8 +1453,10 @@ static int singlemount(struct mntent *mp, int ignore_busy) // Look at the file. (Not found isn't a failure for remount, or for // a synthetic filesystem like proc or sysfs.) + // (We use stat, not lstat, in order to allow + // mount symlink_to_file_or_blkdev dir) - if (!lstat(mp->mnt_fsname, &st) + if (!stat(mp->mnt_fsname, &st) && !(vfsflags & (MS_REMOUNT | MS_BIND | MS_MOVE)) ) { // Do we need to allocate a loopback device for it? -- cgit v1.2.3