mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 10:31:46 +09:00
ksmbd: fix wrong error response status by using set_smb2_rsp_status()
[ Upstream commitbe0f89d441] set_smb2_rsp_status() after __process_request() sets the wrong error status. This patch resets all iov vectors and sets the error status on clean one. Fixes:e2b76ab8b5("ksmbd: add support for read compound") Signed-off-by: Namjae Jeon <linkinjeon@kernel.org> Signed-off-by: Steve French <stfrench@microsoft.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
7b58ee8d0b
commit
943cebf9ea
@@ -230,11 +230,12 @@ void set_smb2_rsp_status(struct ksmbd_work *work, __le32 err)
|
|||||||
{
|
{
|
||||||
struct smb2_hdr *rsp_hdr;
|
struct smb2_hdr *rsp_hdr;
|
||||||
|
|
||||||
if (work->next_smb2_rcv_hdr_off)
|
rsp_hdr = smb2_get_msg(work->response_buf);
|
||||||
rsp_hdr = ksmbd_resp_buf_next(work);
|
|
||||||
else
|
|
||||||
rsp_hdr = smb2_get_msg(work->response_buf);
|
|
||||||
rsp_hdr->Status = err;
|
rsp_hdr->Status = err;
|
||||||
|
|
||||||
|
work->iov_idx = 0;
|
||||||
|
work->iov_cnt = 0;
|
||||||
|
work->next_smb2_rcv_hdr_off = 0;
|
||||||
smb2_set_err_rsp(work);
|
smb2_set_err_rsp(work);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user