2 const size_t wbuffsz
= 1024;
3 const size_t rbuffsz
= 1024;
5 /* scratch-pads for input processing */
6 const size_t scratchwsz
= 256;
7 const size_t scratchrsz
= 256;
9 /* `nanosleep()` values inside the read and write loops */
10 const long swritedelay
= 0; /* seconds */
11 const long nswritedelay
= 1000000; /* nanoseconds */
13 /* other names follow the same logic as above */
15 const long sreaddelay
= 0;
16 const long nsreaddelay
= 1000000;
18 /* `nanosleep()` values for the DTR pulse */
19 const long spulsedelay
= 0;
20 const long nspulsedelay
= 1000000;
22 /* lock the opened device */
23 const int exclusive
= 1; /*(0|1)*/
25 /* escape character for interactive use */
26 const char escapechar
= '~';
28 /* print additional info to stderr */
29 int verbose
= 0; /*(0|1)*/
35 * ttyS* - any standard serial port
36 * ttyUSB* - any USB serial port
39 * cuau* - does not wait for DCD
40 * ttyu* - 'dial-in' device, waits for DCD
45 * cua* - does not wait for DCD
46 * tty* - 'dial-in' device, waits for DCD
51 * dty* - opening does not block, does not wait for DCD
52 * tty* - 'dial-in' device, blocks opening until a connection is established
55 char line
[16] = "/dev/cuau0";
58 * baud is usually configurable to standard values only,
59 * custom speed requires both hardware and driver support
61 unsigned int ispeed
= 9600;
62 unsigned int ospeed
= 9600;
65 * data bits: can be 8,7,6 or 5.
71 * stop bits: setting this to 1 enables 2 stop bits for all numbers of data bits
72 * except 5 - it's 1.5 in that case
74 int stopb
= 0; /*(0|1)*/
77 * local echo (half-duplex mode) and canonical mode
79 int half
= 0; /*(0|1)*/
80 int canonical
= 0; /*(0|1)*/
84 * CR and LF (NL) translation options
86 CRLFOpt tropts
= { 0 };
87 CRLFOpt itropts
= { 0 };
90 * backspace: setting to one makes `^H` the backspace character, `^?` otherwise
92 int backspace
= 0; /*(0|1)*/
95 * the minimum of characters input before sending them to the line
97 int minchars
= 1; /*(>=1)*/
100 * delay between single characters being sent if the buffer has
101 * more than 1 (redirected stdin, writing a file)
107 * XON/XOFF flow control
108 * can be enabled with hardware flow control simultaneously
110 int soft
= 0; /*(0|1)*/
113 * hardware flow control
115 * 2 - DTR/DSR (not supported on some platforms)
118 int hard
= 0; /*(0|1|2|3)*/
124 int parity
= 0; /*(0|1|2)*/