|
|
1.1 root 1: /*
2: * reset - set the teletype mode bits to be sensible
3: *
4: * Kurt Shoens
5: *
6: * Very useful after crapping out in raw.
7: * Modified by Mark Horton to know about tchars
8: * and to not mess with peoples chars unless they are null.
9: */
10: #include <sgtty.h>
11: #define chk(val, dft) (val==0 ? dft : val)
12:
13: main()
14: {
15: struct sgttyb buf;
16: struct tchars tbuf;
17:
18: gtty(2, &buf);
19: ioctl(2, TIOCGETC, &tbuf);
20: buf.sg_flags &= ~(RAW|CBREAK|VTDELAY|ALLDELAY);
21: buf.sg_flags |= XTABS|ECHO|CRMOD|ANYP;
22: buf.sg_erase = chk(buf.sg_erase, '\08'); /* ^H */
23: buf.sg_kill = chk(buf.sg_kill, '\30'); /* ^X */
24: tbuf.t_intrc = chk(tbuf.t_intrc, '\177'); /* ^? */
25: tbuf.t_quitc = chk(tbuf.t_quitc, '\34'); /* ^\ */
26: tbuf.t_startc = chk(tbuf.t_startc, '\22'); /* ^Q */
27: tbuf.t_stopc = chk(tbuf.t_stopc, '\24'); /* ^S */
28: tbuf.t_eofc = chk(tbuf.t_eofc, '\4'); /* ^D */
29: /* brkc is left alone */
30: ioctl(2, TIOCSETN, &buf);
31: ioctl(2, TIOCSETC, &tbuf);
32: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.