Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e84b38e5 authored by Amit Engel's avatar Amit Engel Committed by Greg Kroah-Hartman
Browse files

nvmet-tcp: fix header digest verification



[ Upstream commit 86aeda32b887cdaeb0f4b7bfc9971e36377181c7 ]

Pass the correct length to nvmet_tcp_verify_hdgst, which is the pdu
header length.  This fixes a wrong behaviour where header digest
verification passes although the digest is wrong.

Signed-off-by: default avatarAmit Engel <amit.engel@dell.com>
Reviewed-by: default avatarSagi Grimberg <sagi@grimberg.me>
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 2804181e
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -1020,7 +1020,7 @@ static int nvmet_tcp_try_recv_pdu(struct nvmet_tcp_queue *queue)
	}
	}


	if (queue->hdr_digest &&
	if (queue->hdr_digest &&
	    nvmet_tcp_verify_hdgst(queue, &queue->pdu, queue->offset)) {
	    nvmet_tcp_verify_hdgst(queue, &queue->pdu, hdr->hlen)) {
		nvmet_tcp_fatal_error(queue); /* fatal */
		nvmet_tcp_fatal_error(queue); /* fatal */
		return -EPROTO;
		return -EPROTO;
	}
	}