diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/mount.c | 6 | ||||
-rw-r--r-- | lib/mount_util.c | 4 |
2 files changed, 6 insertions, 4 deletions
diff --git a/lib/mount.c b/lib/mount.c index d71e6fc..f98a8bb 100644 --- a/lib/mount.c +++ b/lib/mount.c @@ -209,6 +209,12 @@ static int fuse_mount_opt_proc(void *data, const char *arg, int key, case KEY_MTAB_OPT: return fuse_opt_add_opt(&mo->mtab_opts, arg); + + /* Third party options like 'x-gvfs-notrash' */ + case FUSE_OPT_KEY_OPT: + return (strncmp("x-", arg, 2) == 0) ? + fuse_opt_add_opt(&mo->mtab_opts, arg) : + 1; } /* Pass through unknown options */ diff --git a/lib/mount_util.c b/lib/mount_util.c index 8027a2e..dd32276 100644 --- a/lib/mount_util.c +++ b/lib/mount_util.c @@ -54,7 +54,6 @@ static int mtab_needs_update(const char *mnt) * Skip mtab update if /etc/mtab: * * - doesn't exist, - * - is a symlink, * - is on a read-only filesystem. */ res = lstat(_PATH_MOUNTED, &stbuf); @@ -65,9 +64,6 @@ static int mtab_needs_update(const char *mnt) uid_t ruid; int err; - if (S_ISLNK(stbuf.st_mode)) - return 0; - ruid = getuid(); if (ruid != 0) setreuid(0, -1); |