summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Unterwurzacher2017-01-26 22:13:57 +0100
committerJakob Unterwurzacher2017-01-26 22:13:57 +0100
commitde200aad72f8718041f345b68c3c77332f995861 (patch)
treecdc93580fb1db163ec6eb5dacb5b27d0d540104d
parent39eca53677abd0c397a884dd29ebc98ddfcbb270 (diff)
main: add "-fsname" option
As requested in https://github.com/rfjakob/gocryptfs/issues/73 .
-rw-r--r--Documentation/MANPAGE.md5
-rw-r--r--cli_args.go3
-rw-r--r--mount.go6
3 files changed, 12 insertions, 2 deletions
diff --git a/Documentation/MANPAGE.md b/Documentation/MANPAGE.md
index aa40922..9dd4a12 100644
--- a/Documentation/MANPAGE.md
+++ b/Documentation/MANPAGE.md
@@ -67,6 +67,11 @@ Options:
: Stay in the foreground instead of forking away. Implies "-nosyslog".
For compatability, "-f" is also accepted, but "-fg" is preferred.
+**-fsname string**
+: Override the filesystem name (first column in df -T). Can also be
+ passed as "-o fsname=" and is equivalent to libfuse's option of the
+ same name. By default, CIPHERDIR is used.
+
**-fusedebug**
: Enable fuse library debug output
diff --git a/cli_args.go b/cli_args.go
index 4d16570..89cbdd9 100644
--- a/cli_args.go
+++ b/cli_args.go
@@ -20,7 +20,7 @@ type argContainer struct {
longnames, allow_other, ro, reverse, aessiv, nonempty, raw64,
noprealloc bool
masterkey, mountpoint, cipherdir, cpuprofile, extpass,
- memprofile, ko, passfile, ctlsock string
+ memprofile, ko, passfile, ctlsock, fsname string
// Configuration file name override
config string
notifypid, scryptn int
@@ -118,6 +118,7 @@ func parseCliOpts() (args argContainer) {
flagSet.StringVar(&args.passfile, "passfile", "", "Read password from file")
flagSet.StringVar(&args.ko, "ko", "", "Pass additional options directly to the kernel, comma-separated list")
flagSet.StringVar(&args.ctlsock, "ctlsock", "", "Create control socket at specified path")
+ flagSet.StringVar(&args.fsname, "fsname", "", "Override the filesystem name")
flagSet.IntVar(&args.notifypid, "notifypid", 0, "Send USR1 to the specified process after "+
"successful mount - used internally for daemonization")
flagSet.IntVar(&args.scryptn, "scryptn", configfile.ScryptDefaultLogN, "scrypt cost parameter logN. "+
diff --git a/mount.go b/mount.go
index 0d70201..cd14dd9 100644
--- a/mount.go
+++ b/mount.go
@@ -243,7 +243,11 @@ func initFuseFrontend(key []byte, args *argContainer, confFile *configfile.ConfF
}
// Set values shown in "df -T" and friends
// First column, "Filesystem"
- mOpts.Options = append(mOpts.Options, "fsname="+args.cipherdir)
+ fsname := args.cipherdir
+ if args.fsname != "" {
+ fsname = args.fsname
+ }
+ mOpts.Options = append(mOpts.Options, "fsname="+fsname)
// Second column, "Type", will be shown as "fuse." + Name
mOpts.Name = "gocryptfs"
if args.reverse {