Skip to content

Commit

Permalink
cifs: always zero out smb_vol before parsing options
Browse files Browse the repository at this point in the history
Currently, the code relies on the callers to do that and they all do,
but this will ensure that it's always done.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
  • Loading branch information
Jeff Layton authored and Steve French committed Dec 5, 2012
1 parent 9fa114f commit 6ee9542
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions fs/cifs/connect.c
Original file line number Diff line number Diff line change
Expand Up @@ -1122,6 +1122,9 @@ cifs_parse_mount_options(const char *mountdata, const char *devname,
separator[1] = 0;
delim = separator[0];

/* ensure we always start with zeroed-out smb_vol */
memset(vol, 0, sizeof(*vol));

/*
* does not have to be perfect mapping since field is
* informational, only used for servers that do not support
Expand Down Expand Up @@ -3314,7 +3317,6 @@ expand_dfs_referral(const unsigned int xid, struct cifs_ses *ses,
mdata = NULL;
} else {
cleanup_volume_info_contents(volume_info);
memset(volume_info, '\0', sizeof(*volume_info));
rc = cifs_setup_volume_info(volume_info, mdata,
fake_devname);
}
Expand All @@ -3336,7 +3338,6 @@ cifs_setup_volume_info(struct smb_vol *volume_info, char *mount_data,
if (cifs_parse_mount_options(mount_data, devname, volume_info))
return -EINVAL;


if (volume_info->nullauth) {
cFYI(1, "Anonymous login");
kfree(volume_info->username);
Expand Down Expand Up @@ -3373,7 +3374,7 @@ cifs_get_volume_info(char *mount_data, const char *devname)
int rc;
struct smb_vol *volume_info;

volume_info = kzalloc(sizeof(struct smb_vol), GFP_KERNEL);
volume_info = kmalloc(sizeof(struct smb_vol), GFP_KERNEL);
if (!volume_info)
return ERR_PTR(-ENOMEM);

Expand Down

0 comments on commit 6ee9542

Please sign in to comment.