Annotation of researchv10no/ncurses/screen/setbuffred.c, revision 1.1

1.1     ! root        1: /*
        !             2:  * This routine is one of the main things
        !             3:  * in this level of curses that depends on the outside
        !             4:  * environment.
        !             5:  */
        !             6: #include "curses.ext"
        !             7: /*     @(#) setbuffred.c: 1.1 10/15/83 (1.7    10/27/82)       */
        !             8: 
        !             9: static short    baud_convert[] =
        !            10: {
        !            11:        0, 50, 75, 110, 135, 150, 200, 300, 600, 1200,
        !            12:        1800, 2400, 4800, 9600, 19200, 38400
        !            13: };
        !            14: 
        !            15: /*
        !            16:  * Force output to be buffered.
        !            17:  * Also figures out the baud rate.
        !            18:  * Grouped here because they are machine dependent.
        !            19:  */
        !            20: _setbuffered(fd)
        !            21: FILE *fd;
        !            22: {
        !            23:        char *sobuf;
        !            24:        char *calloc();
        !            25:        SGTTY   sg;
        !            26: 
        !            27:        sobuf = calloc(1, BUFSIZ);
        !            28:        setbuf(fd, sobuf);
        !            29: 
        !            30: # ifdef USG
        !            31:        ioctl (fileno (fd), TCGETA, &sg);
        !            32:        SP->baud = sg.c_cflag&CBAUD ? baud_convert[sg.c_cflag&CBAUD] : 1200;
        !            33: # else
        !            34:        ioctl (fileno (fd), TIOCGETP, &sg);
        !            35:        SP->baud = sg.sg_ospeed ? baud_convert[sg.sg_ospeed] : 1200;
        !            36: # endif
        !            37: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.