forked from mirrors/linux
		
	Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Link: https://lore.kernel.org/r/YxDnDCR2VRTA3Etp@ZenIV Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
		
			
				
	
	
		
			49 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/* SPDX-License-Identifier: GPL-2.0 */
 | 
						|
#ifndef _LINUX_TERMIOS_CONV_H
 | 
						|
#define _LINUX_TERMIOS_CONV_H
 | 
						|
 | 
						|
#include <linux/uaccess.h>
 | 
						|
#include <asm/termios.h>
 | 
						|
 | 
						|
/*	intr=^C		quit=^\		erase=del	kill=^U
 | 
						|
	eof=^D		vtime=\0	vmin=\1		sxtc=\0
 | 
						|
	start=^Q	stop=^S		susp=^Z		eol=\0
 | 
						|
	reprint=^R	discard=^O	werase=^W	lnext=^V
 | 
						|
	eol2=\0
 | 
						|
*/
 | 
						|
 | 
						|
#ifdef VDSUSP
 | 
						|
#define INIT_C_CC_VDSUSP_EXTRA [VDSUSP] = 'Y'-0x40,
 | 
						|
#else
 | 
						|
#define INIT_C_CC_VDSUSP_EXTRA
 | 
						|
#endif
 | 
						|
 | 
						|
#define INIT_C_CC {		\
 | 
						|
	[VINTR] = 'C'-0x40,	\
 | 
						|
	[VQUIT] = '\\'-0x40,	\
 | 
						|
	[VERASE] = '\177',	\
 | 
						|
	[VKILL] = 'U'-0x40,	\
 | 
						|
	[VEOF] = 'D'-0x40,	\
 | 
						|
	[VSTART] = 'Q'-0x40,	\
 | 
						|
	[VSTOP] = 'S'-0x40,	\
 | 
						|
	[VSUSP] = 'Z'-0x40,	\
 | 
						|
	[VREPRINT] = 'R'-0x40,	\
 | 
						|
	[VDISCARD] = 'O'-0x40,	\
 | 
						|
	[VWERASE] = 'W'-0x40,	\
 | 
						|
	[VLNEXT] = 'V'-0x40,	\
 | 
						|
	INIT_C_CC_VDSUSP_EXTRA	\
 | 
						|
	[VMIN] = 1 }
 | 
						|
 | 
						|
int user_termio_to_kernel_termios(struct ktermios *, struct termio __user *);
 | 
						|
int kernel_termios_to_user_termio(struct termio __user *, struct ktermios *);
 | 
						|
#ifdef TCGETS2
 | 
						|
int user_termios_to_kernel_termios(struct ktermios *, struct termios2 __user *);
 | 
						|
int kernel_termios_to_user_termios(struct termios2 __user *, struct ktermios *);
 | 
						|
int user_termios_to_kernel_termios_1(struct ktermios *, struct termios __user *);
 | 
						|
int kernel_termios_to_user_termios_1(struct termios __user *, struct ktermios *);
 | 
						|
#else /* TCGETS2 */
 | 
						|
int user_termios_to_kernel_termios(struct ktermios *, struct termios __user *);
 | 
						|
int kernel_termios_to_user_termios(struct termios __user *, struct ktermios *);
 | 
						|
#endif /* TCGETS2 */
 | 
						|
 | 
						|
#endif /* _LINUX_TERMIOS_CONV_H */
 |