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