]> git.proxmox.com Git - mirror_lxc.git/commitdiff
Revert "fix console stdin,stdout,stderr fds"
authorSerge Hallyn <serge.hallyn@ubuntu.com>
Fri, 7 Mar 2014 00:01:08 +0000 (18:01 -0600)
committerSerge Hallyn <serge.hallyn@ubuntu.com>
Fri, 7 Mar 2014 00:01:08 +0000 (18:01 -0600)
This reverts commit 1da0ad1e0adff18c6d588772146eb054440db95b.

src/lxc/console.c
src/lxc/console.h
src/lxc/lxc_console.c
src/lxc/lxc_start.c
src/lxc/start.c

index 67e5d0f177e33ce4b2810b7e3c522b2c30bce6ce..6bfc8a34c2f7f71383ce08481340ecb03ca51032 100644 (file)
@@ -506,7 +506,7 @@ static void lxc_console_peer_default(struct lxc_console *console)
        DEBUG("using '%s' as console", path);
 
        if (!isatty(console->peer))
-               goto err1;
+               return;
 
        ts = lxc_console_sigwinch_init(console->peer, console->master);
        if (!ts)
@@ -611,23 +611,7 @@ err:
        return -1;
 }
 
-int lxc_console_set_stdfds(struct lxc_handler *handler)
-{
-       struct lxc_conf *conf = handler->conf;
-       struct lxc_console *console = &conf->console;
-
-       if (console->slave < 0)
-               return 0;
 
-       if (dup2(console->slave, 0) < 0 ||
-           dup2(console->slave, 1) < 0 ||
-           dup2(console->slave, 2) < 0)
-       {
-               SYSERROR("failed to dup console");
-               return -1;
-       }
-       return 0;
-}
 
 static int lxc_console_cb_tty_stdin(int fd, uint32_t events, void *cbdata,
                                    struct lxc_epoll_descr *descr)
index eb3894b34accb719c9feffa5962ae7a272222e24..d45260cbec5789c34aed0cceca32df141128dc2e 100644 (file)
@@ -36,4 +36,3 @@ extern int  lxc_console(struct lxc_container *c, int ttynum,
                        int escape);
 extern int  lxc_console_getfd(struct lxc_container *c, int *ttynum,
                              int *masterfd);
-extern int  lxc_console_set_stdfds(struct lxc_handler *);
index 0fd08e8792706a91d67b1cbcc4d290dbeb019e21..bfee6fb570d7df774de1d7a8e320c6d145e4cdfe 100644 (file)
@@ -28,6 +28,7 @@
 #include <errno.h>
 #include <string.h>
 #include <fcntl.h>
+#include <termios.h>
 #include <unistd.h>
 #include <signal.h>
 #include <libgen.h>
index d9a5694e720f4868ebbfb6988c7fab0b92bf4608..05fb1611319554ee83332f54d193dcc872b6a0c9 100644 (file)
@@ -27,6 +27,7 @@
 #include <stdlib.h>
 #include <unistd.h>
 #include <string.h>
+#include <termios.h>
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
index 89b925fc79407d199c520cc6eb3e601064cf3d12..eb1c6595581b4385932b120b8676db8fdb85d6f2 100644 (file)
@@ -31,6 +31,7 @@
 #include <unistd.h>
 #include <signal.h>
 #include <fcntl.h>
+#include <termios.h>
 #include <grp.h>
 #include <poll.h>
 #include <sys/param.h>
@@ -725,15 +726,6 @@ static int do_start(void *data)
                goto out_warn_father;
        }
 
-       /* Some init's such as busybox will set sane tty settings on stdin,
-        * stdout, stderr which it thinks is the console. We already set them
-        * the way we wanted on the real terminal, and we want init to do its
-        * setup on its console ie. the pty allocated in lxc_console_create()
-        * so make sure that that pty is stdin,stdout,stderr.
-        */
-       if (lxc_console_set_stdfds(handler) < 0)
-               goto out_warn_father;
-
        close(handler->sigfd);
 
        /* after this call, we are in error because this