summaryrefslogtreecommitdiffstats
path: root/contrib/smbfs
diff options
context:
space:
mode:
authortrasz <trasz@FreeBSD.org>2014-09-08 10:57:43 +0000
committertrasz <trasz@FreeBSD.org>2014-09-08 10:57:43 +0000
commit4826dbd2da63d3a24699446af898476913e861f0 (patch)
treee80dc494de8cf34e29072b22d8a6d4b909a544ab /contrib/smbfs
parent6224f5c9f14f60cc6203ad68f112f57f4a9eedbf (diff)
downloadFreeBSD-src-4826dbd2da63d3a24699446af898476913e861f0.zip
FreeBSD-src-4826dbd2da63d3a24699446af898476913e861f0.tar.gz
Make mount_smbfs(8) preserve the "automounted" mount flag.
The issue here is that we have to pass this flag as a string, in iov, because it doesn't fit in mntflags, which is an int. MFC after: 2 weeks Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'contrib/smbfs')
-rw-r--r--contrib/smbfs/mount_smbfs/mount_smbfs.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/contrib/smbfs/mount_smbfs/mount_smbfs.c b/contrib/smbfs/mount_smbfs/mount_smbfs.c
index 8f159ce..99f1cee 100644
--- a/contrib/smbfs/mount_smbfs/mount_smbfs.c
+++ b/contrib/smbfs/mount_smbfs/mount_smbfs.c
@@ -81,7 +81,7 @@ main(int argc, char *argv[])
#else
struct xvfsconf vfc;
#endif
- char *next;
+ char *next, *p, *val;
int opt, error, mntflags, caseopt, fd;
uid_t uid;
gid_t gid;
@@ -194,6 +194,13 @@ main(int argc, char *argv[])
};
case 'o':
getmntopts(optarg, mopts, &mntflags, 0);
+ p = strchr(optarg, '=');
+ val = NULL;
+ if (p != NULL) {
+ *p = '\0';
+ val = p + 1;
+ }
+ build_iovec(&iov, &iovlen, optarg, val, (size_t)-1);
break;
case 'c':
switch (optarg[0]) {
OpenPOWER on IntegriCloud