lh | 9ed821d | 2023-04-07 01:36:19 -0700 | [diff] [blame] | 1 | /* vi: set sw=4 ts=4: */ |
| 2 | /* |
| 3 | * setlogcons: Send kernel messages to the current console or to console N |
| 4 | * |
| 5 | * Copyright (C) 2006 by Jan Kiszka <jan.kiszka@web.de> |
| 6 | * |
| 7 | * Based on setlogcons (kbd-1.12) by Andries E. Brouwer |
| 8 | * |
| 9 | * Licensed under GPLv2 or later, see file LICENSE in this source tree. |
| 10 | */ |
| 11 | |
| 12 | //usage:#define setlogcons_trivial_usage |
| 13 | //usage: "N" |
| 14 | //usage:#define setlogcons_full_usage "\n\n" |
| 15 | //usage: "Redirect the kernel output to console N (0 for current)" |
| 16 | |
| 17 | #include "libbb.h" |
| 18 | |
| 19 | int setlogcons_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; |
| 20 | int setlogcons_main(int argc UNUSED_PARAM, char **argv) |
| 21 | { |
| 22 | struct { |
| 23 | char fn; |
| 24 | char subarg; |
| 25 | } arg = { |
| 26 | 11, /* redirect kernel messages */ |
| 27 | 0 /* to specified console (current as default) */ |
| 28 | }; |
| 29 | |
| 30 | if (argv[1]) |
| 31 | arg.subarg = xatou_range(argv[1], 0, 63); |
| 32 | |
| 33 | xioctl(xopen(VC_1, O_RDONLY), TIOCLINUX, &arg); |
| 34 | |
| 35 | return EXIT_SUCCESS; |
| 36 | } |