From: Brian Behlendorf Date: Tue, 14 Jun 2011 23:25:29 +0000 (-0700) Subject: Handle /etc/mtab -> /proc/mounts symlink X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=commitdiff_plain;h=e130330a874f4dec6628c094455180d4113c6aa1;hp=2e08aedba456dccddf6418908a55014e56cad226;p=zfs.git Handle /etc/mtab -> /proc/mounts symlink Under Fedora 15 /etc/mtab is now a symlink to /proc/mounts by default. When /etc/mtab is a symlink the mount.zfs helper should not update it. There was code in place to handle this case but it used stat() which traverses the link and then issues the stat on /proc/mounts. We need to use lstat() to prevent the link traversal and instead stat /etc/mtab. Closes #270 --- diff --git a/cmd/mount_zfs/mount_zfs.c b/cmd/mount_zfs/mount_zfs.c index e97b2b8..7173f56 100644 --- a/cmd/mount_zfs/mount_zfs.c +++ b/cmd/mount_zfs/mount_zfs.c @@ -252,7 +252,7 @@ mtab_is_writeable(void) struct stat st; int error, fd; - error = stat(MNTTAB, &st); + error = lstat(MNTTAB, &st); if (error || S_ISLNK(st.st_mode)) return (0);