Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

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

+7 -4
+3
fs/smb/server/connection.c
··· 197 197 if (work->send_no_response) 198 198 return 0; 199 199 200 + if (!work->iov_idx) 201 + return -EINVAL; 202 + 200 203 ksmbd_conn_lock(conn); 201 204 sent = conn->transport->ops->writev(conn->transport, work->iov, 202 205 work->iov_cnt,
+3 -1
fs/smb/server/server.c
··· 115 115 if (check_conn_state(work)) 116 116 return SERVER_HANDLER_CONTINUE; 117 117 118 - if (ksmbd_verify_smb_message(work)) 118 + if (ksmbd_verify_smb_message(work)) { 119 + conn->ops->set_rsp_status(work, STATUS_INVALID_PARAMETER); 119 120 return SERVER_HANDLER_ABORT; 121 + } 120 122 121 123 command = conn->ops->get_cmd_val(work); 122 124 *cmd = command;
+1 -3
fs/smb/server/smb2misc.c
··· 440 440 441 441 validate_credit: 442 442 if ((work->conn->vals->capabilities & SMB2_GLOBAL_CAP_LARGE_MTU) && 443 - smb2_validate_credit_charge(work->conn, hdr)) { 444 - work->conn->ops->set_rsp_status(work, STATUS_INVALID_PARAMETER); 443 + smb2_validate_credit_charge(work->conn, hdr)) 445 444 return 1; 446 - } 447 445 448 446 return 0; 449 447 }