… | |
… | |
11 | # ifdef HAVE_SETLOCALE |
11 | # ifdef HAVE_SETLOCALE |
12 | # include <clocale> |
12 | # include <clocale> |
13 | # endif |
13 | # endif |
14 | #endif /* HAVE_XLOCALE */ |
14 | #endif /* HAVE_XLOCALE */ |
15 | |
15 | |
16 | #if defined(PTYS_ARE_PTMX) && !defined(__CYGWIN32__) |
|
|
17 | # include <sys/resource.h> /* for struct rlimit */ |
|
|
18 | # define _NEW_TTY_CTRL /* to get proper defines in <termios.h> */ |
|
|
19 | #endif |
|
|
20 | |
|
|
21 | #ifdef __QNX__ /* autoconf someday */ |
|
|
22 | # include <process.h> |
|
|
23 | #endif |
|
|
24 | |
|
|
25 | #ifdef TTY_GID_SUPPORT |
16 | #ifdef TTY_GID_SUPPORT |
26 | # include <grp.h> |
17 | # include <grp.h> |
27 | #endif |
18 | #endif |
28 | |
19 | |
29 | /* ways to deal with getting/setting termios structure */ |
20 | /* ways to deal with getting/setting termios structure */ |
30 | |
21 | |
31 | #ifdef HAVE_TERMIOS_H |
|
|
32 | /* termios interface */ |
22 | /* termios interface */ |
33 | # ifdef TCSANOW /* POSIX */ |
23 | # ifdef TCSANOW /* POSIX */ |
34 | # define GET_TERMIOS(fd,tios) tcgetattr (fd, tios) |
24 | # define GET_TERMIOS(fd,tios) tcgetattr (fd, tios) |
35 | # define SET_TERMIOS(fd,tios) \ |
25 | # define SET_TERMIOS(fd,tios) \ |
36 | cfsetospeed (tios, BAUDRATE), \ |
26 | cfsetospeed (tios, BAUDRATE), \ |
37 | cfsetispeed (tios, BAUDRATE), \ |
27 | cfsetispeed (tios, BAUDRATE), \ |
38 | tcsetattr (fd, TCSANOW, tios) |
28 | tcsetattr (fd, TCSANOW, tios) |
39 | # else |
29 | # else |
40 | # ifdef TIOCSETA |
30 | # ifdef TIOCSETA |
41 | # define GET_TERMIOS(fd,tios) ioctl (fd, TIOCGETA, tios) |
31 | # define GET_TERMIOS(fd,tios) ioctl (fd, TIOCGETA, tios) |
42 | # define SET_TERMIOS(fd,tios) \ |
32 | # define SET_TERMIOS(fd,tios) \ |
43 | tios->c_cflag |= BAUDRATE, \ |
33 | tios->c_cflag |= BAUDRATE, \ |
44 | ioctl (fd, TIOCSETA, tios) |
34 | ioctl (fd, TIOCSETA, tios) |
45 | # else |
35 | # else |
46 | # define GET_TERMIOS(fd,tios) ioctl (fd, TCGETS, tios) |
36 | # define GET_TERMIOS(fd,tios) ioctl (fd, TCGETS, tios) |
47 | # define SET_TERMIOS(fd,tios) \ |
37 | # define SET_TERMIOS(fd,tios) \ |
48 | tios->c_cflag |= BAUDRATE, \ |
38 | tios->c_cflag |= BAUDRATE, \ |
49 | ioctl (fd, TCSETS, tios) |
39 | ioctl (fd, TCSETS, tios) |
50 | # endif |
40 | # endif |
51 | # endif |
41 | # endif |
52 | # define SET_TTYMODE(fd,tios) SET_TERMIOS (fd, tios) |
42 | # define SET_TTYMODE(fd,tios) SET_TERMIOS (fd, tios) |
53 | #else |
|
|
54 | /* sgtty interface */ |
|
|
55 | |
|
|
56 | # define SET_TTYMODE(fd,tt) \ |
|
|
57 | tt->sg.sg_ispeed = tt->sg.sg_ospeed = BAUDRATE, \ |
|
|
58 | ioctl (fd, TIOCSETP, & (tt->sg)), \ |
|
|
59 | ioctl (fd, TIOCSETC, & (tt->tc)), \ |
|
|
60 | ioctl (fd, TIOCSLTC, & (tt->lc)), \ |
|
|
61 | ioctl (fd, TIOCSETD, & (tt->line)), \ |
|
|
62 | ioctl (fd, TIOCLSET, & (tt->local)) |
|
|
63 | #endif /* HAVE_TERMIOS_H */ |
|
|
64 | |
43 | |
65 | /* use the fastest baud-rate */ |
44 | /* use the fastest baud-rate */ |
66 | #ifdef B38400 |
45 | #ifdef B38400 |
67 | # define BAUDRATE B38400 |
46 | # define BAUDRATE B38400 |
68 | #else |
47 | #else |
… | |
… | |
141 | |
120 | |
142 | #ifndef O_NOCTTY |
121 | #ifndef O_NOCTTY |
143 | # define O_NOCTTY 0 |
122 | # define O_NOCTTY 0 |
144 | #endif |
123 | #endif |
145 | #ifndef ONLCR |
124 | #ifndef ONLCR |
146 | # define ONLCR 0 /* QNX, at least */ |
125 | # define ONLCR 0 |
147 | #endif |
126 | #endif |
148 | |
127 | |
149 | #define CONSOLE "/dev/console" /* console device */ |
128 | #define CONSOLE "/dev/console" /* console device */ |
150 | |
129 | |
151 | #endif /* _INIT_H_ */ |
130 | #endif /* _INIT_H_ */ |