From: Olivier Brunel Date: Fri, 20 Sep 2013 20:18:28 +0000 (+0200) Subject: Resolve /dev/console to the active tty instead of just "tty0" X-Git-Tag: v209~1434 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=8aa5429a4a59abbcf567938fa6ef60bb2c8ae2f1 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. --- diff --git a/src/shared/util.c b/src/shared/util.c index 838885a46..b77d010d2 100644 --- a/src/shared/util.c +++ b/src/shared/util.c @@ -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; }