]> andersk Git - openssh.git/blob - ttymodes.h
- Merged OpenBSD CVS changes:
[openssh.git] / ttymodes.h
1 /*
2
3 ttymodes.h
4
5 Author: Tatu Ylonen <ylo@cs.hut.fi>
6         SGTTY stuff contributed by Janne Snabb <snabb@niksula.hut.fi>
7
8 Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
9                    All rights reserved
10
11 Created: Tue Mar 21 15:42:09 1995 ylo
12
13 */
14
15 /* RCSID("$Id$"); */
16
17 /* The tty mode description is a stream of bytes.  The stream consists of
18    opcode-arguments pairs.  It is terminated by opcode TTY_OP_END (0).
19    Opcodes 1-127 have one-byte arguments.  Opcodes 128-159 have integer
20    arguments.  Opcodes 160-255 are not yet defined, and cause parsing to
21    stop (they should only be used after any other data).
22
23    The client puts in the stream any modes it knows about, and the
24    server ignores any modes it does not know about.  This allows some degree
25    of machine-independence, at least between systems that use a posix-like
26    tty interface.  The protocol can support other systems as well, but might
27    require reimplementing as mode names would likely be different. */
28      
29 /* Some constants and prototypes are defined in packet.h; this file
30    is only intended for including from ttymodes.h. */
31
32 /* termios macro */             /* sgtty macro */
33 /* name, op */
34 TTYCHAR(VINTR, 1)               SGTTYCHAR(tiotc.t_intrc, 1)
35 TTYCHAR(VQUIT, 2)               SGTTYCHAR(tiotc.t_quitc, 2)
36 TTYCHAR(VERASE, 3)              SGTTYCHAR(tio.sg_erase, 3)
37 #if defined(VKILL)
38 TTYCHAR(VKILL, 4)               SGTTYCHAR(tio.sg_kill, 4)
39 #endif /* VKILL */
40 TTYCHAR(VEOF, 5)                SGTTYCHAR(tiotc.t_eofc, 5)
41 #if defined(VEOL)
42 TTYCHAR(VEOL, 6)                SGTTYCHAR(tiotc.t_brkc, 6)
43 #endif /* VEOL */
44 #ifdef VEOL2                    /* n/a */
45 TTYCHAR(VEOL2, 7)
46 #endif /* VEOL2 */
47 TTYCHAR(VSTART, 8)              SGTTYCHAR(tiotc.t_startc, 8)
48 TTYCHAR(VSTOP, 9)               SGTTYCHAR(tiotc.t_stopc, 9)
49 #if defined(VSUSP)
50 TTYCHAR(VSUSP, 10)              SGTTYCHAR(tioltc.t_suspc, 10)
51 #endif /* VSUSP */
52 #if defined(VDSUSP)
53 TTYCHAR(VDSUSP, 11)             SGTTYCHAR(tioltc.t_dsuspc, 11)
54 #endif /* VDSUSP */
55 #if defined(VREPRINT)
56 TTYCHAR(VREPRINT, 12)           SGTTYCHAR(tioltc.t_rprntc, 12)
57 #endif /* VREPRINT */
58 #if defined(VWERASE)
59 TTYCHAR(VWERASE, 13)            SGTTYCHAR(tioltc.t_werasc, 13)
60 #endif /* VWERASE */
61 #if defined(VLNEXT)
62 TTYCHAR(VLNEXT, 14)             SGTTYCHAR(tioltc.t_lnextc, 14)
63 #endif /* VLNEXT */
64 #if defined(VFLUSH)
65 TTYCHAR(VFLUSH, 15)             SGTTYCHAR(tioltc.t_flushc, 15)
66 #endif /* VFLUSH */
67 #ifdef VSWTCH
68 TTYCHAR(VSWTCH, 16)             /* n/a */
69 #endif /* VSWTCH */
70 #if defined(VSTATUS)
71 TTYCHAR(VSTATUS, 17)            SGTTYCHAR(tiots.tc_statusc, 17)
72 #endif /* VSTATUS */
73 #ifdef VDISCARD
74 TTYCHAR(VDISCARD, 18)           /* n/a */
75 #endif /* VDISCARD */
76
77 /* name, field, op */
78 TTYMODE(IGNPAR, c_iflag, 30)    /* n/a */
79 TTYMODE(PARMRK, c_iflag, 31)    /* n/a */
80 TTYMODE(INPCK,  c_iflag, 32)    SGTTYMODEN(ANYP, tio.sg_flags, 32)
81 TTYMODE(ISTRIP, c_iflag, 33)    SGTTYMODEN(LPASS8, tiolm, 33)
82 TTYMODE(INLCR,  c_iflag, 34)    /* n/a */
83 TTYMODE(IGNCR,  c_iflag, 35)    /* n/a */
84 TTYMODE(ICRNL,  c_iflag, 36)    SGTTYMODE(CRMOD, tio.sg_flags, 36)
85 #if defined(IUCLC)
86 TTYMODE(IUCLC,  c_iflag, 37)    SGTTYMODE(LCASE, tio.sg_flags, 37)
87 #endif
88 TTYMODE(IXON,   c_iflag, 38)    /* n/a */
89 TTYMODE(IXANY,  c_iflag, 39)    SGTTYMODEN(LDECCTQ, tiolm, 39)
90 TTYMODE(IXOFF,  c_iflag, 40)    SGTTYMODE(TANDEM, tio.sg_flags, 40)
91 #ifdef IMAXBEL
92 TTYMODE(IMAXBEL,c_iflag, 41)    /* n/a */
93 #endif /* IMAXBEL */
94
95 TTYMODE(ISIG,   c_lflag, 50)    /* n/a */
96 TTYMODE(ICANON, c_lflag, 51)    SGTTYMODEN(CBREAK, tio.sg_flags, 51)
97 #ifdef XCASE
98 TTYMODE(XCASE,  c_lflag, 52)    /* n/a */
99 #endif
100 TTYMODE(ECHO,   c_lflag, 53)    SGTTYMODE(ECHO, tio.sg_flags, 53)
101 TTYMODE(ECHOE,  c_lflag, 54)    SGTTYMODE(LCRTERA, tiolm, 54)
102 TTYMODE(ECHOK,  c_lflag, 55)    SGTTYMODE(LCRTKIL, tiolm, 55)
103 TTYMODE(ECHONL, c_lflag, 56)    /* n/a */
104 TTYMODE(NOFLSH, c_lflag, 57)    SGTTYMODE(LNOFLSH, tiolm, 57)
105 TTYMODE(TOSTOP, c_lflag, 58)    SGTTYMODE(LTOSTOP, tiolm, 58)
106 #ifdef IEXTEN
107 TTYMODE(IEXTEN, c_lflag, 59)    /* n/a */
108 #endif /* IEXTEN */
109 #if defined(ECHOCTL)
110 TTYMODE(ECHOCTL,c_lflag, 60)    SGTTYMODE(LCTLECH, tiolm, 60)
111 #endif /* ECHOCTL */
112 #ifdef ECHOKE
113 TTYMODE(ECHOKE, c_lflag, 61)    /* n/a */
114 #endif /* ECHOKE */
115 #if defined(PENDIN)
116 TTYMODE(PENDIN, c_lflag, 62)    SGTTYMODE(LPENDIN, tiolm, 62)
117 #endif /* PENDIN */
118
119 TTYMODE(OPOST,  c_oflag, 70)    /* n/a */
120 #if defined(OLCUC)
121 TTYMODE(OLCUC,  c_oflag, 71)    SGTTYMODE(LCASE, tio.sg_flags, 71)
122 #endif
123 TTYMODE(ONLCR,  c_oflag, 72)    SGTTYMODE(CRMOD, tio.sg_flags, 72)
124 #ifdef OCRNL
125 TTYMODE(OCRNL,  c_oflag, 73)    /* n/a */
126 #endif
127 #ifdef ONOCR
128 TTYMODE(ONOCR,  c_oflag, 74)    /* n/a */
129 #endif
130 #ifdef ONLRET
131 TTYMODE(ONLRET, c_oflag, 75)    /* n/a */
132 #endif
133
134 TTYMODE(CS7,    c_cflag, 90)    /* n/a */
135 TTYMODE(CS8,    c_cflag, 91)    SGTTYMODE(LPASS8, tiolm, 91)
136 TTYMODE(PARENB, c_cflag, 92)    /* n/a */
137 TTYMODE(PARODD, c_cflag, 93)    SGTTYMODE(ODDP, tio.sg_flags, 93)
138
This page took 0.04391 seconds and 5 git commands to generate.