From b181e04777da67acbc7448f87e4ae9f1518e08b2 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Tue, 7 Feb 2012 15:09:09 +0100 Subject: [PATCH] qemu-char: Use qemu_open() to avoid leaking fds to children Fixed silently in commit aad04cd0, but that just got reverted. Re-apply the fixes, plus one missed instance: parport on Linux. Reviewed-by: Anthony Liguori Signed-off-by: Markus Armbruster Signed-off-by: Anthony Liguori --- qemu-char.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/qemu-char.c b/qemu-char.c index 1e882cfeea..368df2e7be 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -665,7 +665,7 @@ static CharDriverState *qemu_chr_open_pipe(QemuOpts *opts) close(fd_in); if (fd_out >= 0) close(fd_out); - TFR(fd_in = fd_out = open(filename, O_RDWR | O_BINARY)); + TFR(fd_in = fd_out = qemu_open(filename, O_RDWR | O_BINARY)); if (fd_in < 0) return NULL; } @@ -1217,7 +1217,7 @@ static CharDriverState *qemu_chr_open_tty(QemuOpts *opts) CharDriverState *chr; int fd; - TFR(fd = open(filename, O_RDWR | O_NONBLOCK)); + TFR(fd = qemu_open(filename, O_RDWR | O_NONBLOCK)); if (fd < 0) { return NULL; } @@ -1355,7 +1355,7 @@ static CharDriverState *qemu_chr_open_pp(QemuOpts *opts) ParallelCharDriver *drv; int fd; - TFR(fd = open(filename, O_RDWR)); + TFR(fd = qemu_open(filename, O_RDWR)); if (fd < 0) return NULL; @@ -1424,7 +1424,7 @@ static CharDriverState *qemu_chr_open_pp(QemuOpts *opts) CharDriverState *chr; int fd; - fd = open(filename, O_RDWR); + fd = qemu_open(filename, O_RDWR); if (fd < 0) return NULL; -- 2.11.4.GIT