ntp_tty.h revision 82499
1/* 2 * ntp_tty.h - header file for serial lines handling 3 */ 4 5#ifndef NTP_TTY_H 6#define NTP_TTY_H 7 8#if defined(HAVE_BSD_TTYS) 9#include <sgtty.h> 10#define TTY struct sgttyb 11#endif /* HAVE_BSD_TTYS */ 12 13#if defined(HAVE_SYSV_TTYS) 14#include <termio.h> 15#define TTY struct termio 16#ifndef tcsetattr 17#define tcsetattr(fd, cmd, arg) ioctl(fd, cmd, arg) 18#endif 19#ifndef TCSANOW 20#define TCSANOW TCSETA 21#endif 22#ifndef TCIFLUSH 23#define TCIFLUSH 0 24#endif 25#ifndef TCOFLUSH 26#define TCOFLUSH 1 27#endif 28#ifndef TCIOFLUSH 29#define TCIOFLUSH 2 30#endif 31#ifndef tcflush 32#define tcflush(fd, arg) ioctl(fd, TCFLSH, arg) 33#endif 34#endif /* HAVE_SYSV_TTYS */ 35 36#if defined(HAVE_TERMIOS) 37# ifdef TERMIOS_NEEDS__SVID3 38# define _SVID3 39# endif 40# include <termios.h> 41# ifdef TERMIOS_NEEDS__SVID3 42# undef _SVID3 43# endif 44#define TTY struct termios 45#endif 46 47#if defined(HAVE_SYS_MODEM_H) 48#include <sys/modem.h> 49#endif 50 51#if !defined(SYSV_TTYS) && !defined(STREAM) & !defined(BSD_TTYS) 52#define BSD_TTYS 53#endif /* SYSV_TTYS STREAM BSD_TTYS */ 54 55/* 56 * Line discipline flags. These require line discipline or streams 57 * modules to be installed/loaded in the kernel. If specified, but not 58 * installed, the code runs as if unspecified. 59 */ 60#define LDISC_STD 0x0 /* standard */ 61#define LDISC_CLK 0x1 /* tty_clk \n intercept */ 62#define LDISC_CLKPPS 0x2 /* tty_clk \377 intercept */ 63#define LDISC_ACTS 0x4 /* tty_clk #* intercept */ 64#define LDISC_CHU 0x8 /* depredated */ 65#define LDISC_PPS 0x10 /* ppsclock, ppsapi */ 66#define LDISC_RAW 0x20 /* raw binary */ 67 68#endif /* NTP_TTY_H */ 69