xref: /onnv-gate/usr/src/cmd/ttymon/sttytable.c (revision 9354:9559ac454e7e)
10Sstevel@tonic-gate /*
20Sstevel@tonic-gate  * CDDL HEADER START
30Sstevel@tonic-gate  *
40Sstevel@tonic-gate  * The contents of this file are subject to the terms of the
5*9354STim.Marsland@Sun.COM  * Common Development and Distribution License (the "License").
6*9354STim.Marsland@Sun.COM  * You may not use this file except in compliance with the License.
70Sstevel@tonic-gate  *
80Sstevel@tonic-gate  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
90Sstevel@tonic-gate  * or http://www.opensolaris.org/os/licensing.
100Sstevel@tonic-gate  * See the License for the specific language governing permissions
110Sstevel@tonic-gate  * and limitations under the License.
120Sstevel@tonic-gate  *
130Sstevel@tonic-gate  * When distributing Covered Code, include this CDDL HEADER in each
140Sstevel@tonic-gate  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
150Sstevel@tonic-gate  * If applicable, add the following below this CDDL HEADER, with the
160Sstevel@tonic-gate  * fields enclosed by brackets "[]" replaced with your own identifying
170Sstevel@tonic-gate  * information: Portions Copyright [yyyy] [name of copyright owner]
180Sstevel@tonic-gate  *
190Sstevel@tonic-gate  * CDDL HEADER END
200Sstevel@tonic-gate  */
21*9354STim.Marsland@Sun.COM 
220Sstevel@tonic-gate /*
23*9354STim.Marsland@Sun.COM  * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
240Sstevel@tonic-gate  * Use is subject to license terms.
250Sstevel@tonic-gate  */
260Sstevel@tonic-gate 
270Sstevel@tonic-gate /*
280Sstevel@tonic-gate  * Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T
290Sstevel@tonic-gate  * All Rights Reserved
300Sstevel@tonic-gate  *
310Sstevel@tonic-gate  */
320Sstevel@tonic-gate 
330Sstevel@tonic-gate #include <stdio.h>
340Sstevel@tonic-gate #include <sys/types.h>
350Sstevel@tonic-gate #include <termio.h>
360Sstevel@tonic-gate #include <sys/stermio.h>
370Sstevel@tonic-gate #include <sys/termiox.h>
380Sstevel@tonic-gate #include "stty.h"
390Sstevel@tonic-gate 
400Sstevel@tonic-gate const struct	speeds speeds[] = {
410Sstevel@tonic-gate 	"0",		B0,		0,
420Sstevel@tonic-gate 	"50",		B50,		50,
430Sstevel@tonic-gate 	"75",		B75,		75,
440Sstevel@tonic-gate 	"110",		B110,		110,
450Sstevel@tonic-gate 	"134",		B134,		134,
460Sstevel@tonic-gate 	"134.5", 	B134,		134,
470Sstevel@tonic-gate 	"150",		B150,		150,
480Sstevel@tonic-gate 	"200",		B200,		200,
490Sstevel@tonic-gate 	"300",		B300,		300,
500Sstevel@tonic-gate 	"600",		B600,		600,
510Sstevel@tonic-gate 	"1200",		B1200,		1200,
520Sstevel@tonic-gate 	"1800",		B1800,		1800,
530Sstevel@tonic-gate 	"2400",		B2400,		2400,
540Sstevel@tonic-gate 	"4800",		B4800,		4800,
550Sstevel@tonic-gate 	"9600",		B9600,		9600,
560Sstevel@tonic-gate 	"19200",	B19200,		19200,
570Sstevel@tonic-gate 	"19.2",		B19200,		19200,
580Sstevel@tonic-gate 	"38400",	B38400,		38400,
590Sstevel@tonic-gate 	"38.4",		B38400,		38400,
600Sstevel@tonic-gate 	"57600",	B57600,		57600,
610Sstevel@tonic-gate 	"57.6",		B57600,		57600,
620Sstevel@tonic-gate 	"76800",	B76800,		76800,
630Sstevel@tonic-gate 	"76.8",		B76800,		76800,
640Sstevel@tonic-gate 	"115200",	B115200,	115200,
650Sstevel@tonic-gate 	"115.2",	B115200,	115200,
660Sstevel@tonic-gate 	"153600",	B153600,	153600,
670Sstevel@tonic-gate 	"153.6",	B153600,	153600,
680Sstevel@tonic-gate 	"230400",	B230400,	230400,
690Sstevel@tonic-gate 	"230.4",	B230400,	230400,
700Sstevel@tonic-gate 	"307200",	B307200,	307200,
710Sstevel@tonic-gate 	"307.2",	B307200,	307200,
720Sstevel@tonic-gate 	"460800",	B460800,	460800,
730Sstevel@tonic-gate 	"460.8",	B460800,	460800,
74*9354STim.Marsland@Sun.COM 	"921600",	B921600,	921600,
75*9354STim.Marsland@Sun.COM 	"921.6",	B921600,	921600,
760Sstevel@tonic-gate 	0,
770Sstevel@tonic-gate };
780Sstevel@tonic-gate 
790Sstevel@tonic-gate const struct mds cmodes[] = {
800Sstevel@tonic-gate 	"-parity", CS8, PARENB|CSIZE,
810Sstevel@tonic-gate 	"-evenp", CS8, PARENB|CSIZE,
820Sstevel@tonic-gate 	"-oddp", CS8, PARENB|PARODD|CSIZE,
830Sstevel@tonic-gate 	"parity", PARENB|CS7, PARODD|CSIZE,
840Sstevel@tonic-gate 	"evenp", PARENB|CS7, PARODD|CSIZE,
850Sstevel@tonic-gate 	"oddp", PARENB|PARODD|CS7, CSIZE,
860Sstevel@tonic-gate 	"parenb", PARENB, 0,
870Sstevel@tonic-gate 	"-parenb", 0, PARENB,
880Sstevel@tonic-gate 	"parodd", PARODD, 0,
890Sstevel@tonic-gate 	"-parodd", 0, PARODD,
900Sstevel@tonic-gate 	"cs8", CS8, CSIZE,
910Sstevel@tonic-gate 	"cs7", CS7, CSIZE,
920Sstevel@tonic-gate 	"cs6", CS6, CSIZE,
930Sstevel@tonic-gate 	"cs5", CS5, CSIZE,
940Sstevel@tonic-gate 	"cstopb", CSTOPB, 0,
950Sstevel@tonic-gate 	"-cstopb", 0, CSTOPB,
960Sstevel@tonic-gate 	"hupcl", HUPCL, 0,
970Sstevel@tonic-gate 	"hup", HUPCL, 0,
980Sstevel@tonic-gate 	"-hupcl", 0, HUPCL,
990Sstevel@tonic-gate 	"-hup", 0, HUPCL,
1000Sstevel@tonic-gate 	"clocal", CLOCAL, 0,
1010Sstevel@tonic-gate 	"-clocal", 0, CLOCAL,
1020Sstevel@tonic-gate 	"loblk", LOBLK, 0,
1030Sstevel@tonic-gate 	"-loblk", 0, LOBLK,
1040Sstevel@tonic-gate 	"cread", CREAD, 0,
1050Sstevel@tonic-gate 	"-cread", 0, CREAD,
1060Sstevel@tonic-gate 	"crtscts", (long)CRTSCTS, 0,
1070Sstevel@tonic-gate 	"-crtscts", 0, (long)CRTSCTS,
1080Sstevel@tonic-gate 	"crtsxoff", CRTSXOFF, 0,
1090Sstevel@tonic-gate 	"-crtsxoff", 0, CRTSXOFF,
1100Sstevel@tonic-gate 	"raw", CS8, (CSIZE|PARENB),
1110Sstevel@tonic-gate 	"-raw", (CS7|PARENB), CSIZE,
1120Sstevel@tonic-gate 	"cooked", (CS7|PARENB), CSIZE,
1130Sstevel@tonic-gate 	"sane", (CS7|PARENB|CREAD), (CSIZE|PARODD|CLOCAL),
1140Sstevel@tonic-gate 	0
1150Sstevel@tonic-gate };
1160Sstevel@tonic-gate 
1170Sstevel@tonic-gate const struct mds ncmodes[] = {
1180Sstevel@tonic-gate 	"parext", PAREXT, 0,
1190Sstevel@tonic-gate 	"-parext", 0, PAREXT,
1200Sstevel@tonic-gate 	"markp", (PARENB|PARODD|CS7|PAREXT), CSIZE,
1210Sstevel@tonic-gate 	"-markp", CS8, (PARENB|PARODD|CSIZE|PAREXT),
1220Sstevel@tonic-gate 	"spacep", (PARENB|CS7|PAREXT), PARODD|CSIZE,
1230Sstevel@tonic-gate 	"-spacep", CS8, (PARENB|CSIZE|PAREXT),
1240Sstevel@tonic-gate 	0
1250Sstevel@tonic-gate };
1260Sstevel@tonic-gate 
1270Sstevel@tonic-gate const struct mds imodes[] = {
1280Sstevel@tonic-gate 	"ignbrk", IGNBRK, 0,
1290Sstevel@tonic-gate 	"-ignbrk", 0, IGNBRK,
1300Sstevel@tonic-gate 	"brkint", BRKINT, 0,
1310Sstevel@tonic-gate 	"-brkint", 0, BRKINT,
1320Sstevel@tonic-gate 	"ignpar", IGNPAR, 0,
1330Sstevel@tonic-gate 	"-ignpar", 0, IGNPAR,
1340Sstevel@tonic-gate 	"parmrk", PARMRK, 0,
1350Sstevel@tonic-gate 	"-parmrk", 0, PARMRK,
1360Sstevel@tonic-gate 	"inpck", INPCK, 0,
1370Sstevel@tonic-gate 	"-inpck", 0, INPCK,
1380Sstevel@tonic-gate 	"istrip", ISTRIP, 0,
1390Sstevel@tonic-gate 	"-istrip", 0, ISTRIP,
1400Sstevel@tonic-gate 	"inlcr", INLCR, 0,
1410Sstevel@tonic-gate 	"-inlcr", 0, INLCR,
1420Sstevel@tonic-gate 	"igncr", IGNCR, 0,
1430Sstevel@tonic-gate 	"-igncr", 0, IGNCR,
1440Sstevel@tonic-gate 	"icrnl", ICRNL, 0,
1450Sstevel@tonic-gate 	"-icrnl", 0, ICRNL,
1460Sstevel@tonic-gate #ifdef XPG4
1470Sstevel@tonic-gate 	"-nl", 0, (ICRNL|INLCR|IGNCR),
1480Sstevel@tonic-gate 	"nl", ICRNL, 0,
1490Sstevel@tonic-gate #else
1500Sstevel@tonic-gate 	"-nl", ICRNL, (INLCR|IGNCR),
1510Sstevel@tonic-gate 	"nl", 0, ICRNL,
1520Sstevel@tonic-gate #endif
1530Sstevel@tonic-gate 	"iuclc", IUCLC, 0,
1540Sstevel@tonic-gate 	"-iuclc", 0, IUCLC,
1550Sstevel@tonic-gate 	"lcase", IUCLC, 0,
1560Sstevel@tonic-gate 	"-lcase", 0, IUCLC,
1570Sstevel@tonic-gate 	"LCASE", IUCLC, 0,
1580Sstevel@tonic-gate 	"-LCASE", 0, IUCLC,
1590Sstevel@tonic-gate 	"ixon", IXON, 0,
1600Sstevel@tonic-gate 	"-ixon", 0, IXON,
1610Sstevel@tonic-gate 	"ixany", IXANY, 0,
1620Sstevel@tonic-gate 	"-ixany", 0, IXANY,
1630Sstevel@tonic-gate 	"ixoff", IXOFF, 0,
1640Sstevel@tonic-gate 	"-ixoff", 0, IXOFF,
1650Sstevel@tonic-gate 	"raw", 0, -1,
1660Sstevel@tonic-gate 	"-raw", (BRKINT|IGNPAR|ISTRIP|ICRNL|IXON), 0,
1670Sstevel@tonic-gate 	"cooked", (BRKINT|IGNPAR|ISTRIP|ICRNL|IXON), 0,
1680Sstevel@tonic-gate 	"sane", (BRKINT|IGNPAR|ISTRIP|ICRNL|IXON|IMAXBEL),
1690Sstevel@tonic-gate 		(IGNBRK|PARMRK|INPCK|INLCR|IGNCR|IUCLC|IXOFF|IXANY),
1700Sstevel@tonic-gate 	0
1710Sstevel@tonic-gate };
1720Sstevel@tonic-gate 
1730Sstevel@tonic-gate 
1740Sstevel@tonic-gate const struct mds nimodes[] = {
1750Sstevel@tonic-gate 	"imaxbel", IMAXBEL, 0,
1760Sstevel@tonic-gate 	"-imaxbel", 0, IMAXBEL,
1770Sstevel@tonic-gate 	0
1780Sstevel@tonic-gate };
1790Sstevel@tonic-gate 
1800Sstevel@tonic-gate const struct mds lmodes[] = {
1810Sstevel@tonic-gate 	"isig", ISIG, 0,
1820Sstevel@tonic-gate 	"-isig", 0, ISIG,
1830Sstevel@tonic-gate 	"icanon", ICANON, 0,
1840Sstevel@tonic-gate 	"-icanon", 0, ICANON,
1850Sstevel@tonic-gate 	"xcase", XCASE, 0,
1860Sstevel@tonic-gate 	"-xcase", 0, XCASE,
1870Sstevel@tonic-gate 	"lcase", XCASE, 0,
1880Sstevel@tonic-gate 	"-lcase", 0, XCASE,
1890Sstevel@tonic-gate 	"LCASE", XCASE, 0,
1900Sstevel@tonic-gate 	"-LCASE", 0, XCASE,
1910Sstevel@tonic-gate 	"echo", ECHO, 0,
1920Sstevel@tonic-gate 	"-echo", 0, ECHO,
1930Sstevel@tonic-gate 	"echoe", ECHOE, 0,
1940Sstevel@tonic-gate 	"-echoe", 0, ECHOE,
1950Sstevel@tonic-gate 	"echok", ECHOK, 0,
1960Sstevel@tonic-gate 	"-echok", 0, ECHOK,
1970Sstevel@tonic-gate 	"lfkc", ECHOK, 0,
1980Sstevel@tonic-gate 	"-lfkc", 0, ECHOK,
1990Sstevel@tonic-gate 	"echonl", ECHONL, 0,
2000Sstevel@tonic-gate 	"-echonl", 0, ECHONL,
2010Sstevel@tonic-gate 	"noflsh", NOFLSH, 0,
2020Sstevel@tonic-gate 	"-noflsh", 0, NOFLSH,
2030Sstevel@tonic-gate 	"raw", 0, (ISIG|ICANON|XCASE),
2040Sstevel@tonic-gate 	"-raw", (ISIG|ICANON), 0,
2050Sstevel@tonic-gate 	"cooked", (ISIG|ICANON), 0,
2060Sstevel@tonic-gate 	"sane", (ISIG|ICANON|IEXTEN|ECHO|ECHOK|ECHOE|ECHOKE|ECHOCTL),
2070Sstevel@tonic-gate 		(XCASE|ECHONL|NOFLSH|STFLUSH|STWRAP|STAPPL),
2080Sstevel@tonic-gate 	"stflush", STFLUSH, 0,
2090Sstevel@tonic-gate 	"-stflush", 0, STFLUSH,
2100Sstevel@tonic-gate 	"stwrap", STWRAP, 0,
2110Sstevel@tonic-gate 	"-stwrap", 0, STWRAP,
2120Sstevel@tonic-gate 	"stappl", STAPPL, 0,
2130Sstevel@tonic-gate 	"-stappl", 0, STAPPL,
2140Sstevel@tonic-gate 	0,
2150Sstevel@tonic-gate };
2160Sstevel@tonic-gate 
2170Sstevel@tonic-gate const struct mds nlmodes[] = {
2180Sstevel@tonic-gate 	"tostop", TOSTOP, 0,
2190Sstevel@tonic-gate 	"-tostop", 0, TOSTOP,
2200Sstevel@tonic-gate 	"echoctl", ECHOCTL, 0,
2210Sstevel@tonic-gate 	"-echoctl", 0, ECHOCTL,
2220Sstevel@tonic-gate 	"echoprt", ECHOPRT, 0,
2230Sstevel@tonic-gate 	"-echoprt", 0, ECHOPRT,
2240Sstevel@tonic-gate 	"echoke", ECHOKE, 0,
2250Sstevel@tonic-gate 	"-echoke", 0, ECHOKE,
2260Sstevel@tonic-gate 	"defecho", DEFECHO, 0,
2270Sstevel@tonic-gate 	"-defecho", 0, DEFECHO,
2280Sstevel@tonic-gate 	"flusho", FLUSHO, 0,
2290Sstevel@tonic-gate 	"-flusho", 0, FLUSHO,
2300Sstevel@tonic-gate 	"pendin", PENDIN, 0,
2310Sstevel@tonic-gate 	"-pendin", 0, PENDIN,
2320Sstevel@tonic-gate 	"iexten", IEXTEN, 0,
2330Sstevel@tonic-gate 	"-iexten", 0, IEXTEN,
2340Sstevel@tonic-gate 	0
2350Sstevel@tonic-gate };
2360Sstevel@tonic-gate 
2370Sstevel@tonic-gate const struct mds omodes[] = {
2380Sstevel@tonic-gate 	"opost", OPOST, 0,
2390Sstevel@tonic-gate 	"-opost", 0, OPOST,
2400Sstevel@tonic-gate 	"olcuc", OLCUC, 0,
2410Sstevel@tonic-gate 	"-olcuc", 0, OLCUC,
2420Sstevel@tonic-gate 	"lcase", OLCUC, 0,
2430Sstevel@tonic-gate 	"-lcase", 0, OLCUC,
2440Sstevel@tonic-gate 	"LCASE", OLCUC, 0,
2450Sstevel@tonic-gate 	"-LCASE", 0, OLCUC,
2460Sstevel@tonic-gate 	"onlcr", ONLCR, 0,
2470Sstevel@tonic-gate 	"-onlcr", 0, ONLCR,
2480Sstevel@tonic-gate 	"-nl", ONLCR, (OCRNL|ONLRET),
2490Sstevel@tonic-gate 	"nl", 0, ONLCR,
2500Sstevel@tonic-gate 	"ocrnl", OCRNL, 0,
2510Sstevel@tonic-gate 	"-ocrnl", 0, OCRNL,
2520Sstevel@tonic-gate 	"onocr", ONOCR, 0,
2530Sstevel@tonic-gate 	"-onocr", 0, ONOCR,
2540Sstevel@tonic-gate 	"onlret", ONLRET, 0,
2550Sstevel@tonic-gate 	"-onlret", 0, ONLRET,
2560Sstevel@tonic-gate 	"fill", OFILL, OFDEL,
2570Sstevel@tonic-gate 	"-fill", 0, OFILL|OFDEL,
2580Sstevel@tonic-gate 	"nul-fill", OFILL, OFDEL,
2590Sstevel@tonic-gate 	"del-fill", OFILL|OFDEL, 0,
2600Sstevel@tonic-gate 	"ofill", OFILL, 0,
2610Sstevel@tonic-gate 	"-ofill", 0, OFILL,
2620Sstevel@tonic-gate 	"ofdel", OFDEL, 0,
2630Sstevel@tonic-gate 	"-ofdel", 0, OFDEL,
2640Sstevel@tonic-gate 	"cr0", CR0, CRDLY,
2650Sstevel@tonic-gate 	"cr1", CR1, CRDLY,
2660Sstevel@tonic-gate 	"cr2", CR2, CRDLY,
2670Sstevel@tonic-gate 	"cr3", CR3, CRDLY,
2680Sstevel@tonic-gate 	"tab0", TAB0, TABDLY,
2690Sstevel@tonic-gate 	"tabs", TAB0, TABDLY,
2700Sstevel@tonic-gate 	"tab1", TAB1, TABDLY,
2710Sstevel@tonic-gate 	"tab2", TAB2, TABDLY,
2720Sstevel@tonic-gate 	"tab3", TAB3, TABDLY,
2730Sstevel@tonic-gate 	"-tabs", TAB3, TABDLY,
2740Sstevel@tonic-gate 	"tab8", TAB3, TABDLY,
2750Sstevel@tonic-gate 	"nl0", NL0, NLDLY,
2760Sstevel@tonic-gate 	"nl1", NL1, NLDLY,
2770Sstevel@tonic-gate 	"ff0", FF0, FFDLY,
2780Sstevel@tonic-gate 	"ff1", FF1, FFDLY,
2790Sstevel@tonic-gate 	"vt0", VT0, VTDLY,
2800Sstevel@tonic-gate 	"vt1", VT1, VTDLY,
2810Sstevel@tonic-gate 	"bs0", BS0, BSDLY,
2820Sstevel@tonic-gate 	"bs1", BS1, BSDLY,
2830Sstevel@tonic-gate 	"raw", 0, OPOST,
2840Sstevel@tonic-gate 	"-raw", OPOST, 0,
2850Sstevel@tonic-gate 	"cooked", OPOST, 0,
2860Sstevel@tonic-gate 	"tty33", CR1, (CRDLY|TABDLY|NLDLY|FFDLY|VTDLY|BSDLY),
2870Sstevel@tonic-gate 	"tn300", CR1, (CRDLY|TABDLY|NLDLY|FFDLY|VTDLY|BSDLY),
2880Sstevel@tonic-gate 	"ti700", CR2, (CRDLY|TABDLY|NLDLY|FFDLY|VTDLY|BSDLY),
2890Sstevel@tonic-gate 	"vt05", NL1, (CRDLY|TABDLY|NLDLY|FFDLY|VTDLY|BSDLY),
2900Sstevel@tonic-gate 	"tek", FF1, (CRDLY|TABDLY|NLDLY|FFDLY|VTDLY|BSDLY),
2910Sstevel@tonic-gate 	"tty37", (FF1|VT1|CR2|TAB1|NL1), (NLDLY|CRDLY|TABDLY|BSDLY|VTDLY|FFDLY),
2920Sstevel@tonic-gate 	"sane", (OPOST|ONLCR), (OLCUC|OCRNL|ONOCR|ONLRET|OFILL|OFDEL|
2930Sstevel@tonic-gate 			NLDLY|CRDLY|TABDLY|BSDLY|VTDLY|FFDLY),
2940Sstevel@tonic-gate 	0,
2950Sstevel@tonic-gate };
2960Sstevel@tonic-gate 
2970Sstevel@tonic-gate const struct mds hmodes[] = {
2980Sstevel@tonic-gate 	"-rtsxoff", 0, RTSXOFF,
2990Sstevel@tonic-gate 	"rtsxoff", RTSXOFF, 0,
3000Sstevel@tonic-gate 	"-ctsxon", 0, CTSXON,
3010Sstevel@tonic-gate 	"ctsxon", CTSXON, 0,
3020Sstevel@tonic-gate 	"-dtrxoff", 0, DTRXOFF,
3030Sstevel@tonic-gate 	"dtrxoff", DTRXOFF, 0,
3040Sstevel@tonic-gate 	"-cdxon", 0, CDXON,
3050Sstevel@tonic-gate 	"cdxon", CDXON, 0,
3060Sstevel@tonic-gate 	"-isxoff", 0, ISXOFF,
3070Sstevel@tonic-gate 	"isxoff", ISXOFF, 0,
3080Sstevel@tonic-gate 	0,
3090Sstevel@tonic-gate };
3100Sstevel@tonic-gate 
3110Sstevel@tonic-gate const struct mds clkmodes[] = {
3120Sstevel@tonic-gate 	"xcibrg", XCIBRG, XMTCLK,
3130Sstevel@tonic-gate 	"xctset", XCTSET, XMTCLK,
3140Sstevel@tonic-gate 	"xcrset", XCRSET, XMTCLK,
3150Sstevel@tonic-gate 	"rcibrg", RCIBRG, RCVCLK,
3160Sstevel@tonic-gate 	"rctset", RCTSET, RCVCLK,
3170Sstevel@tonic-gate 	"rcrset", RCRSET, RCVCLK,
3180Sstevel@tonic-gate 	"tsetcoff", TSETCOFF, TSETCLK,
3190Sstevel@tonic-gate 	"tsetcrbrg", TSETCRBRG, TSETCLK,
3200Sstevel@tonic-gate 	"tsetctbrg", TSETCTBRG, TSETCLK,
3210Sstevel@tonic-gate 	"tsetctset", TSETCTSET, TSETCLK,
3220Sstevel@tonic-gate 	"tsetcrset", TSETCRSET, TSETCLK,
3230Sstevel@tonic-gate 	"rsetcoff", RSETCOFF, RSETCLK,
3240Sstevel@tonic-gate 	"rsetcrbrg", RSETCRBRG, RSETCLK,
3250Sstevel@tonic-gate 	"rsetctbrg", RSETCTBRG, RSETCLK,
3260Sstevel@tonic-gate 	"rsetctset", RSETCTSET, RSETCLK,
3270Sstevel@tonic-gate 	"rsetcrset", RSETCRSET, RSETCLK,
3280Sstevel@tonic-gate 	"async", XCIBRG|RCIBRG|TSETCOFF|RSETCOFF, XMTCLK|RCVCLK|TSETCLK|RSETCLK,
3290Sstevel@tonic-gate 	0,
3300Sstevel@tonic-gate };
3310Sstevel@tonic-gate 
3320Sstevel@tonic-gate const char *not_supported[] =  {
3330Sstevel@tonic-gate 	"rtsxoff",
3340Sstevel@tonic-gate 	"ctsxon",
3350Sstevel@tonic-gate 	"dtrxoff",
3360Sstevel@tonic-gate 	"cdxon",
3370Sstevel@tonic-gate 	"isxoff",
3380Sstevel@tonic-gate 	"xcibrg",
3390Sstevel@tonic-gate 	"xctset",
3400Sstevel@tonic-gate 	"scrset",
3410Sstevel@tonic-gate 	"rcibrg",
3420Sstevel@tonic-gate 	"rctset",
3430Sstevel@tonic-gate 	"rcrset",
3440Sstevel@tonic-gate 	"tsetcoff",
3450Sstevel@tonic-gate 	"tsetcrbrg",
3460Sstevel@tonic-gate 	"rsetcbrg",
3470Sstevel@tonic-gate 	"rsetctbrg",
3480Sstevel@tonic-gate 	"rsetctset",
3490Sstevel@tonic-gate 	"rsetcrset",
3500Sstevel@tonic-gate 	0,
3510Sstevel@tonic-gate };
352