aboutsummaryrefslogtreecommitdiffstats
path: root/lib/mount.c
diff options
context:
space:
mode:
authorMatthew <matthew@matthew-cash.com>2024-02-23 22:56:49 -0800
committerGitHub <noreply@github.com>2024-02-24 07:56:49 +0100
commit74b1df2e84e836a1710561f52075d51f20cd5c78 (patch)
treef1cdbbe566e18dc5d0ac86b237bf935c8de2acaa /lib/mount.c
parent402c8fff588120a7cf5922822904ce45f30612a8 (diff)
downloadlibfuse-74b1df2e84e836a1710561f52075d51f20cd5c78.tar.gz
Passthrough options starting with "x-" to mtab (#894)
This implements #651, tested with bindfs. "x-*" options are comments meant to be interpreted by userspace. #651 is about some 3rd party mount options like 'x-gvfs-notrash'. This also removes the test if /etc/mtab is a symlink. This test was added in commit 5f28cd15ab43c741f6d116be4d3a9aa5d82ab385 and the corresponding ChangeLog entry in this commit points to mount issues for read-only mtab. However, in all recent Linux distributions /etc/mtab is a symlink to /proc/self/mounts and never writable. In fact, util-linux 2.39 (libmount) entirely removed support for a writable mtab. At least since util-linux 2.19 (10-Feb-2011) /run/mount/utab is used as replacement for userspace mount entries..
Diffstat (limited to 'lib/mount.c')
-rw-r--r--lib/mount.c6
1 files changed, 6 insertions, 0 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 */