[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-trivial] [PATCH 1/2] virtfs-proxy-helper: Fix possible socket leak
From: |
arei.gonglei |
Subject: |
[Qemu-trivial] [PATCH 1/2] virtfs-proxy-helper: Fix possible socket leak. |
Date: |
Thu, 13 Nov 2014 20:17:06 +0800 |
From: Gonglei <address@hidden>
Signed-off-by: Gonglei <address@hidden>
---
fsdev/virtfs-proxy-helper.c | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
index cd291d3..c1da2d7 100644
--- a/fsdev/virtfs-proxy-helper.c
+++ b/fsdev/virtfs-proxy-helper.c
@@ -749,24 +749,29 @@ static int proxy_socket(const char *path, uid_t uid,
gid_t gid)
if (bind(sock, (struct sockaddr *)&proxy,
sizeof(struct sockaddr_un)) < 0) {
do_perror("bind");
- return -1;
+ goto error;
}
if (chown(proxy.sun_path, uid, gid) < 0) {
do_perror("chown");
- return -1;
+ goto error;
}
if (listen(sock, 1) < 0) {
do_perror("listen");
- return -1;
+ goto error;
}
size = sizeof(qemu);
client = accept(sock, (struct sockaddr *)&qemu, &size);
if (client < 0) {
do_perror("accept");
- return -1;
+ goto error;
}
+ close(sock);
return client;
+
+error:
+ close(sock);
+ return -1;
}
static void usage(char *prog)
--
1.7.12.4
[Qemu-trivial] [PATCH 1/2] virtfs-proxy-helper: Fix possible socket leak.,
arei.gonglei <=
Re: [Qemu-trivial] [PATCH 0/2] virtfs-proxy-helper: Fix Coverity warning, Gonglei, 2014/11/27