tty, ioctls -- Add new ioctl definitions for tty flags fetching
This patch defines new ioctl codes TIOCGPKT, TIOCGPTLCK, TIOCGEXCL for fetching pty's packet mode and locking state, and exclusive mode of tty. [ No real handlers for the codes though, this will be addressed in another patch for easier review and bisectability ] Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org> CC: Alan Cox <alan@lxorguk.ukuu.org.uk> CC: "H. Peter Anvin" <hpa@zytor.com> CC: Pavel Emelyanov <xemul@parallels.com> CC: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
		
					parent
					
						
							
								06026d911c
							
						
					
				
			
			
				commit
				
					
						c6298038bc
					
				
			
		
					 9 changed files with 27 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -95,6 +95,9 @@
 | 
			
		|||
#define TIOCGDEV	_IOR('T',0x32, unsigned int) /* Get primary device node of /dev/console */
 | 
			
		||||
#define TIOCSIG		_IOW('T',0x36, int)  /* Generate signal on Pty slave */
 | 
			
		||||
#define TIOCVHANGUP	0x5437
 | 
			
		||||
#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */
 | 
			
		||||
#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */
 | 
			
		||||
#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */
 | 
			
		||||
 | 
			
		||||
#define TIOCSERCONFIG	0x5453
 | 
			
		||||
#define TIOCSERGWILD	0x5454
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -86,6 +86,9 @@
 | 
			
		|||
#define TIOCGDEV	_IOR('T', 0x32, unsigned int) /* Get primary device node of /dev/console */
 | 
			
		||||
#define TIOCSIG		_IOW('T', 0x36, int)  /* Generate signal on Pty slave */
 | 
			
		||||
#define TIOCVHANGUP	0x5437
 | 
			
		||||
#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */
 | 
			
		||||
#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */
 | 
			
		||||
#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */
 | 
			
		||||
 | 
			
		||||
/* I hope the range from 0x5480 on is free ... */
 | 
			
		||||
#define TIOCSCTTY	0x5480		/* become controlling tty */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -55,6 +55,9 @@
 | 
			
		|||
#define TIOCGDEV	_IOR('T',0x32, int)  /* Get primary device node of /dev/console */
 | 
			
		||||
#define TIOCSIG		_IOW('T',0x36, int)  /* Generate signal on Pty slave */
 | 
			
		||||
#define TIOCVHANGUP	0x5437
 | 
			
		||||
#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */
 | 
			
		||||
#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */
 | 
			
		||||
#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */
 | 
			
		||||
 | 
			
		||||
#define FIONCLEX	0x5450  /* these numbers need to be adjusted. */
 | 
			
		||||
#define FIOCLEX		0x5451
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -97,6 +97,9 @@
 | 
			
		|||
#define TIOCGDEV	_IOR('T',0x32, unsigned int) /* Get primary device node of /dev/console */
 | 
			
		||||
#define TIOCSIG		_IOW('T',0x36, int)  /* Generate signal on Pty slave */
 | 
			
		||||
#define TIOCVHANGUP	0x5437
 | 
			
		||||
#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */
 | 
			
		||||
#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */
 | 
			
		||||
#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */
 | 
			
		||||
 | 
			
		||||
#define TIOCSERCONFIG	0x5453
 | 
			
		||||
#define TIOCSERGWILD	0x5454
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -88,6 +88,9 @@
 | 
			
		|||
#define TIOCGDEV	_IOR('T',0x32, unsigned int) /* Get primary device node of /dev/console */
 | 
			
		||||
#define TIOCSIG		_IOW('T',0x36, int)  /* Generate signal on Pty slave */
 | 
			
		||||
#define TIOCVHANGUP	_IO('T', 0x37)
 | 
			
		||||
#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */
 | 
			
		||||
#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */
 | 
			
		||||
#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */
 | 
			
		||||
 | 
			
		||||
#define TIOCSERCONFIG	_IO('T', 83) /* 0x5453 */
 | 
			
		||||
#define TIOCSERGWILD	_IOR('T', 84,  int) /* 0x5454 */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -21,6 +21,9 @@
 | 
			
		|||
#define TCSETSF2	_IOW('T', 15, struct termios2)
 | 
			
		||||
#define TIOCGDEV	_IOR('T',0x32, unsigned int) /* Get primary device node of /dev/console */
 | 
			
		||||
#define TIOCVHANGUP	_IO('T', 0x37)
 | 
			
		||||
#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */
 | 
			
		||||
#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */
 | 
			
		||||
#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */
 | 
			
		||||
 | 
			
		||||
/* Note that all the ioctls that are not available in Linux have a 
 | 
			
		||||
 * double underscore on the front to: a) avoid some programs to
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -101,6 +101,9 @@
 | 
			
		|||
#define TIOCGDEV	_IOR('T',0x32, unsigned int) /* Get primary device node of /dev/console */
 | 
			
		||||
#define TIOCSIG		_IOW('T',0x36, int)  /* Generate signal on Pty slave */
 | 
			
		||||
#define TIOCVHANGUP	_IO('T', 0x37)
 | 
			
		||||
#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */
 | 
			
		||||
#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */
 | 
			
		||||
#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */
 | 
			
		||||
 | 
			
		||||
#define TIOCSERCONFIG	_IO('T', 83)
 | 
			
		||||
#define TIOCSERGWILD	_IOR('T', 84,  int)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -842,6 +842,9 @@ COMPATIBLE_IOCTL(TIOCGDEV)
 | 
			
		|||
COMPATIBLE_IOCTL(TIOCCBRK)
 | 
			
		||||
COMPATIBLE_IOCTL(TIOCGSID)
 | 
			
		||||
COMPATIBLE_IOCTL(TIOCGICOUNT)
 | 
			
		||||
COMPATIBLE_IOCTL(TIOCGPKT)
 | 
			
		||||
COMPATIBLE_IOCTL(TIOCGPTLCK)
 | 
			
		||||
COMPATIBLE_IOCTL(TIOCGEXCL)
 | 
			
		||||
/* Little t */
 | 
			
		||||
COMPATIBLE_IOCTL(TIOCGETD)
 | 
			
		||||
COMPATIBLE_IOCTL(TIOCSETD)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -74,6 +74,9 @@
 | 
			
		|||
#define TCSETXW		0x5435
 | 
			
		||||
#define TIOCSIG		_IOW('T', 0x36, int)  /* pty: generate signal */
 | 
			
		||||
#define TIOCVHANGUP	0x5437
 | 
			
		||||
#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */
 | 
			
		||||
#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */
 | 
			
		||||
#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */
 | 
			
		||||
 | 
			
		||||
#define FIONCLEX	0x5450
 | 
			
		||||
#define FIOCLEX		0x5451
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue