[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH/RFC 3/7] Close socket when closing QEMUFile
From: |
Marc-André Lureau |
Subject: |
[Qemu-devel] [PATCH/RFC 3/7] Close socket when closing QEMUFile |
Date: |
Mon, 12 Mar 2012 14:11:29 +0100 |
---
migration-tcp.c | 9 +++++----
migration-unix.c | 9 +++++----
savevm.c | 1 +
3 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/migration-tcp.c b/migration-tcp.c
index f567898..056867c 100644
--- a/migration-tcp.c
+++ b/migration-tcp.c
@@ -137,7 +137,7 @@ static void tcp_accept_incoming_migration(void *opaque)
if (c == -1) {
fprintf(stderr, "could not accept migration connection\n");
- goto out2;
+ goto out;
}
f = qemu_fopen_socket(c, "r");
@@ -145,12 +145,13 @@ static void tcp_accept_incoming_migration(void *opaque)
fprintf(stderr, "could not qemu_fopen socket\n");
goto out;
}
-
+ c = -1;
process_incoming_migration(f);
qemu_fclose(f);
+
out:
- close(c);
-out2:
+ if (c != -1)
+ close(c);
qemu_set_fd_handler2(s, NULL, NULL, NULL, NULL);
close(s);
}
diff --git a/migration-unix.c b/migration-unix.c
index 3928f4c..0a3a076 100644
--- a/migration-unix.c
+++ b/migration-unix.c
@@ -134,7 +134,7 @@ static void unix_accept_incoming_migration(void *opaque)
if (c == -1) {
fprintf(stderr, "could not accept migration connection\n");
- goto out2;
+ goto out;
}
f = qemu_fopen_socket(c, "r");
@@ -142,12 +142,13 @@ static void unix_accept_incoming_migration(void *opaque)
fprintf(stderr, "could not qemu_fopen socket\n");
goto out;
}
-
+ c = -1;
process_incoming_migration(f);
qemu_fclose(f);
+
out:
- close(c);
-out2:
+ if (c != -1)
+ close(c);
qemu_set_fd_handler2(s, NULL, NULL, NULL, NULL);
close(s);
}
diff --git a/savevm.c b/savevm.c
index 4171ebf..b6a690d 100644
--- a/savevm.c
+++ b/savevm.c
@@ -223,6 +223,7 @@ static int socket_put_buffer(void *opaque, const uint8_t
*buf, int64_t pos, int
static int socket_close(void *opaque)
{
QEMUFileSocket *s = opaque;
+ close(s->fd);
g_free(s);
return 0;
}
--
1.7.7.6
- [Qemu-devel] [PATCH/RFC 0/7] Screendump to UNIX socket & in PNG format, Marc-André Lureau, 2012/03/12
- [Qemu-devel] [PATCH/RFC 2/7] Allow a qemu_fopen_socket() to be opened for writing, Marc-André Lureau, 2012/03/12
- [Qemu-devel] [PATCH/RFC 4/7] Allow saving screendump to a UNIX socket, Marc-André Lureau, 2012/03/12
- [Qemu-devel] [PATCH/RFC 7/7] Add PNG screendump, Marc-André Lureau, 2012/03/12
- [Qemu-devel] [PATCH/RFC 1/7] ppm_save: use QEMUFile, Marc-André Lureau, 2012/03/12
- [Qemu-devel] [PATCH/RFC 6/7] Isolate color conversion from PPM handling, Marc-André Lureau, 2012/03/12
- [Qemu-devel] [PATCH/RFC 3/7] Close socket when closing QEMUFile,
Marc-André Lureau <=
- [Qemu-devel] [PATCH/RFC 5/7] configure: split PNG support from vnc_png feature, Marc-André Lureau, 2012/03/12
- Re: [Qemu-devel] [PATCH/RFC 0/7] Screendump to UNIX socket & in PNG format, Eric Blake, 2012/03/12
- Re: [Qemu-devel] [PATCH/RFC 0/7] Screendump to UNIX socket & in PNG format, Daniel P. Berrange, 2012/03/12
- Re: [Qemu-devel] [PATCH/RFC 0/7] Screendump to UNIX socket & in PNG format, Anthony Liguori, 2012/03/12