1/* termios local mode definitions. Linux/generic version.
2 Copyright (C) 2019-2022 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library. If not, see
17 <https://www.gnu.org/licenses/>. */
18
19#ifndef _TERMIOS_H
20# error "Never include <bits/termios-c_lflag.h> directly; use <termios.h> instead."
21#endif
22
23/* c_lflag bits */
24#define ISIG 0000001 /* Enable signals. */
25#define ICANON 0000002 /* Canonical input (erase and kill processing). */
26#if defined __USE_MISC || (defined __USE_XOPEN && !defined __USE_XOPEN2K)
27# define XCASE 0000004
28#endif
29#define ECHO 0000010 /* Enable echo. */
30#define ECHOE 0000020 /* Echo erase character as error-correcting
31 backspace. */
32#define ECHOK 0000040 /* Echo KILL. */
33#define ECHONL 0000100 /* Echo NL. */
34#define NOFLSH 0000200 /* Disable flush after interrupt or quit. */
35#define TOSTOP 0000400 /* Send SIGTTOU for background output. */
36#ifdef __USE_MISC
37# define ECHOCTL 0001000 /* If ECHO is also set, terminal special characters
38 other than TAB, NL, START, and STOP are echoed as
39 ^X, where X is the character with ASCII code 0x40
40 greater than the special character
41 (not in POSIX). */
42# define ECHOPRT 0002000 /* If ICANON and ECHO are also set, characters are
43 printed as they are being erased
44 (not in POSIX). */
45# define ECHOKE 0004000 /* If ICANON is also set, KILL is echoed by erasing
46 each character on the line, as specified by ECHOE
47 and ECHOPRT (not in POSIX). */
48# define FLUSHO 0010000 /* Output is being flushed. This flag is toggled by
49 typing the DISCARD character (not in POSIX). */
50# define PENDIN 0040000 /* All characters in the input queue are reprinted
51 when the next character is read
52 (not in POSIX). */
53#endif
54#define IEXTEN 0100000 /* Enable implementation-defined input
55 processing. */
56#ifdef __USE_MISC
57# define EXTPROC 0200000
58#endif
59