|
|
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.