diff options
author | Cong Ding <dinggnu@gmail.com> | 2013-01-22 19:20:58 -0500 |
---|---|---|
committer | Steve French <smfrench@gmail.com> | 2013-01-22 23:58:16 -0600 |
commit | 10b8c7dff5d3633b69e77f57d404dab54ead3787 (patch) | |
tree | 6c8484b0f704014f3353ab1c2e66faab6e480b59 /fs/cifs | |
parent | e3e2775cedc9d6294b7bc7cbe9f59c62f9472871 (diff) | |
download | linux-10b8c7dff5d3633b69e77f57d404dab54ead3787.tar.gz linux-10b8c7dff5d3633b69e77f57d404dab54ead3787.tar.bz2 linux-10b8c7dff5d3633b69e77f57d404dab54ead3787.zip |
fs/cifs/cifs_dfs_ref.c: fix potential memory leakage
When it goes to error through line 144, the memory allocated to *devname is
not freed, and the caller doesn't free it either in line 250. So we free the
memroy of *devname in function cifs_compose_mount_options() when it goes to
error.
Signed-off-by: Cong Ding <dinggnu@gmail.com>
CC: stable <stable@kernel.org>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
Diffstat (limited to 'fs/cifs')
-rw-r--r-- | fs/cifs/cifs_dfs_ref.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/cifs/cifs_dfs_ref.c b/fs/cifs/cifs_dfs_ref.c index ce5cbd717bfc..210fce2df308 100644 --- a/fs/cifs/cifs_dfs_ref.c +++ b/fs/cifs/cifs_dfs_ref.c @@ -226,6 +226,8 @@ compose_mount_options_out: compose_mount_options_err: kfree(mountdata); mountdata = ERR_PTR(rc); + kfree(*devname); + *devname = NULL; goto compose_mount_options_out; } |