summaryrefslogtreecommitdiffstats
path: root/src/launch-libvirt.c
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2012-08-21 16:40:57 +0100
committerRichard W.M. Jones <rjones@redhat.com>2012-08-21 16:50:08 +0100
commite3bb1f7c927a9c34195e51c5810606227dc70e3f (patch)
tree40aa0fcc80d7ab7fe18405145423a8d67f5e6021 /src/launch-libvirt.c
parentdcd35cb55c4ee8a9144c05811f51ac32fc0c7c6d (diff)
downloadlibguestfs-e3bb1f7c927a9c34195e51c5810606227dc70e3f.tar.gz
libguestfs-e3bb1f7c927a9c34195e51c5810606227dc70e3f.tar.xz
libguestfs-e3bb1f7c927a9c34195e51c5810606227dc70e3f.zip
launch: libvirt: Always create /var/run/libguestfs.
This directory won't necessarily exist (esp. if /var/run is really /run). So create it each time.
Diffstat (limited to 'src/launch-libvirt.c')
-rw-r--r--src/launch-libvirt.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/launch-libvirt.c b/src/launch-libvirt.c
index 2811c1ad..f5f641a4 100644
--- a/src/launch-libvirt.c
+++ b/src/launch-libvirt.c
@@ -182,8 +182,10 @@ launch_libvirt (guestfs_h *g, const char *libvirt_uri)
* right we have to choose a directory which is known about in the
* policy. See: https://bugzilla.redhat.com/show_bug.cgi?id=842307
*/
- if (is_root && is_dir ("/var/run/libguestfs"))
- sockdir = safe_strdup (g, "/var/run/libguestfs");
+ if (is_root) {
+ if (mkdir ("/var/run/libguestfs", 0755) == 0)
+ sockdir = safe_strdup (g, "/var/run/libguestfs");
+ }
if (!sockdir) {
const char *xdg = getenv ("XDG_RUNTIME_DIR");