xref: /titanic_52/usr/src/cmd/ast/libast/i386/FEATURE/tty (revision 906afcb89d0412cc073b95c2d701a804a8cdb62c)
1*906afcb8SAndy Fiddaman/* : : generated from contrib/ast/src/lib/libast/features/tty by iffe version 2012-07-17 : : */
2*906afcb8SAndy Fiddaman#ifndef _def_tty_ast
3*906afcb8SAndy Fiddaman#define _def_tty_ast	1
4*906afcb8SAndy Fiddaman#define _sys_types	1	/* #include <sys/types.h> ok */
5*906afcb8SAndy Fiddaman#define _hdr_termios	1	/* #include <termios.h> ok */
6*906afcb8SAndy Fiddaman#define _hdr_termio	1	/* #include <termio.h> ok */
7*906afcb8SAndy Fiddaman#define _hdr_sgtty	1	/* #include <sgtty.h> ok */
8*906afcb8SAndy Fiddaman#define _sys_termios	1	/* #include <sys/termios.h> ok */
9*906afcb8SAndy Fiddaman#define _sys_termio	1	/* #include <sys/termio.h> ok */
10*906afcb8SAndy Fiddaman#define _sys_ioctl	1	/* #include <sys/ioctl.h> ok */
11*906afcb8SAndy Fiddaman#define _lib_tcgetattr	1	/* tcgetattr() in default lib(s) */
12*906afcb8SAndy Fiddaman#define _lib_tcgetpgrp	1	/* tcgetpgrp() in default lib(s) */
13*906afcb8SAndy Fiddaman#define _mac__POSIX_VDISABLE	1	/* _POSIX_VDISABLE is a macro */
14*906afcb8SAndy Fiddaman
15*906afcb8SAndy Fiddaman#ifdef _hdr_termios
16*906afcb8SAndy Fiddaman#   if _mac__POSIX_VDISABLE
17*906afcb8SAndy Fiddaman#	undef _POSIX_VDISABLE
18*906afcb8SAndy Fiddaman#   endif
19*906afcb8SAndy Fiddaman#   include	<termios.h>
20*906afcb8SAndy Fiddaman#else
21*906afcb8SAndy Fiddaman#   if defined(_sys_termios) && defined(_lib_tcgetattr)
22*906afcb8SAndy Fiddaman#	include	<sys/termios.h>
23*906afcb8SAndy Fiddaman#	define _hdr_termios	1
24*906afcb8SAndy Fiddaman#   else
25*906afcb8SAndy Fiddaman#	undef _sys_termios
26*906afcb8SAndy Fiddaman#   endif /* _sys_termios */
27*906afcb8SAndy Fiddaman#endif /* _hdr_termios */
28*906afcb8SAndy Fiddaman
29*906afcb8SAndy Fiddaman#ifdef _hdr_termios
30*906afcb8SAndy Fiddaman#   undef _hdr_sgtty
31*906afcb8SAndy Fiddaman#   undef tcgetattr
32*906afcb8SAndy Fiddaman#   undef tcsetattr
33*906afcb8SAndy Fiddaman#   undef tcgetpgrp
34*906afcb8SAndy Fiddaman#   undef tcsetpgrp
35*906afcb8SAndy Fiddaman#   undef cfgetospeed
36*906afcb8SAndy Fiddaman#   ifndef TCSANOW
37*906afcb8SAndy Fiddaman#	define TCSANOW		TCSETS
38*906afcb8SAndy Fiddaman#	define TCSADRAIN	TCSETSW
39*906afcb8SAndy Fiddaman#	define TCSAFLUSH	TCSETSF
40*906afcb8SAndy Fiddaman#   endif /* TCSANOW */
41*906afcb8SAndy Fiddaman   /* The following corrects bugs in some implementations */
42*906afcb8SAndy Fiddaman#   if defined(TCSADFLUSH) && !defined(TCSAFLUSH)
43*906afcb8SAndy Fiddaman#	define TCSAFLUSH	TCSADFLUSH
44*906afcb8SAndy Fiddaman#   endif /* TCSADFLUSH */
45*906afcb8SAndy Fiddaman#   ifndef _lib_tcgetattr
46*906afcb8SAndy Fiddaman#	undef  tcgetattr
47*906afcb8SAndy Fiddaman#	define tcgetattr(fd,tty)	ioctl(fd, TCGETS, tty)
48*906afcb8SAndy Fiddaman#	undef  tcsetattr
49*906afcb8SAndy Fiddaman#	define tcsetattr(fd,action,tty)	ioctl(fd, action, tty)
50*906afcb8SAndy Fiddaman#	undef  cfgetospeed
51*906afcb8SAndy Fiddaman#	define cfgetospeed(tp)		((tp)->c_cflag & CBAUD)
52*906afcb8SAndy Fiddaman#   endif /* _lib_tcgetattr */
53*906afcb8SAndy Fiddaman#   undef TIOCGETC
54*906afcb8SAndy Fiddaman#else
55*906afcb8SAndy Fiddaman#   define cfgetospeed(tp)	((tp)->c_cflag & CBAUD)
56*906afcb8SAndy Fiddaman#   define cfgetispeed(tp)	((tp)->c_cflag & CBAUD)
57*906afcb8SAndy Fiddaman#   define cfsetispeed(tp,val)	((tp)->c_cflag &=~ CBAUD,(tp)->c_cflag|=(val))
58*906afcb8SAndy Fiddaman#   define cfsetospeed(tp,val)	((tp)->c_cflag &=~ CBAUD,(tp)->c_cflag|=(val))
59*906afcb8SAndy Fiddaman#   ifdef _hdr_termio
60*906afcb8SAndy Fiddaman#	include	<termio.h>
61*906afcb8SAndy Fiddaman#   else
62*906afcb8SAndy Fiddaman#	ifdef _sys_termio
63*906afcb8SAndy Fiddaman#	    include	<sys/termio.h>
64*906afcb8SAndy Fiddaman#	    define _hdr_termio 1
65*906afcb8SAndy Fiddaman#	endif /* _sys_termio */
66*906afcb8SAndy Fiddaman#   endif /* _hdr_termio */
67*906afcb8SAndy Fiddaman#   ifdef _hdr_termio
68*906afcb8SAndy Fiddaman#	define termios termio
69*906afcb8SAndy Fiddaman#	undef TIOCGETC
70*906afcb8SAndy Fiddaman#	define tcgetattr(fd,tty)	ioctl(fd, TCGETA, tty)
71*906afcb8SAndy Fiddaman#	define tcsetattr(fd,action,tty)	ioctl(fd, action, tty)
72*906afcb8SAndy Fiddaman
73*906afcb8SAndy Fiddaman#	ifdef _sys_bsdtty
74*906afcb8SAndy Fiddaman#	   include	<sys/bsdtty.h>
75*906afcb8SAndy Fiddaman#	endif /* _sys_bsdtty */
76*906afcb8SAndy Fiddaman#   else
77*906afcb8SAndy Fiddaman#	ifdef _hdr_sgtty
78*906afcb8SAndy Fiddaman#	    include	<sgtty.h>
79*906afcb8SAndy Fiddaman#	    ifndef LPENDIN
80*906afcb8SAndy Fiddaman#	        ifdef _sys_nttyio
81*906afcb8SAndy Fiddaman#		    include	<sys/nttyio.h>
82*906afcb8SAndy Fiddaman#	        endif /* _sys_nttyio */
83*906afcb8SAndy Fiddaman#	    endif /* LPENDIN */
84*906afcb8SAndy Fiddaman#	    define termios sgttyb
85*906afcb8SAndy Fiddaman#	    ifdef TIOCSETN
86*906afcb8SAndy Fiddaman#	 	undef TCSETAW
87*906afcb8SAndy Fiddaman#	    endif /* TIOCSETN */
88*906afcb8SAndy Fiddaman#	    ifdef TIOCGETP
89*906afcb8SAndy Fiddaman#		define tcgetattr(fd,tty)	ioctl(fd, TIOCGETP, tty)
90*906afcb8SAndy Fiddaman#		define tcsetattr(fd,action,tty)	ioctl(fd, action, tty)
91*906afcb8SAndy Fiddaman#	    else
92*906afcb8SAndy Fiddaman#		define tcgetattr(fd,tty)	gtty(fd, tty)
93*906afcb8SAndy Fiddaman#		define tcsetattr(fd,action,tty)	stty(fd, tty)
94*906afcb8SAndy Fiddaman#	    endif /* TIOCGETP */
95*906afcb8SAndy Fiddaman#	else
96*906afcb8SAndy Fiddaman#		ifdef _sys_ttyio
97*906afcb8SAndy Fiddaman#			include <sys/ttyio.h>
98*906afcb8SAndy Fiddaman#		endif
99*906afcb8SAndy Fiddaman#	endif /* _hdr_sgtty */
100*906afcb8SAndy Fiddaman#   endif /* hdr_termio */
101*906afcb8SAndy Fiddaman
102*906afcb8SAndy Fiddaman#   ifndef TCSANOW
103*906afcb8SAndy Fiddaman#	ifdef TCSETAW
104*906afcb8SAndy Fiddaman#	    define TCSANOW		TCSETA
105*906afcb8SAndy Fiddaman#	    define TCSAFLUSH		TCSETAF
106*906afcb8SAndy Fiddaman#	else
107*906afcb8SAndy Fiddaman#	    ifdef TIOCSETN
108*906afcb8SAndy Fiddaman#		define TCSANOW		TIOCSETN
109*906afcb8SAndy Fiddaman#		define TCSADRAIN	TIOCSETN
110*906afcb8SAndy Fiddaman#		define TCSAFLUSH	TIOCSETP
111*906afcb8SAndy Fiddaman#	    endif /* TIOCSETN */
112*906afcb8SAndy Fiddaman#	endif /* TCSETAW */
113*906afcb8SAndy Fiddaman#   endif /* TCSANOW */
114*906afcb8SAndy Fiddaman#endif /* _hdr_termios */
115*906afcb8SAndy Fiddaman
116*906afcb8SAndy Fiddaman/* set ECHOCTL if driver can echo control charaters as ^c */
117*906afcb8SAndy Fiddaman#ifdef LCTLECH
118*906afcb8SAndy Fiddaman#   ifndef ECHOCTL
119*906afcb8SAndy Fiddaman#	define ECHOCTL	LCTLECH
120*906afcb8SAndy Fiddaman#   endif /* !ECHOCTL */
121*906afcb8SAndy Fiddaman#endif /* LCTLECH */
122*906afcb8SAndy Fiddaman#ifdef LNEW_CTLECH
123*906afcb8SAndy Fiddaman#   ifndef ECHOCTL
124*906afcb8SAndy Fiddaman#	define ECHOCTL  LNEW_CTLECH
125*906afcb8SAndy Fiddaman#   endif /* !ECHOCTL */
126*906afcb8SAndy Fiddaman#endif /* LNEW_CTLECH */
127*906afcb8SAndy Fiddaman#ifdef LNEW_PENDIN
128*906afcb8SAndy Fiddaman#   ifndef PENDIN
129*906afcb8SAndy Fiddaman#	define PENDIN LNEW_PENDIN
130*906afcb8SAndy Fiddaman#  endif /* !PENDIN */
131*906afcb8SAndy Fiddaman#endif /* LNEW_PENDIN */
132*906afcb8SAndy Fiddaman
133*906afcb8SAndy Fiddaman
134*906afcb8SAndy Fiddaman#endif
135