Annotation of linux/include/termios.h, revision 1.1.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.