summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
authorShirish Pargaonkar <shirishpargaonkar@gmail.com>2009-02-06 08:13:38 -0500
committerJeff Layton <jlayton@redhat.com>2009-02-06 08:13:38 -0500
commitea8bd81b6eaf2d2ca005d30c1580e7a45d3b3c5d (patch)
tree6204c95012671468ee7d3c7e486f1d75eb02a7e5 /source3
parent2170a810ed16043c6292eb3e39437a8cf96a8be6 (diff)
downloadsamba-ea8bd81b6eaf2d2ca005d30c1580e7a45d3b3c5d.tar.gz
samba-ea8bd81b6eaf2d2ca005d30c1580e7a45d3b3c5d.tar.bz2
samba-ea8bd81b6eaf2d2ca005d30c1580e7a45d3b3c5d.zip
mount.cifs: add fakemount (-f) and nomtab (-n) flags to mount.cifs
...so that these options work correctly when passed in by mount(8).
Diffstat (limited to 'source3')
-rw-r--r--source3/client/mount.cifs.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/source3/client/mount.cifs.c b/source3/client/mount.cifs.c
index 9f4d1d3fd0..df5be846f1 100644
--- a/source3/client/mount.cifs.c
+++ b/source3/client/mount.cifs.c
@@ -85,6 +85,7 @@
const char *thisprogram;
int verboseflag = 0;
+int fakemnt = 0;
static int got_password = 0;
static int got_user = 0;
static int got_domain = 0;
@@ -1103,8 +1104,8 @@ int main(int argc, char ** argv)
mount_cifs_usage ();
exit(EX_USAGE);
case 'n':
- ++nomtab;
- break;
+ ++nomtab;
+ break;
case 'b':
#ifdef MS_BIND
flags |= MS_BIND;
@@ -1209,6 +1210,9 @@ int main(int argc, char ** argv)
break;
case 't':
break;
+ case 'f':
+ ++fakemnt;
+ break;
default:
printf("unknown mount option %c\n",c);
mount_cifs_usage();
@@ -1410,7 +1414,7 @@ mount_retry:
}
}
- if (mount(dev_name, mountpoint, "cifs", flags, options)) {
+ if (!fakemnt && mount(dev_name, mountpoint, "cifs", flags, options)) {
switch (errno) {
case ECONNREFUSED:
case EHOSTUNREACH:
@@ -1440,6 +1444,8 @@ mount_retry:
goto mount_exit;
}
+ if (nomtab)
+ goto mount_exit;
atexit(unlock_mtab);
rc = lock_mtab();
if (rc) {