mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-10 23:29:46 +00:00
cifs: don't leak -ENOMEM in smb2_open_file()
A NULL error response might be a valid case where smb2_reconnect() failed to reconnect the session and tcon due to a disconnected server prior to issuing the I/O operation, so don't leak -ENOMEM to userspace on such occasions. Fixes: 76894f3e2f71 ("cifs: improve symlink handling for smb2+") Signed-off-by: Paulo Alcantara (SUSE) <pc@cjr.nz> Signed-off-by: Steve French <stfrench@microsoft.com>
This commit is contained in:
parent
7ad54b98fc
commit
f60ffa662d
@ -122,8 +122,8 @@ int smb2_open_file(const unsigned int xid, struct cifs_open_parms *oparms, __u32
|
||||
struct smb2_hdr *hdr = err_iov.iov_base;
|
||||
|
||||
if (unlikely(!err_iov.iov_base || err_buftype == CIFS_NO_BUFFER))
|
||||
rc = -ENOMEM;
|
||||
else if (hdr->Status == STATUS_STOPPED_ON_SYMLINK) {
|
||||
goto out;
|
||||
if (hdr->Status == STATUS_STOPPED_ON_SYMLINK) {
|
||||
rc = smb2_parse_symlink_response(oparms->cifs_sb, &err_iov,
|
||||
&data->symlink_target);
|
||||
if (!rc) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user