summaryrefslogtreecommitdiff
path: root/fs/smb/server/server.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2023-09-29 16:51:38 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2023-09-29 16:51:38 -0700
commit9f3ebbef746f89f860a90ced99a359202ea86fde (patch)
treee34a3cdc86cc657b1f424c8b427ed35551dbce08 /fs/smb/server/server.c
parent14c06b913d4a11b50351ef5bcb3f112247f647f3 (diff)
parent73f949ea87c7d697210653501ca21efe57295327 (diff)
downloadlinux-9f3ebbef746f89f860a90ced99a359202ea86fde.tar.gz
linux-9f3ebbef746f89f860a90ced99a359202ea86fde.tar.bz2
linux-9f3ebbef746f89f860a90ced99a359202ea86fde.zip
Merge tag '6.6-rc3-ksmbd-server-fixes' of git://git.samba.org/ksmbd
Pull smb server fixes from Steve French: "Two SMB3 server fixes for null pointer dereferences: - invalid SMB3 request case (fixes issue found in testing the read compound patch) - iovec error case in response processing" * tag '6.6-rc3-ksmbd-server-fixes' of git://git.samba.org/ksmbd: ksmbd: check iov vector index in ksmbd_conn_write() ksmbd: return invalid parameter error response if smb2 request is invalid
Diffstat (limited to 'fs/smb/server/server.c')
-rw-r--r--fs/smb/server/server.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/smb/server/server.c b/fs/smb/server/server.c
index 5ab2f52f9b35..32347fec33c4 100644
--- a/fs/smb/server/server.c
+++ b/fs/smb/server/server.c
@@ -115,8 +115,10 @@ static int __process_request(struct ksmbd_work *work, struct ksmbd_conn *conn,
if (check_conn_state(work))
return SERVER_HANDLER_CONTINUE;
- if (ksmbd_verify_smb_message(work))
+ if (ksmbd_verify_smb_message(work)) {
+ conn->ops->set_rsp_status(work, STATUS_INVALID_PARAMETER);
return SERVER_HANDLER_ABORT;
+ }
command = conn->ops->get_cmd_val(work);
*cmd = command;