* is a sign for container setups). */
_cleanup_free_ char *chased = NULL;
- r = chase("/dev/console", /* root= */ NULL, /* flags= */ 0, &chased, /* ret_fd= */ NULL);
+ r = chase("/dev/console", /* root= */ NULL, /* flags= */ 0, &chased, /* ret_fd= */ NULL);
if (r < 0)
return r;
if (!path_equal(chased, "/dev/console")) {
r = read_one_line_file("/sys/class/tty/console/active", &active);
if (r < 0)
return r;
+ if (r == 0)
+ return -ENXIO;
/* If multiple log outputs are configured the last one is what /dev/console points to */
const char *tty = strrchr(active, ' ');