diff options
Diffstat (limited to 'console-tools/setlogcons.c')
-rw-r--r-- | console-tools/setlogcons.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/console-tools/setlogcons.c b/console-tools/setlogcons.c new file mode 100644 index 000000000..1f0ac524e --- /dev/null +++ b/console-tools/setlogcons.c @@ -0,0 +1,34 @@ +/* + * setlogcons: Send kernel messages to the current console or to console N + * + * Copyright (C) 2006 by Jan Kiszka <jan.kiszka@web.de> + * + * Based on setlogcons (kbd-1.12) by Andries E. Brouwer + * + * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. + */ + +#include <stdio.h> +#include <stdlib.h> +#include <fcntl.h> +#include <sys/ioctl.h> +#include "busybox.h" + +extern int setlogcons_main(int argc, char **argv) +{ + struct { + char fn; + char subarg; + } arg; + + arg.fn = 11; /* redirect kernel messages */ + arg.subarg = 0; /* to specified console (current as default) */ + + if (argc == 2) + arg.subarg = atoi(argv[1]); + + if (ioctl(bb_xopen("/dev/tty1", O_RDONLY), TIOCLINUX, &arg)) + bb_perror_msg_and_die("TIOCLINUX");; + + return 0; +} |