From 938d7951ab81c28e07c3fbe550975eb494a55d99 Mon Sep 17 00:00:00 2001 From: Nick Craig-Wood Date: Tue, 9 May 2017 14:24:07 +0100 Subject: [PATCH] cmount: allow extra options to pass to fuse with -o --- cmd/cmount/mount.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/cmd/cmount/mount.go b/cmd/cmount/mount.go index 61fc2dc02..47ede1316 100644 --- a/cmd/cmount/mount.go +++ b/cmd/cmount/mount.go @@ -44,8 +44,9 @@ var ( gid = ^uint32(0) // overriden for non windows in mount_unix.go // foreground = false // default permissions for directories - modified by umask in Mount - dirPerms = os.FileMode(0777) - filePerms = os.FileMode(0666) + dirPerms = os.FileMode(0777) + filePerms = os.FileMode(0666) + extraOptions *[]string ) func init() { @@ -64,6 +65,7 @@ func init() { commandDefintion.Flags().BoolVarP(&writebackCache, "write-back-cache", "", writebackCache, "Makes kernel buffer writes before sending them to rclone. Without this, writethrough caching is used.") commandDefintion.Flags().VarP(&maxReadAhead, "max-read-ahead", "", "The number of bytes that can be prefetched for sequential reads.") commandDefintion.Flags().IntVarP(&umask, "umask", "", umask, "Override the permission bits set by the filesystem.") + extraOptions = commandDefintion.Flags().StringArrayP("option", "o", []string{}, "Option for libfuse/WinFsp. Repeat if required.") //commandDefintion.Flags().BoolVarP(&foreground, "foreground", "", foreground, "Do not detach.") } @@ -204,6 +206,9 @@ func mountOptions(device string, mountpoint string) (options []string) { if writebackCache { // FIXME? options = append(options, "-o", WritebackCache()) } + for _, option := range *extraOptions { + options = append(options, "-o", option) + } return options }