mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-18 09:44:18 +08:00
iscsi-target: Reject unsupported multi PDU text command sequence
This patch adds a check to reject text commands with F_BIT=0 || C_BIT=1, as multi PDU text command sequences are currently unsupported. This avoids the case where a text command received with F_BIT=0, was generating a text response with F_BIT=1 which is a protocol error according to RFC-3720 Section 10.11.1. Reported-by: Arshad Hussain <arshad.hussain@calsoftinc.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
parent
04d9cd1224
commit
122f8afcfb
@ -1948,6 +1948,13 @@ iscsit_setup_text_cmd(struct iscsi_conn *conn, struct iscsi_cmd *cmd,
|
|||||||
(unsigned char *)hdr);
|
(unsigned char *)hdr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!(hdr->flags & ISCSI_FLAG_CMD_FINAL) ||
|
||||||
|
(hdr->flags & ISCSI_FLAG_TEXT_CONTINUE)) {
|
||||||
|
pr_err("Multi sequence text commands currently not supported\n");
|
||||||
|
return iscsit_reject_cmd(cmd, ISCSI_REASON_CMD_NOT_SUPPORTED,
|
||||||
|
(unsigned char *)hdr);
|
||||||
|
}
|
||||||
|
|
||||||
pr_debug("Got Text Request: ITT: 0x%08x, CmdSN: 0x%08x,"
|
pr_debug("Got Text Request: ITT: 0x%08x, CmdSN: 0x%08x,"
|
||||||
" ExpStatSN: 0x%08x, Length: %u\n", hdr->itt, hdr->cmdsn,
|
" ExpStatSN: 0x%08x, Length: %u\n", hdr->itt, hdr->cmdsn,
|
||||||
hdr->exp_statsn, payload_length);
|
hdr->exp_statsn, payload_length);
|
||||||
|
Loading…
Reference in New Issue
Block a user