setlogcons: open /dev/ttyN for "setlogcons N", not /dev/tty1
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
fa87abe807
commit
816d8d7a66
@ -41,6 +41,7 @@
|
|||||||
int setlogcons_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
|
int setlogcons_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
|
||||||
int setlogcons_main(int argc UNUSED_PARAM, char **argv)
|
int setlogcons_main(int argc UNUSED_PARAM, char **argv)
|
||||||
{
|
{
|
||||||
|
char *devname;
|
||||||
struct {
|
struct {
|
||||||
char fn;
|
char fn;
|
||||||
char subarg;
|
char subarg;
|
||||||
@ -52,7 +53,14 @@ int setlogcons_main(int argc UNUSED_PARAM, char **argv)
|
|||||||
if (argv[1])
|
if (argv[1])
|
||||||
arg.subarg = xatou_range(argv[1], 0, 63);
|
arg.subarg = xatou_range(argv[1], 0, 63);
|
||||||
|
|
||||||
xioctl(xopen(VC_1, O_RDONLY), TIOCLINUX, &arg);
|
/* Can just call it on "/dev/tty1" always, but...
|
||||||
|
* in my testing, inactive (never opened) VTs are not
|
||||||
|
* redirected to, despite ioctl not failing.
|
||||||
|
*
|
||||||
|
* By using "/dev/ttyN", ensure it is activated.
|
||||||
|
*/
|
||||||
|
devname = xasprintf("/dev/tty%u", arg.subarg);
|
||||||
|
xioctl(xopen(devname, O_RDONLY), TIOCLINUX, &arg);
|
||||||
|
|
||||||
return EXIT_SUCCESS;
|
return EXIT_SUCCESS;
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,7 @@ exec </dev/null
|
|||||||
user=root # for bind to port 69
|
user=root # for bind to port 69
|
||||||
|
|
||||||
exec \
|
exec \
|
||||||
env - \
|
env - PATH="$PATH" \
|
||||||
softlimit \
|
softlimit \
|
||||||
setuidgid "$user" \
|
setuidgid "$user" \
|
||||||
udpsvd -v -c 10 -l localhost \
|
udpsvd -v -c 10 -l localhost \
|
||||||
|
Loading…
Reference in New Issue
Block a user