summaryrefslogtreecommitdiffstats
path: root/drivers/crypto
diff options
context:
space:
mode:
authorWei Yongjun <weiyongjun1@huawei.com>2022-11-14 11:07:40 +0000
committerMichael S. Tsirkin <mst@redhat.com>2022-12-28 05:28:10 -0500
commitb1d65f717cd6305a396a8738e022c6f7c65cfbe8 (patch)
tree6e546ab023895bf628d16e621fd479ac54b004df /drivers/crypto
parenta4722f64f924a9992efc08d141c21b2da02b70f3 (diff)
downloadlinux-stable-b1d65f717cd6305a396a8738e022c6f7c65cfbe8.tar.gz
linux-stable-b1d65f717cd6305a396a8738e022c6f7c65cfbe8.tar.bz2
linux-stable-b1d65f717cd6305a396a8738e022c6f7c65cfbe8.zip
virtio-crypto: fix memory leak in virtio_crypto_alg_skcipher_close_session()
'vc_ctrl_req' is alloced in virtio_crypto_alg_skcipher_close_session(), and should be freed in the invalid ctrl_status->status error handling case. Otherwise there is a memory leak. Fixes: 0756ad15b1fe ("virtio-crypto: use private buffer for control request") Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com> Message-Id: <20221114110740.537276-1-weiyongjun@huaweicloud.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Gonglei <arei.gonglei@huawei.com> Acked-by: zhenwei pi<pizhenwei@bytedance.com> Acked-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'drivers/crypto')
-rw-r--r--drivers/crypto/virtio/virtio_crypto_skcipher_algs.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c b/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c
index e553ccadbcbc..e5876286828b 100644
--- a/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c
+++ b/drivers/crypto/virtio/virtio_crypto_skcipher_algs.c
@@ -239,7 +239,8 @@ static int virtio_crypto_alg_skcipher_close_session(
pr_err("virtio_crypto: Close session failed status: %u, session_id: 0x%llx\n",
ctrl_status->status, destroy_session->session_id);
- return -EINVAL;
+ err = -EINVAL;
+ goto out;
}
err = 0;