diff options
author | Richard W.M. Jones <rjones@redhat.com> | 2012-09-17 16:34:59 +0100 |
---|---|---|
committer | Richard W.M. Jones <rjones@redhat.com> | 2012-09-17 16:34:59 +0100 |
commit | f9f0767e20847734db3747c06b4ff11729a62a07 (patch) | |
tree | 37a3c9629c87f15959e1fccfadd5f4c23cd789cf /src | |
parent | a2dc3dbad0b9e6ee827247ee3ceefca480f5a052 (diff) | |
download | libguestfs-f9f0767e20847734db3747c06b4ff11729a62a07.tar.gz libguestfs-f9f0767e20847734db3747c06b4ff11729a62a07.tar.xz libguestfs-f9f0767e20847734db3747c06b4ff11729a62a07.zip |
launch: libvirt: Pass TMPDIR to qemu subprocess.
Diffstat (limited to 'src')
-rw-r--r-- | src/launch-libvirt.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/launch-libvirt.c b/src/launch-libvirt.c index 7d748750..c7563372 100644 --- a/src/launch-libvirt.c +++ b/src/launch-libvirt.c @@ -1011,6 +1011,7 @@ construct_libvirt_xml_qemu_cmdline (guestfs_h *g, xmlTextWriterPtr xo) size_t drv_index; char attr[256]; struct qemu_param *qp; + char *p; XMLERROR (-1, xmlTextWriterStartElement (xo, BAD_CAST "qemu:commandline")); @@ -1052,6 +1053,19 @@ construct_libvirt_xml_qemu_cmdline (guestfs_h *g, xmlTextWriterPtr xo) BAD_CAST attr)); XMLERROR (-1, xmlTextWriterEndElement (xo)); + /* We need to ensure the snapshots are created in $TMPDIR (RHBZ#856619). */ + p = getenv ("TMPDIR"); + if (p) { + XMLERROR (-1, xmlTextWriterStartElement (xo, BAD_CAST "qemu:env")); + XMLERROR (-1, + xmlTextWriterWriteAttribute (xo, BAD_CAST "name", + BAD_CAST "TMPDIR")); + XMLERROR (-1, + xmlTextWriterWriteAttribute (xo, BAD_CAST "value", + BAD_CAST p)); + XMLERROR (-1, xmlTextWriterEndElement (xo)); + } + /* Workaround because libvirt user networking cannot specify "net=" * parameter. */ |