[Libguestfs] [PATCH 5/8 v2 DISCUSSION ONLY] daemon: Remove -f (don't fork) option.

Richard W.M. Jones rjones at redhat.com
Fri Jan 28 19:38:16 UTC 2011


-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
New in Fedora 11: Fedora Windows cross-compiler. Compile Windows
programs, test, and build Windows installers. Over 70 libraries supprt'd
http://fedoraproject.org/wiki/MinGW http://www.annexia.org/fedora_mingw
-------------- next part --------------
>From cfc2bf061165079ed02eba3f42a63e65d4f555b8 Mon Sep 17 00:00:00 2001
From: Richard W.M. Jones <rjones at redhat.com>
Date: Fri, 28 Jan 2011 15:44:40 +0000
Subject: [PATCH 5/8] daemon: Remove -f (don't fork) option.

This option was not being used.
---
 appliance/init    |    2 +-
 daemon/guestfsd.c |   33 +++------------------------------
 2 files changed, 4 insertions(+), 31 deletions(-)

diff --git a/appliance/init b/appliance/init
index 4a9476d..1d31cd8 100755
--- a/appliance/init
+++ b/appliance/init
@@ -97,7 +97,7 @@ fi
 
 if ! grep -sq guestfs_rescue=1 /proc/cmdline; then
   # The host will kill qemu abruptly if guestfsd shuts down normally
-  guestfsd -f
+  guestfsd
 
   # Otherwise we try to clean up gracefully. For example, this ensures that a
   # core dump generated by the guest daemon will be written to disk.
diff --git a/daemon/guestfsd.c b/daemon/guestfsd.c
index 94e4994..2d10c82 100644
--- a/daemon/guestfsd.c
+++ b/daemon/guestfsd.c
@@ -1,5 +1,5 @@
 /* libguestfs - the guestfsd daemon
- * Copyright (C) 2009-2010 Red Hat Inc.
+ * Copyright (C) 2009-2011 Red Hat Inc.
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -18,8 +18,6 @@
 
 #include <config.h>
 
-#define _BSD_SOURCE		/* for daemon(3) */
-
 #ifdef HAVE_WINDOWS_H
 # include <windows.h>
 #endif
@@ -87,17 +85,6 @@ static int print_arginfo (const struct printf_info *info, size_t n, int *argtype
 
 #ifdef WIN32
 static int
-daemon (int nochdir, int noclose)
-{
-  fprintf (stderr,
-           "On Windows the daemon does not support forking into the "
-           "background.\nYou *must* run the daemon with the -f option.\n");
-  exit (EXIT_FAILURE);
-}
-#endif /* WIN32 */
-
-#ifdef WIN32
-static int
 winsock_init (void)
 {
   int r;
@@ -128,21 +115,19 @@ static void
 usage (void)
 {
   fprintf (stderr,
-    "guestfsd [-f|--foreground] [-v|--verbose] [-r]\n");
+    "guestfsd [-r] [-v|--verbose]\n");
 }
 
 int
 main (int argc, char *argv[])
 {
-  static const char *options = "frv?";
+  static const char *options = "rv?";
   static const struct option long_options[] = {
-    { "foreground", 0, 0, 'f' },
     { "help", 0, 0, '?' },
     { "verbose", 0, 0, 'v' },
     { 0, 0, 0, 0 }
   };
   int c;
-  int dont_fork = 0;
   char *cmdline;
 
   if (winsock_init () == -1)
@@ -170,10 +155,6 @@ main (int argc, char *argv[])
     if (c == -1) break;
 
     switch (c) {
-    case 'f':
-      dont_fork = 1;
-      break;
-
       /* The -r flag is used when running standalone.  It changes
        * several aspects of the daemon.
        */
@@ -290,14 +271,6 @@ main (int argc, char *argv[])
 
   xdr_destroy (&xdr);
 
-  /* Fork into the background. */
-  if (!dont_fork) {
-    if (daemon (0, 1) == -1) {
-      perror ("daemon");
-      exit (EXIT_FAILURE);
-    }
-  }
-
   /* Enter the main loop, reading and performing actions. */
   main_loop (sock);
 
-- 
1.7.3.5



More information about the Libguestfs mailing list