From be2ada6d0ed094c77040dc7e2d56599dd492d961 Mon Sep 17 00:00:00 2001 From: Chaitanya Kulkarni Date: Mon, 18 Jul 2022 16:12:33 -0700 Subject: [PATCH] nvmet-auth: fix return value check in auth receive nvmet_auth_challenge() return type is int and currently it uses status variable that is of type u16 in nvmet_execute_auth_receive(). Catch the return value of nvmet_auth_challenge() into int and set the NVME_SC_INTERNAL as status variable before we jump to error. Reported-by: Dan Carpenter Signed-off-by: Chaitanya Kulkarni Reviewed-by: Sagi Grimberg Reviewed-by: Hannes Reinecke Signed-off-by: Christoph Hellwig Signed-off-by: Jens Axboe --- drivers/nvme/target/fabrics-cmd-auth.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/nvme/target/fabrics-cmd-auth.c b/drivers/nvme/target/fabrics-cmd-auth.c index b785a8e27fa0..c851814d6cb0 100644 --- a/drivers/nvme/target/fabrics-cmd-auth.c +++ b/drivers/nvme/target/fabrics-cmd-auth.c @@ -484,8 +484,7 @@ void nvmet_execute_auth_receive(struct nvmet_req *req) ctrl->cntlid, req->sq->qid, req->sq->dhchap_step); switch (req->sq->dhchap_step) { case NVME_AUTH_DHCHAP_MESSAGE_CHALLENGE: - status = nvmet_auth_challenge(req, d, al); - if (status < 0) { + if (nvmet_auth_challenge(req, d, al) < 0) { pr_warn("ctrl %d qid %d: challenge error (%d)\n", ctrl->cntlid, req->sq->qid, status); status = NVME_SC_INTERNAL; -- GitLab