Resolve /dev/console to the active tty instead of just "tty0"

When resolving /dev/console one would often get "tty0" meaning the active VT.
Resolving to the actual tty (e.g. "tty1") will notably help on boot when
determining whether or not PID1 can output to the console.
This commit is contained in:
Olivier Brunel
2013-11-13 23:22:30 -05:00
committed by Zbigniew Jędrzejewski-Szmek
parent 51d0f1c9f6
commit 8aa5429a4a
+10
View File
@@ -3700,6 +3700,16 @@ char *resolve_dev_console(char **active) {
else
tty = *active;
if (streq(tty, "tty0")) {
char *tmp;
/* Get the active VC (e.g. tty1) */
if (read_one_line_file("/sys/class/tty/tty0/active", &tmp) >= 0) {
free(*active);
tty = *active = tmp;
}
}
return tty;
}