usage.c: remove reference to busybox.h
[oweals/busybox.git] / console-tools / chvt.c
1 /* vi: set sw=4 ts=4: */
2 /*
3  * Mini chvt implementation for busybox
4  *
5  * Copyright (C) 1999-2004 by Erik Andersen <andersen@codepoet.org>
6  *
7  * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
8  */
9
10 #include "libbb.h"
11
12 /* From <linux/vt.h> */
13 enum {
14         VT_ACTIVATE = 0x5606,   /* make vt active */
15         VT_WAITACTIVE = 0x5607  /* wait for vt active */
16 };
17
18 int chvt_main(int argc, char **argv);
19 int chvt_main(int argc, char **argv)
20 {
21         int fd, num;
22
23         if (argc != 2) {
24                 bb_show_usage();
25         }
26
27         fd = get_console_fd();
28         num = xatoul_range(argv[1], 1, 63);
29         if ((-1 == ioctl(fd, VT_ACTIVATE, num))
30         || (-1 == ioctl(fd, VT_WAITACTIVE, num))) {
31                 bb_perror_msg_and_die("ioctl");
32         }
33         return EXIT_SUCCESS;
34 }