Skip to content

Commit 635c967

Browse files
nvmet-auth: always free derived key data
JIRA: https://issues.redhat.com/browse/RHEL-72531 After calling nvme_auth_derive_tls_psk() we need to free the resulting psk data, as either TLS is disable (and we don't need the data anyway) or the psk data is copied into the resulting key (and can be free, too). Fixes: fa2e0f8 ("nvmet-tcp: support secure channel concatenation") Reported-by: Yi Zhang <[email protected]> Suggested-by: Maurizio Lombardi <[email protected]> Signed-off-by: Hannes Reinecke <[email protected]> Reviewed-by: Sagi Grimberg <[email protected]> Tested-by: Yi Zhang <[email protected]> Signed-off-by: Christoph Hellwig <[email protected]> (cherry picked from commit 8edb86b) Signed-off-by: Maurizio Lombardi <[email protected]>
1 parent cd3137d commit 635c967

File tree

1 file changed

+1
-2
lines changed

1 file changed

+1
-2
lines changed

drivers/nvme/target/auth.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -600,13 +600,12 @@ void nvmet_auth_insert_psk(struct nvmet_sq *sq)
600600
pr_warn("%s: ctrl %d qid %d failed to refresh key, error %ld\n",
601601
__func__, sq->ctrl->cntlid, sq->qid, PTR_ERR(tls_key));
602602
tls_key = NULL;
603-
kfree_sensitive(tls_psk);
604603
}
605604
if (sq->ctrl->tls_key)
606605
key_put(sq->ctrl->tls_key);
607606
sq->ctrl->tls_key = tls_key;
608607
#endif
609-
608+
kfree_sensitive(tls_psk);
610609
out_free_digest:
611610
kfree_sensitive(digest);
612611
out_free_psk:

0 commit comments

Comments
 (0)