On Fri, Feb 25, 2011 at 20:20:47 +0200, Anton Zinoviev wrote:

> On Fri, Feb 25, 2011 at 06:44:22PM +0100, Julien Cristau wrote:
> >
> > Why "at best"?  It sounds like checking whether the active VT is in
> > KD_TEXT is exactly what's needed here.
> 
> How can this be tested?
> 
Something like this:

#include <stdio.h>
#include <err.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <linux/kd.h>

int main() {
        int fd;
        int rc;
        int mode;

        fd = open("/dev/tty0", O_RDONLY);
        if (fd < 0)
                err(1, "open(/dev/tty0)");
        rc = ioctl(fd, KDGETMODE, &mode);
        if (rc < 0)
                err(1, "ioctl(KDGETMODE)");
        switch (mode) {
                case KD_TEXT:
                        printf("text\n");
                        break;
                case KD_GRAPHICS:
                        printf("graphics\n");
                        break;
                default:
                        printf("other (%d)\n", mode);
                        break;
        }
        return 0;
}



-- 
To UNSUBSCRIBE, email to debian-boot-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20110225184509.ga12...@radis.liafa.jussieu.fr

Reply via email to