Commit 4b952a9b authored by Steve French's avatar Steve French

[CIFS] Allow null user connections

Some servers are configured to only allow null user mounts for
guest access.  Allow nul user (anonymous) mounts e.g.
	mount -t cifs //server/share /mnt -o username=
Signed-off-by: default avatarSteve French <sfrench@us.ibm.com>
parent 7ca85ba7
Version 1.46 Version 1.46
------------ ------------
Support deep tree mounts. Better support OS/2, Win9x (DOS) time stamps. Support deep tree mounts. Better support OS/2, Win9x (DOS) time stamps.
Allow null user to be specified on mount ("username="). Do not return
EINVAL on readdir when filldir fails due to overwritten blocksize
(fixes FC problem)
Version 1.45 Version 1.45
------------ ------------
......
...@@ -822,10 +822,13 @@ cifs_parse_mount_options(char *options, const char *devname,struct smb_vol *vol) ...@@ -822,10 +822,13 @@ cifs_parse_mount_options(char *options, const char *devname,struct smb_vol *vol)
} else if (strnicmp(data, "nouser_xattr",12) == 0) { } else if (strnicmp(data, "nouser_xattr",12) == 0) {
vol->no_xattr = 1; vol->no_xattr = 1;
} else if (strnicmp(data, "user", 4) == 0) { } else if (strnicmp(data, "user", 4) == 0) {
if (!value || !*value) { if (!value) {
printk(KERN_WARNING printk(KERN_WARNING
"CIFS: invalid or missing username\n"); "CIFS: invalid or missing username\n");
return 1; /* needs_arg; */ return 1; /* needs_arg; */
} else if(!*value) {
/* null user, ie anonymous, authentication */
vol->nullauth = 1;
} }
if (strnlen(value, 200) < 200) { if (strnlen(value, 200) < 200) {
vol->username = value; vol->username = value;
...@@ -1642,6 +1645,8 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb, ...@@ -1642,6 +1645,8 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
/* BB fixme parse for domain name here */ /* BB fixme parse for domain name here */
cFYI(1, ("Username: %s ", volume_info.username)); cFYI(1, ("Username: %s ", volume_info.username));
} else if (volume_info.nullauth) {
cFYI(1,("null user"));
} else { } else {
cifserror("No username specified"); cifserror("No username specified");
/* In userspace mount helper we can get user name from alternate /* In userspace mount helper we can get user name from alternate
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment