Annotation of linux/include/termios.h, revision 1.1

1.1     ! root        1: #ifndef _TERMIOS_H
        !             2: #define _TERMIOS_H
        !             3: 
        !             4: #define TTY_BUF_SIZE 1024
        !             5: 
        !             6: /* 0x54 is just a magic number to make these relatively uniqe ('T') */
        !             7: 
        !             8: #define TCGETS         0x5401
        !             9: #define TCSETS         0x5402
        !            10: #define TCSETSW                0x5403
        !            11: #define TCSETSF                0x5404
        !            12: #define TCGETA         0x5405
        !            13: #define TCSETA         0x5406
        !            14: #define TCSETAW                0x5407
        !            15: #define TCSETAF                0x5408
        !            16: #define TCSBRK         0x5409
        !            17: #define TCXONC         0x540A
        !            18: #define TCFLSH         0x540B
        !            19: #define TIOCEXCL       0x540C
        !            20: #define TIOCNXCL       0x540D
        !            21: #define TIOCSCTTY      0x540E
        !            22: #define TIOCGPGRP      0x540F
        !            23: #define TIOCSPGRP      0x5410
        !            24: #define TIOCOUTQ       0x5411
        !            25: #define TIOCSTI                0x5412
        !            26: #define TIOCGWINSZ     0x5413
        !            27: #define TIOCSWINSZ     0x5414
        !            28: #define TIOCMGET       0x5415
        !            29: #define TIOCMBIS       0x5416
        !            30: #define TIOCMBIC       0x5417
        !            31: #define TIOCMSET       0x5418
        !            32: #define TIOCGSOFTCAR   0x5419
        !            33: #define TIOCSSOFTCAR   0x541A
        !            34: 
        !            35: struct winsize {
        !            36:        unsigned short ws_row;
        !            37:        unsigned short ws_col;
        !            38:        unsigned short ws_xpixel;
        !            39:        unsigned short ws_ypixel;
        !            40: };
        !            41: 
        !            42: #define NCC 8
        !            43: struct termio {
        !            44:        unsigned short c_iflag;         /* input mode flags */
        !            45:        unsigned short c_oflag;         /* output mode flags */
        !            46:        unsigned short c_cflag;         /* control mode flags */
        !            47:        unsigned short c_lflag;         /* local mode flags */
        !            48:        unsigned char c_line;           /* line discipline */
        !            49:        unsigned char c_cc[NCC];        /* control characters */
        !            50: };
        !            51: 
        !            52: #define NCCS 17
        !            53: struct termios {
        !            54:        unsigned long c_iflag;          /* input mode flags */
        !            55:        unsigned long c_oflag;          /* output mode flags */
        !            56:        unsigned long c_cflag;          /* control mode flags */
        !            57:        unsigned long c_lflag;          /* local mode flags */
        !            58:        unsigned char c_line;           /* line discipline */
        !            59:        unsigned char c_cc[NCCS];       /* control characters */
        !            60: };
        !            61: 
        !            62: /* c_cc characters */
        !            63: #define VINTR 0
        !            64: #define VQUIT 1
        !            65: #define VERASE 2
        !            66: #define VKILL 3
        !            67: #define VEOF 4
        !            68: #define VTIME 5
        !            69: #define VMIN 6
        !            70: #define VSWTC 7
        !            71: #define VSTART 8
        !            72: #define VSTOP 9
        !            73: #define VSUSP 10
        !            74: #define VEOL 11
        !            75: #define VREPRINT 12
        !            76: #define VDISCARD 13
        !            77: #define VWERASE 14
        !            78: #define VLNEXT 15
        !            79: #define VEOL2 16
        !            80: 
        !            81: /* c_iflag bits */
        !            82: #define IGNBRK 0000001
        !            83: #define BRKINT 0000002
        !            84: #define IGNPAR 0000004
        !            85: #define PARMRK 0000010
        !            86: #define INPCK  0000020
        !            87: #define ISTRIP 0000040
        !            88: #define INLCR  0000100
        !            89: #define IGNCR  0000200
        !            90: #define ICRNL  0000400
        !            91: #define IUCLC  0001000
        !            92: #define IXON   0002000
        !            93: #define IXANY  0004000
        !            94: #define IXOFF  0010000
        !            95: #define IMAXBEL        0020000
        !            96: 
        !            97: /* c_oflag bits */
        !            98: #define OPOST  0000001
        !            99: #define OLCUC  0000002
        !           100: #define ONLCR  0000004
        !           101: #define OCRNL  0000010
        !           102: #define ONOCR  0000020
        !           103: #define ONLRET 0000040
        !           104: #define OFILL  0000100
        !           105: #define OFDEL  0000200
        !           106: #define NLDLY  0000400
        !           107: #define   NL0  0000000
        !           108: #define   NL1  0000400
        !           109: #define CRDLY  0003000
        !           110: #define   CR0  0000000
        !           111: #define   CR1  0001000
        !           112: #define   CR2  0002000
        !           113: #define   CR3  0003000
        !           114: #define TABDLY 0014000
        !           115: #define   TAB0 0000000
        !           116: #define   TAB1 0004000
        !           117: #define   TAB2 0010000
        !           118: #define   TAB3 0014000
        !           119: #define   XTABS        0014000
        !           120: #define BSDLY  0020000
        !           121: #define   BS0  0000000
        !           122: #define   BS1  0020000
        !           123: #define VTDLY  0040000
        !           124: #define   VT0  0000000
        !           125: #define   VT1  0040000
        !           126: #define FFDLY  0040000
        !           127: #define   FF0  0000000
        !           128: #define   FF1  0040000
        !           129: 
        !           130: /* c_cflag bit meaning */
        !           131: #define CBAUD  0000017
        !           132: #define  B0    0000000         /* hang up */
        !           133: #define  B50   0000001
        !           134: #define  B75   0000002
        !           135: #define  B110  0000003
        !           136: #define  B134  0000004
        !           137: #define  B150  0000005
        !           138: #define  B200  0000006
        !           139: #define  B300  0000007
        !           140: #define  B600  0000010
        !           141: #define  B1200 0000011
        !           142: #define  B1800 0000012
        !           143: #define  B2400 0000013
        !           144: #define  B4800 0000014
        !           145: #define  B9600 0000015
        !           146: #define  B19200        0000016
        !           147: #define  B38400        0000017
        !           148: #define CSIZE  0000060
        !           149: #define   CS5  0000000
        !           150: #define   CS6  0000020
        !           151: #define   CS7  0000040
        !           152: #define   CS8  0000060
        !           153: #define CSTOPB 0000100
        !           154: #define CREAD  0000200
        !           155: #define CPARENB        0000400
        !           156: #define CPARODD        0001000
        !           157: #define HUPCL  0002000
        !           158: #define CLOCAL 0004000
        !           159: #define CIBAUD 03600000                /* input baud rate (not used) */
        !           160: #define CRTSCTS        020000000000            /* flow control */
        !           161: 
        !           162: /* c_lflag bits */
        !           163: #define ISIG   0000001
        !           164: #define ICANON 0000002
        !           165: #define XCASE  0000004
        !           166: #define ECHO   0000010
        !           167: #define ECHOE  0000020
        !           168: #define ECHOK  0000040
        !           169: #define ECHONL 0000100
        !           170: #define NOFLSH 0000200
        !           171: #define TOSTOP 0000400
        !           172: #define ECHOCTL        0001000
        !           173: #define ECHOPRT        0002000
        !           174: #define ECHOKE 0004000
        !           175: #define FLUSHO 0010000
        !           176: #define PENDIN 0040000
        !           177: #define IEXTEN 0100000
        !           178: 
        !           179: /* modem lines */
        !           180: #define TIOCM_LE       0x001
        !           181: #define TIOCM_DTR      0x002
        !           182: #define TIOCM_RTS      0x004
        !           183: #define TIOCM_ST       0x008
        !           184: #define TIOCM_SR       0x010
        !           185: #define TIOCM_CTS      0x020
        !           186: #define TIOCM_CAR      0x040
        !           187: #define TIOCM_RNG      0x080
        !           188: #define TIOCM_DSR      0x100
        !           189: #define TIOCM_CD       TIOCM_CAR
        !           190: #define TIOCM_RI       TIOCM_RNG
        !           191: 
        !           192: /* tcflow() and TCXONC use these */
        !           193: #define        TCOOFF          0
        !           194: #define        TCOON           1
        !           195: #define        TCIOFF          2
        !           196: #define        TCION           3
        !           197: 
        !           198: /* tcflush() and TCFLSH use these */
        !           199: #define        TCIFLUSH        0
        !           200: #define        TCOFLUSH        1
        !           201: #define        TCIOFLUSH       2
        !           202: 
        !           203: /* tcsetattr uses these */
        !           204: #define        TCSANOW         0
        !           205: #define        TCSADRAIN       1
        !           206: #define        TCSAFLUSH       2
        !           207: 
        !           208: typedef int speed_t;
        !           209: 
        !           210: extern speed_t cfgetispeed(struct termios *termios_p);
        !           211: extern speed_t cfgetospeed(struct termios *termios_p);
        !           212: extern int cfsetispeed(struct termios *termios_p, speed_t speed);
        !           213: extern int cfsetospeed(struct termios *termios_p, speed_t speed);
        !           214: extern int tcdrain(int fildes);
        !           215: extern int tcflow(int fildes, int action);
        !           216: extern int tcflush(int fildes, int queue_selector);
        !           217: extern int tcgetattr(int fildes, struct termios *termios_p);
        !           218: extern int tcsendbreak(int fildes, int duration);
        !           219: extern int tcsetattr(int fildes, int optional_actions,
        !           220:        struct termios *termios_p);
        !           221: 
        !           222: #endif

unix.superglobalmegacorp.com

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