… | |
… | |
18 | #endif |
18 | #endif |
19 | |
19 | |
20 | /* ways to deal with getting/setting termios structure */ |
20 | /* ways to deal with getting/setting termios structure */ |
21 | |
21 | |
22 | /* termios interface */ |
22 | /* termios interface */ |
23 | # ifdef TCSANOW /* POSIX */ |
|
|
24 | # define GET_TERMIOS(fd,tios) tcgetattr (fd, tios) |
23 | #define GET_TERMIOS(fd,tios) tcgetattr (fd, tios) |
25 | # define SET_TERMIOS(fd,tios) \ |
24 | #define SET_TERMIOS(fd,tios) \ |
26 | cfsetospeed (tios, BAUDRATE), \ |
25 | cfsetospeed (tios, BAUDRATE), \ |
27 | cfsetispeed (tios, BAUDRATE), \ |
26 | cfsetispeed (tios, BAUDRATE), \ |
28 | tcsetattr (fd, TCSANOW, tios) |
27 | tcsetattr (fd, TCSANOW, tios) |
29 | # else |
|
|
30 | # ifdef TIOCSETA |
|
|
31 | # define GET_TERMIOS(fd,tios) ioctl (fd, TIOCGETA, tios) |
|
|
32 | # define SET_TERMIOS(fd,tios) \ |
|
|
33 | tios->c_cflag |= BAUDRATE, \ |
|
|
34 | ioctl (fd, TIOCSETA, tios) |
|
|
35 | # else |
|
|
36 | # define GET_TERMIOS(fd,tios) ioctl (fd, TCGETS, tios) |
|
|
37 | # define SET_TERMIOS(fd,tios) \ |
|
|
38 | tios->c_cflag |= BAUDRATE, \ |
|
|
39 | ioctl (fd, TCSETS, tios) |
|
|
40 | # endif |
|
|
41 | # endif |
|
|
42 | # define SET_TTYMODE(fd,tios) SET_TERMIOS (fd, tios) |
|
|
43 | |
28 | |
44 | /* use the fastest baud-rate */ |
29 | /* use the fastest baud-rate */ |
45 | #ifdef B38400 |
30 | #ifdef B38400 |
46 | # define BAUDRATE B38400 |
31 | # define BAUDRATE B38400 |
47 | #else |
32 | #else |