Magellan Linux

Diff of /trunk/mkinitrd-magellan/busybox/console-tools/chvt.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 815 by niro, Sat Sep 1 22:45:15 2007 UTC revision 816 by niro, Fri Apr 24 18:33:46 2009 UTC
# Line 7  Line 7 
7   * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.   * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
8   */   */
9    
10  #include "busybox.h"  #include "libbb.h"
   
 /* From <linux/vt.h> */  
 enum {  
  VT_ACTIVATE = 0x5606,   /* make vt active */  
  VT_WAITACTIVE = 0x5607  /* wait for vt active */  
 };  
11    
12    int chvt_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
13  int chvt_main(int argc, char **argv)  int chvt_main(int argc, char **argv)
14  {  {
15   int fd, num;   int num;
16    
17   if (argc != 2) {   if (argc != 2) {
18   bb_show_usage();   bb_show_usage();
19   }   }
20    
21   fd = get_console_fd();   num = xatou_range(argv[1], 1, 63);
22   num = xatoul_range(argv[1], 1, 63);   console_make_active(get_console_fd_or_die(), num);
  if ((-1 == ioctl(fd, VT_ACTIVATE, num))  
  || (-1 == ioctl(fd, VT_WAITACTIVE, num))) {  
  bb_perror_msg_and_die("ioctl");  
  }  
23   return EXIT_SUCCESS;   return EXIT_SUCCESS;
24  }  }

Legend:
Removed from v.815  
changed lines
  Added in v.816