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)*/
31 /* exit timeout after piped ust reaches EOF */
33 long nstimeout
= 1000;
39 * ttyS* - any standard serial port
40 * ttyUSB* - any USB serial port
43 * cuau* - does not wait for DCD
44 * ttyu* - 'dial-in' device, waits for DCD
49 * cua* - does not wait for DCD
50 * tty* - 'dial-in' device, waits for DCD
55 * dty* - opening does not block, does not wait for DCD
56 * tty* - 'dial-in' device, blocks opening until a connection is established
59 char line
[16] = "/dev/cuau0";
62 * baud is usually configurable to standard values only,
63 * custom speed requires both hardware and driver support
65 unsigned int ispeed
= 9600;
66 unsigned int ospeed
= 9600;
69 * data bits: can be 8,7,6 or 5.
75 * stop bits: setting this to 1 enables 2 stop bits for all numbers of data bits
76 * except 5 - it's 1.5 in that case
78 int stopb
= 0; /*(0|1)*/
81 * local echo (half-duplex mode) and canonical mode
83 int half
= 0; /*(0|1)*/
84 int canonical
= 0; /*(0|1)*/
88 * CR and LF (NL) translation options
90 CRLFOpt tropts
= { 0 };
91 CRLFOpt itropts
= { 0 };
94 * backspace: setting to one makes `^H` the backspace character, `^?` otherwise
96 int backspace
= 0; /*(0|1)*/
99 * the minimum of characters input before sending them to the line
101 int minchars
= 1; /*(>=1)*/
104 * delay between single characters being sent if the buffer has
105 * more than 1 (redirected stdin, writing a file)
111 * XON/XOFF flow control
112 * can be enabled with hardware flow control simultaneously
114 int soft
= 0; /*(0|1)*/
117 * hardware flow control
119 * 2 - DTR/DSR (not supported on some platforms)
122 int hard
= 0; /*(0|1|2|3)*/
128 int parity
= 0; /*(0|1|2)*/