Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e4b41fb9 authored by Sachin Prabhu's avatar Sachin Prabhu Committed by Steve French
Browse files

Fix UNC parsing on mount



The code cleanup of cifs_parse_mount_options resulted in a new bug being
introduced in the parsing of the UNC. This results in vol->UNC being
modified before vol->UNC was allocated.

Reported-by: default avatarSteve French <smfrench@gmail.com>
Signed-off-by: default avatarSachin Prabhu <sprabhu@redhat.com>
Signed-off-by: default avatarSteve French <sfrench@us.ibm.com>
parent 10238074
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -1648,6 +1648,13 @@ cifs_parse_mount_options(const char *mountdata, const char *devname,
				goto cifs_parse_mount_err;
			}

			vol->UNC = kmalloc(temp_len+1, GFP_KERNEL);
			if (vol->UNC == NULL) {
				printk(KERN_WARNING "CIFS: no memory for UNC\n");
				goto cifs_parse_mount_err;
			}
			strcpy(vol->UNC, string);

			if (strncmp(string, "//", 2) == 0) {
				vol->UNC[0] = '\\';
				vol->UNC[1] = '\\';
@@ -1657,13 +1664,6 @@ cifs_parse_mount_options(const char *mountdata, const char *devname,
				goto cifs_parse_mount_err;
			}

			vol->UNC = kmalloc(temp_len+1, GFP_KERNEL);
			if (vol->UNC == NULL) {
				printk(KERN_WARNING "CIFS: no memory "
						    "for UNC\n");
				goto cifs_parse_mount_err;
			}
			strcpy(vol->UNC, string);
			break;
		case Opt_domain:
			string = match_strdup(args);