summaryrefslogtreecommitdiffstats
path: root/daemon
diff options
context:
space:
mode:
authorRichard Jones <rjones@redhat.com>2010-08-27 15:27:22 +0100
committerRichard Jones <rjones@redhat.com>2010-08-27 15:29:33 +0100
commitd89a88d67e577ee6111820cb44c3440b7772608d (patch)
treecd8891da2c5454149ea20fdca502eea07048cb9c /daemon
parent4932fdca3ca1e9002164a1c0b73876f32739d34d (diff)
downloadlibguestfs-d89a88d67e577ee6111820cb44c3440b7772608d.tar.gz
libguestfs-d89a88d67e577ee6111820cb44c3440b7772608d.tar.xz
libguestfs-d89a88d67e577ee6111820cb44c3440b7772608d.zip
daemon: Set O_CLOEXEC flag on the virtio-serial file descriptor.
Diffstat (limited to 'daemon')
-rw-r--r--daemon/guestfsd.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/daemon/guestfsd.c b/daemon/guestfsd.c
index 81305246..e398b7d8 100644
--- a/daemon/guestfsd.c
+++ b/daemon/guestfsd.c
@@ -60,6 +60,11 @@ static char *read_cmdline (void);
# define MAX(a,b) ((a)>(b)?(a):(b))
#endif
+/* Not the end of the world if this open flag is not defined. */
+#ifndef O_CLOEXEC
+# define O_CLOEXEC 0
+#endif
+
/* If root device is an ext2 filesystem, this is the major and minor.
* This is so we can ignore this device from the point of view of the
* user, eg. in guestfs_list_devices and many other places.
@@ -237,7 +242,8 @@ main (int argc, char *argv[])
#endif
/* Connect to virtio-serial channel. */
- int sock = open ("/dev/virtio-ports/org.libguestfs.channel.0", O_RDWR);
+ int sock = open ("/dev/virtio-ports/org.libguestfs.channel.0",
+ O_RDWR | O_CLOEXEC);
if (sock == -1) {
fprintf (stderr,
"\n"