| /**************************************************************************** | |
| * include/sys/ttydefaults.h | |
| * | |
| * SPDX-License-Identifier: BSD-3-Clause | |
| * SPDX-FileCopyrightText: 1982, 1986, 1993 The Regents of the University of California. All rights reserved. | |
| * | |
| * Redistribution and use in source and binary forms, with or without | |
| * modification, are permitted provided that the following conditions | |
| * are met: | |
| * 1. Redistributions of source code must retain the above copyright | |
| * notice, this list of conditions and the following disclaimer. | |
| * 2. Redistributions in binary form must reproduce the above copyright | |
| * notice, this list of conditions and the following disclaimer in the | |
| * documentation and/or other materials provided with the distribution. | |
| * 3. Neither the name of the University nor the names of its contributors | |
| * may be used to endorse or promote products derived from this software | |
| * without specific prior written permission. | |
| * | |
| * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND | |
| * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
| * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
| * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE | |
| * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |
| * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | |
| * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | |
| * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | |
| * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | |
| * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | |
| * SUCH DAMAGE. | |
| * | |
| ****************************************************************************/ | |
| #ifndef __INCLUDE_SYS_TTYDEFAULTS_H | |
| #define __INCLUDE_SYS_TTYDEFAULTS_H | |
| /**************************************************************************** | |
| * Pre-processor Definitions | |
| ****************************************************************************/ | |
| /* System wide defaults for terminal state. Compatible with the historical | |
| * 4.4BSD <sys/ttydefaults.h> used by portable command line utilities. | |
| */ | |
| /* Control Character Defaults */ | |
| #define CTRL(x) ((x) & 037) | |
| #define CEOF CTRL('d') | |
| #ifdef _POSIX_VDISABLE | |
| # define CEOL _POSIX_VDISABLE | |
| #else | |
| # define CEOL '\0' /* XXX avoid _POSIX_VDISABLE requirement */ | |
| #endif | |
| #define CERASE 0177 | |
| #define CINTR CTRL('c') | |
| #define CSTATUS CTRL('t') | |
| #define CKILL CTRL('u') | |
| #define CMIN 1 | |
| #define CQUIT 034 /* FS, ^\ */ | |
| #define CSUSP CTRL('z') | |
| #define CTIME 0 | |
| #define CDSUSP CTRL('y') | |
| #define CSTART CTRL('q') | |
| #define CSTOP CTRL('s') | |
| #define CLNEXT CTRL('v') | |
| #define CDISCARD CTRL('o') | |
| #define CWERASE CTRL('w') | |
| #define CREPRINT CTRL('r') | |
| #define CEOT CEOF | |
| /* Compat */ | |
| #define CBRK CEOL | |
| #define CRPRNT CREPRINT | |
| #define CFLUSH CDISCARD | |
| /* PROTECTED INCLUSION ENDS HERE */ | |
| /* #define TTYDEFCHARS to include an array of default control characters. */ | |
| #ifdef TTYDEFCHARS | |
| static const cc_t ttydefchars[] = | |
| { | |
| CEOF, CEOL, CEOL, CERASE, CWERASE, CKILL, CREPRINT, CERASE, CINTR, | |
| CQUIT, CSUSP, CDSUSP, CSTART, CSTOP, CLNEXT, CDISCARD, CMIN, CTIME, | |
| CSTATUS, _POSIX_VDISABLE | |
| }; | |
| #undef TTYDEFCHARS | |
| #endif /* TTYDEFCHARS */ | |
| /* Default terminal flag values (only used if referenced). */ | |
| #define TTYDEF_IFLAG (BRKINT | ISTRIP | ICRNL | IMAXBEL | IXON | IXANY) | |
| #define TTYDEF_OFLAG (OPOST | ONLCR) | |
| #define TTYDEF_LFLAG (ECHO | ICANON | ISIG | IEXTEN | ECHOE | ECHOKE | ECHOCTL) | |
| #define TTYDEF_CFLAG (CREAD | CS7 | PARENB | HUPCL) | |
| #define TTYDEF_SPEED (B9600) | |
| #endif /* __INCLUDE_SYS_TTYDEFAULTS_H */ |