Either accept() fails or exits normally, we need to close the fd.

Reported-by: Euler Robot <euler.ro...@huawei.com>
Signed-off-by: AlexChen <alex.c...@huawei.com>
---
 contrib/plugins/lockstep.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/contrib/plugins/lockstep.c b/contrib/plugins/lockstep.c
index 319bd44b83..5aad50869d 100644
--- a/contrib/plugins/lockstep.c
+++ b/contrib/plugins/lockstep.c
@@ -268,11 +268,13 @@ static bool setup_socket(const char *path)
     socket_fd = accept(fd, NULL, NULL);
     if (socket_fd < 0 && errno != EINTR) {
         perror("accept socket");
+        close(fd);
         return false;
     }

     qemu_plugin_outs("setup_socket::ready\n");

+    close(fd);
     return true;
 }

-- 
2.19.1

Reply via email to