Project

General

Profile

Statistics
| Revision:

root / lab4 / .minix-src / include / sys / ttydefaults.h @ 14

History | View | Annotate | Download (3.86 KB)

1 13 up20180614
/*        $NetBSD: ttydefaults.h,v 1.16 2008/05/24 14:06:39 yamt Exp $        */
2
3
/*-
4
 * Copyright (c) 1982, 1986, 1993
5
 *        The Regents of the University of California.  All rights reserved.
6
 * (c) UNIX System Laboratories, Inc.
7
 * All or some portions of this file are derived from material licensed
8
 * to the University of California by American Telephone and Telegraph
9
 * Co. or Unix System Laboratories, Inc. and are reproduced herein with
10
 * the permission of UNIX System Laboratories, Inc.
11
 *
12
 * Redistribution and use in source and binary forms, with or without
13
 * modification, are permitted provided that the following conditions
14
 * are met:
15
 * 1. Redistributions of source code must retain the above copyright
16
 *    notice, this list of conditions and the following disclaimer.
17
 * 2. Redistributions in binary form must reproduce the above copyright
18
 *    notice, this list of conditions and the following disclaimer in the
19
 *    documentation and/or other materials provided with the distribution.
20
 * 3. Neither the name of the University nor the names of its contributors
21
 *    may be used to endorse or promote products derived from this software
22
 *    without specific prior written permission.
23
 *
24
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
25
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
26
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
27
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
28
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
29
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34
 * SUCH DAMAGE.
35
 *
36
 *        @(#)ttydefaults.h        8.4 (Berkeley) 1/21/94
37
 */
38
39
/*
40
 * System wide defaults for terminal state.
41
 */
42
#ifndef _SYS_TTYDEFAULTS_H_
43
#define        _SYS_TTYDEFAULTS_H_
44
45
/*
46
 * Defaults on "first" open.
47
 */
48
#define        TTYDEF_IFLAG        (BRKINT | ICRNL | IMAXBEL | IXON | IXANY)
49
#define TTYDEF_OFLAG        (OPOST | ONLCR | OXTABS)
50
#define TTYDEF_LFLAG        (ECHO | ICANON | ISIG | IEXTEN | ECHOE|ECHOKE|ECHOCTL)
51
#define TTYDEF_CFLAG        (CREAD | CS8 | HUPCL)
52
#if defined(__minix)
53
#define TTYDEF_SPEED        (B115200)
54
#else
55
#define TTYDEF_SPEED        (B9600)
56
#endif /* defined(__minix) */
57
58
/*
59
 * Control Character Defaults
60
 */
61
#define CTRL(x)        (x&037)
62
#define        CEOF                CTRL('d')
63
#define        CEOL                ((unsigned char)'\377')        /* XXX avoid _POSIX_VDISABLE */
64
#if defined(__minix)
65
#define        CERASE                CTRL('h')
66
#else
67
#define        CERASE                0177
68
#endif /* defined(__minix) */
69
#define        CINTR                CTRL('c')
70
#define        CSTATUS                CTRL('t')
71
#define        CKILL                CTRL('u')
72
#define        CMIN                1
73
#define        CQUIT                034                /* FS, ^\ */
74
#define        CSUSP                CTRL('z')
75
#define        CTIME                0
76
#define        CDSUSP                CTRL('y')
77
#define        CSTART                CTRL('q')
78
#define        CSTOP                CTRL('s')
79
#define        CLNEXT                CTRL('v')
80
#define        CDISCARD         CTRL('o')
81
#define        CWERASE         CTRL('w')
82
#define        CREPRINT         CTRL('r')
83
#define        CEOT                CEOF
84
/* compat */
85
#define        CBRK                CEOL
86
#define CRPRNT                CREPRINT
87
#define        CFLUSH                CDISCARD
88
89
/* PROTECTED INCLUSION ENDS HERE */
90
#endif /* !_SYS_TTYDEFAULTS_H_ */
91
92
/*
93
 * #define TTYDEFCHARS to include an array of default control characters.
94
 */
95
#ifdef _KERNEL
96
#ifdef TTYDEFCHARS
97
const cc_t ttydefchars[NCCS] = {
98
        [VEOF] = CEOF,
99
        [VEOL] = CEOL,
100
        [VEOL2] = CEOL,
101
        [VERASE] = CERASE,
102
        [VWERASE] = CWERASE,
103
        [VKILL] = CKILL,
104
        [VREPRINT] = CREPRINT,
105
        [7] = _POSIX_VDISABLE,        /* spare */
106
        [VINTR] = CINTR,
107
        [VQUIT] = CQUIT,
108
        [VSUSP] = CSUSP,
109
        [VDSUSP] = CDSUSP,
110
        [VSTART] = CSTART,
111
        [VSTOP] = CSTOP,
112
        [VLNEXT] = CLNEXT,
113
        [VDISCARD] = CDISCARD,
114
        [VMIN] = CMIN,
115
        [VTIME] = CTIME,
116
        [VSTATUS] = CSTATUS,
117
        [19] = _POSIX_VDISABLE,        /* spare */
118
};
119
#undef TTYDEFCHARS
120
#else
121
extern const cc_t ttydefchars[NCCS];
122
#endif
123
#endif /* _KERNEL */