[libvirt] [PATCH] daemon: Change CWD to / before daemonizing

Jiri Denemark jdenemar at redhat.com
Mon Dec 13 10:40:37 UTC 2010


We were doing so for child processes but not for libvirtd itself.
---
 daemon/libvirtd.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/daemon/libvirtd.c b/daemon/libvirtd.c
index 791b3dc..58fc492 100644
--- a/daemon/libvirtd.c
+++ b/daemon/libvirtd.c
@@ -3158,6 +3158,13 @@ int main(int argc, char **argv) {
 
     if (godaemon) {
         char ebuf[1024];
+
+        if (chdir("/") < 0) {
+            VIR_ERROR(_("cannot change to root directory: %s"),
+                      virStrerror(errno, ebuf, sizeof(ebuf)));
+            goto error;
+        }
+
         if ((statuswrite = daemonForkIntoBackground()) < 0) {
             VIR_ERROR(_("Failed to fork as daemon: %s"),
                       virStrerror(errno, ebuf, sizeof ebuf));
-- 
1.7.3.3




More information about the libvir-list mailing list