summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve French <stevef@smf-t60p.smfdom>2008-12-05 08:09:08 -0600
committerSteve French <stevef@smf-t60p.smfdom>2008-12-05 08:09:08 -0600
commit420a9071e1227435aada2a52c83ee44fda7180ed (patch)
treecd2ac2fd487d61cb061d216625b9b0c07006d68b
parent8be38511a3d87f4debbdc3a827b6ca898ccdde02 (diff)
downloadsamba-420a9071e1227435aada2a52c83ee44fda7180ed.tar.gz
samba-420a9071e1227435aada2a52c83ee44fda7180ed.tar.bz2
samba-420a9071e1227435aada2a52c83ee44fda7180ed.zip
mount.cifs: if mount user not specified use USER environment variable
smbfs also would use the USER environment variable if the user was not specified on the mount command and no credential file specified, and mount.cifs man page says that we will use this environment variable (in most cases this will not cause a behavior change, because we were doing getuid of the current process which will usually be the same name). Fixes Samba bug #5934 Acked-by: Jeff Layton
-rw-r--r--source3/client/mount.cifs.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/source3/client/mount.cifs.c b/source3/client/mount.cifs.c
index da2f98bff8..0bc61ae38f 100644
--- a/source3/client/mount.cifs.c
+++ b/source3/client/mount.cifs.c
@@ -1293,7 +1293,13 @@ int main(int argc, char ** argv)
}
if(got_user == 0) {
- user_name = getusername();
+ /* Note that the password will not be retrieved from the
+ USER env variable (ie user%password form) as there is
+ already a PASSWD environment varaible */
+ if (getenv("USER"))
+ user_name = strdup(getenv("USER"));
+ if (user_name == NULL)
+ user_name = getusername();
got_user = 1;
}