From 992809bf8bfa4a6ba0765344fb11d41ae7db3280 Mon Sep 17 00:00:00 2001 From: Alex Chen Date: Mon, 30 Nov 2020 12:36:51 +0000 Subject: [PATCH] qemu-nbd: Fix a memleak in qemu_nbd_client_list() When the qio_channel_socket_connect_sync() fails we should goto 'out' label to free the 'sioc' instead of return. Reported-by: Euler Robot Signed-off-by: Alex Chen Message-Id: <20201130123651.17543-1-alex.chen@huawei.com> Reviewed-by: Alberto Garcia Signed-off-by: Eric Blake --- qemu-nbd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qemu-nbd.c b/qemu-nbd.c index a7075c5419..47587a709e 100644 --- a/qemu-nbd.c +++ b/qemu-nbd.c @@ -181,7 +181,7 @@ static int qemu_nbd_client_list(SocketAddress *saddr, QCryptoTLSCreds *tls, sioc = qio_channel_socket_new(); if (qio_channel_socket_connect_sync(sioc, saddr, &err) < 0) { error_report_err(err); - return EXIT_FAILURE; + goto out; } rc = nbd_receive_export_list(QIO_CHANNEL(sioc), tls, hostname, &list, &err);