Pretty much the only case where we do NOT want to daemonize
a container start is lxc-start.  So make c->daemonize true
by default, and have lxc-start set it to false.

If there are existing API users who rely on daemonize by
default, then they will be broken by this.  It seems we should
do this before beta1 if we're going to do it.

Signed-off-by: Serge Hallyn <[email protected]>
---
 src/lxc/lxc_start.c    | 4 ++--
 src/lxc/lxccontainer.c | 1 +
 src/tests/startone.c   | 1 +
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/lxc/lxc_start.c b/src/lxc/lxc_start.c
index e6ca355..d5379da 100644
--- a/src/lxc/lxc_start.c
+++ b/src/lxc/lxc_start.c
@@ -325,8 +325,8 @@ int main(int argc, char *argv[])
                conf->inherit_ns_fd[i] = fd;
        }
 
-       if (my_args.daemonize) {
-               c->want_daemonize(c, true);
+       if (!my_args.daemonize) {
+               c->want_daemonize(c, false);
        }
 
        if (pid_fp != NULL) {
diff --git a/src/lxc/lxccontainer.c b/src/lxc/lxccontainer.c
index 48fef74..5c2c62a 100644
--- a/src/lxc/lxccontainer.c
+++ b/src/lxc/lxccontainer.c
@@ -3059,6 +3059,7 @@ struct lxc_container *lxc_container_new(const char *name, 
const char *configpath
                lxcapi_destroy(c);
                lxcapi_clear_config(c);
        }
+       c->daemonize = true;
 
        // assign the member functions
        c->is_defined = lxcapi_is_defined;
diff --git a/src/tests/startone.c b/src/tests/startone.c
index 678f62e..93992c1 100644
--- a/src/tests/startone.c
+++ b/src/tests/startone.c
@@ -168,6 +168,7 @@ int main(int argc, char *argv[])
                fprintf(stderr, "%d: failed to get extra ref to container\n", 
__LINE__);
                exit(1);
        }
+       c->want_daemonize(false);
        pid_t pid = fork();
        if (pid < 0) {
                fprintf(stderr, "%d: fork failed\n", __LINE__);
-- 
1.8.5.2

_______________________________________________
lxc-devel mailing list
[email protected]
http://lists.linuxcontainers.org/listinfo/lxc-devel

Reply via email to