aboutsummaryrefslogtreecommitdiff
path: root/initd/setup_tty.c
diff options
context:
space:
mode:
Diffstat (limited to 'initd/setup_tty.c')
-rw-r--r--initd/setup_tty.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/initd/setup_tty.c b/initd/setup_tty.c
new file mode 100644
index 0000000..cec663b
--- /dev/null
+++ b/initd/setup_tty.c
@@ -0,0 +1,23 @@
+#include <unistd.h>
+#include <fcntl.h>
+#include <stdio.h>
+
+#include "init.h"
+
+int setup_tty(void)
+{
+ int fd;
+
+ fd = open("/dev/console", O_WRONLY | O_NOCTTY);
+ if (fd < 0) {
+ perror("/dev/console");
+ return -1;
+ }
+
+ close(STDIN_FILENO);
+ dup2(fd, STDOUT_FILENO);
+ dup2(fd, STDERR_FILENO);
+
+ close(fd);
+ return 0;
+}