From 72322a8dc53c0c6c64b9a706c75b327eae6e0160 Mon Sep 17 00:00:00 2001 From: root Date: Mon, 28 Dec 2015 11:29:28 +0000 Subject: add vtreset --- vt_reset.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 vt_reset.c diff --git a/vt_reset.c b/vt_reset.c new file mode 100644 index 0000000..139ab0b --- /dev/null +++ b/vt_reset.c @@ -0,0 +1,36 @@ +#include +#include +#include +#include +#include +#include + + +main (int argc, char *argv[]) +{ + int fd; + int i; + char buf[128]; + struct vt_mode vm; + + for (i = 1; i < 31; ++i) { + sprintf (buf, "/dev/tty%d", i); + fd = open (buf, O_RDWR | O_NOCTTY); + + memset (&vm, 0, sizeof (vm)); + vm.mode = VT_PROCESS; + ioctl (fd, VT_SETMODE, &vm); + ioctl (fd, VT_RELDISP, 0); + ioctl (fd, VT_RELDISP, 1); + ioctl (fd, VT_RELDISP, VT_ACKACQ); + + memset (&vm, 0, sizeof (vm)); + vm.mode = VT_AUTO; + ioctl (fd, VT_SETMODE, &vm); + + ioctl (fd, VT_UNLOCKSWITCH, 0); + + close (fd); + } + exit (0); +} -- cgit v1.2.3