summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/termbits.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1995-09-08 17:02:25 +0000
committerUlrich Drepper <drepper@redhat.com>1995-09-08 17:02:25 +0000
commitd2f5be2a1235061b46c51d7530264d086eca46ef (patch)
tree486fbdc7e9d3f2417c26242e36894a54ea6c90a8 /sysdeps/unix/sysv/linux/termbits.h
parentd586354e51250d2aaf83149cf7d15f81e276f038 (diff)
downloadglibc-d2f5be2a1235061b46c51d7530264d086eca46ef.tar.gz
glibc-d2f5be2a1235061b46c51d7530264d086eca46ef.tar.xz
glibc-d2f5be2a1235061b46c51d7530264d086eca46ef.zip
Document new files for Linux i386/ELF port.
Fri Sep  8 16:32:12 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>

        * sysdeps/unix/sysv/linux/Implies,
        sysdeps/unix/sysv/linux/Makefile, sysdeps/unix/sysv/linux/Subdirs,
        sysdeps/unix/sysv/linux/accept.S, sysdeps/unix/sysv/linux/adjtime.c,
        sysdeps/unix/sysv/linux/adjtimex.S, sysdeps/unix/sysv/linux/bind.S,
        sysdeps/unix/sysv/linux/connect.S, sysdeps/unix/sysv/linux/direct.h,
        sysdeps/unix/sysv/linux/dl-machine.h, sysdeps/unix/sysv/linux/errnos.h,
        sysdeps/unix/sysv/linux/fork.S, sysdeps/unix/sysv/linux/gethostid.c,
        sysdeps/unix/sysv/linux/gethostname.C,
        sysdeps/unix/sysv/linux/getpeername.S,
        sysdeps/unix/sysv/linux/getpgid.S, sysdeps/unix/sysv/linux/getpgrp.S,
	sysdeps/unix/sysv/linux/getsockname.S,
	sysdeps/unix/sysv/linux/getsockopt.S, sysdeps/unix/sysv/linux/gtty.S,
	sysdeps/unix/sysv/linux/listen.S, sysdeps/unix/sysv/linux/local_lim.h,
	sysdeps/unix/sysv/linux/madvise.c, sysdeps/unix/sysv/linux/msgctl.c,
	sysdeps/unix/sysv/linux/msgget.c, sysdeps/unix/sysv/linux/msgrcv.c,
	sysdeps/unix/sysv/linux/msgsnd.c, sysdeps/unix/sysv/linux/pipe.S,
	sysdeps/unix/sysv/linux/poll.c, sysdeps/unix/sysv/linux/readv.c,
	sysdeps/unix/sysv/linux/recv.S, sysdeps/unix/sysv/linux/recvfrom.S,
	sysdeps/unix/sysv/linux/recvmsg.S, sysdeps/unix/sysv/linux/semctl.c,
	sysdeps/unix/sysv/linux/semget.c, sysdeps/unix/sysv/linux/semop.c,
	sysdeps/unix/sysv/linux/send.S, sysdeps/unix/sysv/linux/sendmsg.S,
	sysdeps/unix/sysv/linux/sendto.S, sysdeps/unix/sysv/linux/setegid.c,
	sysdeps/unix/sysv/linux/seteuid.c, sysdeps/unix/sysv/linux/sethostid.c,
	sysdeps/unix/sysv/linux/setpgid.c, sysdeps/unix/sysv/linux/setpgrp.c,
	sysdeps/unix/sysv/linux/setsid.S, sysdeps/unix/sysv/linux/setsockopt.S,
	sysdeps/unix/sysv/linux/settimeofday.S,
	sysdeps/unix/sysv/linux/shmat.c, sysdeps/unix/sysv/linux/shmctl.c,
	sysdeps/unix/sysv/linux/shmdt.c, sysdeps/unix/sysv/linux/shmget.c,
	sysdeps/unix/sysv/linux/shutdown.S,
	sysdeps/unix/sysv/linux/sigaction.S, sysdeps/unix/sysv/linux/signal.S,
	sysdeps/unix/sysv/linux/sigpending.S, sysdeps/unix/sysv/linux/sigset.h,
	sysdeps/unix/sysv/linux/sockaddrcom.h,
	sysdeps/unix/sysv/linux/socketpair.S, sysdeps/unix/sysv/linux/speed.c,
	sysdeps/unix/sysv/linux/statbuf.h, sysdeps/unix/sysv/linux/stty.S,
	sysdeps/unix/sysv/linux/syscall.h, sysdeps/unix/sysv/linux/sysconf.c,
	sysdeps/unix/sysv/linux/tcdrain.c, sysdeps/unix/sysv/linux/tcflow.c,
	sysdeps/unix/sysv/linux/tcflush.c, sysdeps/unix/sysv/linux/tcgetattr.c,
	sysdeps/unix/sysv/linux/tcsetattr.c,
	sysdeps/unix/sysv/linux/termbits.h, sysdeps/unix/sysv/linux/ualarm.c,
	sysdeps/unix/sysv/linux/ulimit.c, sysdeps/unix/sysv/linux/usleep.c,
	sysdeps/unix/sysv/linux/utsnamelen.h, sysdeps/unix/sysv/linux/vfork.c,
	sysdeps/unix/sysv/linux/wait.c, sysdeps/unix/sysv/linux/wait4.S,
	sysdeps/unix/sysv/linux/waitpid.c, sysdeps/unix/sysv/linux/writev.c:
	New Linux/ELF specific, architecture independent files.

	sysdeps/unix/sysv/linux/i386/Dist,
	sysdeps/unix/sysv/linux/i386/Makefile,
	sysdeps/unix/sysv/linux/i386/brk.S,
	sysdeps/unix/sysv/linux/i386/fcntlbits.h,
	sysdeps/unix/sysv/linux/i386/fpu_control.c,
	sysdeps/unix/sysv/linux/i386/fpu_control.h,
	sysdeps/unix/sysv/linux/i386/fstat.S,
	sysdeps/unix/sysv/linux/i386/fxstat.S,
	sysdeps/unix/sysv/linux/i386/ieee_fpu.c,
	sysdeps/unix/sysv/linux/i386/init-first.S,
	sysdeps/unix/sysv/linux/i386/ipc.S,
	sysdeps/unix/sysv/linux/i386/lstat.S,
	sysdeps/unix/sysv/linux/i386/lxstat.S,
	sysdeps/unix/sysv/linux/i386/mknod.S,
	sysdeps/unix/sysv/linux/i386/mmap.S,
	sysdeps/unix/sysv/linux/i386/sbrk.S,
	sysdeps/unix/sysv/linux/i386/setfpucw.c,
	sysdeps/unix/sysv/linux/i386/signum.h,
	sysdeps/unix/sysv/linux/i386/socket.S,
	sysdeps/unix/sysv/linux/i386/stat.S,
	sysdeps/unix/sysv/linux/i386/syscall.S,
	sysdeps/unix/sysv/linux/i386/sysdep.S,
	sysdeps/unix/sysv/linux/i386/sysdep.h,
	sysdeps/unix/sysv/linux/i386/xmknod.S,
	sysdeps/unix/sysv/linux/i386/xstat.S:
	New Linux i386/ELF specific files.

	sysdeps/unix/sysv/linux/sys/ipc_buf.h,
	sysdeps/unix/sysv/linux/sys/mman.h,
	sysdeps/unix/sysv/linux/sys/msq_buf.h,
	sysdeps/unix/sysv/linux/sys/sem_buf.h,
	sysdeps/unix/sysv/linux/sys/shm_buf.h,
	sysdeps/unix/sysv/linux/sys/socketcall.h,
	sysdeps/unix/sysv/linux/sys/timex.h:
	New Linux/ELF specific, architecture independent header files.
Diffstat (limited to 'sysdeps/unix/sysv/linux/termbits.h')
-rw-r--r--sysdeps/unix/sysv/linux/termbits.h209
1 files changed, 209 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/termbits.h b/sysdeps/unix/sysv/linux/termbits.h
new file mode 100644
index 0000000000..8a71334ba0
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/termbits.h
@@ -0,0 +1,209 @@
+/* termios type and macro definitions.  Linux version.
+Copyright (C) 1993, 1994, 1995 Free Software Foundation, Inc.
+This file is part of the GNU C Library.
+
+The GNU C Library is free software; you can redistribute it and/or
+modify it under the terms of the GNU Library General Public License as
+published by the Free Software Foundation; either version 2 of the
+License, or (at your option) any later version.
+
+The GNU C Library is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+Library General Public License for more details.
+
+You should have received a copy of the GNU Library General Public
+License along with the GNU C Library; see the file COPYING.LIB.  If
+not, write to the Free Software Foundation, Inc., 675 Mass Ave,
+Cambridge, MA 02139, USA.  */
+
+/* Type of terminal control flag masks.  */
+typedef unsigned int tcflag_t;
+
+/* Type of control characters.  */
+typedef unsigned char cc_t;
+
+/* Type of baud rate specifiers.  */
+typedef unsigned int speed_t;
+
+/* Terminal control structure.  */
+struct termios
+{
+  /* Input modes.  */
+  tcflag_t c_iflag;
+#define	IGNBRK	0x0001		/* Ignore break condition.  */
+#define	BRKINT	0x0002		/* Signal interrupt on break.  */
+#define	IGNPAR	0x0004		/* Ignore characters with parity errors.  */
+#define	PARMRK	0x0008		/* Mark parity and framing errors.  */
+#define	INPCK	0x0010		/* Enable input parity check.  */
+#define	ISTRIP	0x0020		/* Strip 8th bit off characters.  */
+#define	INLCR	0x0040		/* Map NL to CR on input.  */
+#define	IGNCR	0x0080		/* Ignore CR.  */
+#define	ICRNL	0x0100		/* Map CR to NL on input.  */
+#ifdef __USE_BSD
+#define	IUCLC	0x0200		/* Map upper case to lower case on input.  */
+#endif
+#define	IXON	0x0400		/* Enable start/stop output control.  */
+#define	IXOFF	0x1000		/* Enable start/stop input control.  */
+#ifdef	__USE_BSD
+#define	IXANY	0x0800		/* Any character will restart after stop.  */
+#define	IMAXBEL	0x2000		/* Ring bell when input queue is full.  */
+#endif
+
+  /* Output modes.  */
+  tcflag_t c_oflag;
+#define	OPOST	0x0001		/* Perform output processing.  */
+#ifdef	__USE_BSD
+#define	OLCUC	0x00000002	/* Map lower case to upper case on output.  */
+#define	ONLCR	0x00000004	/* Map NL to CR-NL on output.  */
+#define	OCRNL	0x00000008
+#define	ONOCR	0x00000010
+#define	ONLRET	0x00000020
+#define	OFILL	0x00000040
+#define	OFDEL	0x00000080
+#define	NLDLY	0x00000100
+#define	NL0	0
+#define	NL1	0x00000100
+#define	CRDLY	0x00000600
+#define	CR0	0
+#define	CR1	0x00000200
+#define	CR2	0x00000400
+#define	CR3	0x00000600
+#define	TABDLY	0x00001800
+#define	TAB0	0
+#define	TAB1	0x00000800
+#define	TAB2	0x00001000
+#define	XTABS	0x00001800
+#define	TAB3	XTABS
+#define	BSDLY	0x00002000
+#define	BS0	0
+#define	BS1	0x00002000
+#define	VTDLY	0x00004000
+#define	VT0	0
+#define	VT1	0x00004000
+#define	FFDLY	0x00008000
+#define	FF0	0
+#define	FF1	0x00008000
+#define	PAGEOUT	0x00010000
+#define	WRAP	0x00020000
+#endif
+
+  /* Control modes.  */
+  tcflag_t c_cflag;
+#define	CSIZE	(CS5|CS6|CS7|CS8) /* Number of bits per byte (mask).  */
+#define	CS5	0		/* 5 bits per byte.  */
+#define	CS6	0x00000010	/* 6 bits per byte.  */
+#define	CS7	0x00000020	/* 7 bits per byte.  */
+#define	CS8	0x00000030	/* 8 bits per byte.  */
+#define	CSTOPB	0x00000040	/* Two stop bits instead of one.  */
+#define	CREAD	0x00000080	/* Enable receiver.  */
+#define	PARENB	0x00000100	/* Parity enable.  */
+#define	PARODD	0x00000200	/* Odd parity instead of even.  */
+#define	HUPCL	0x00000400	/* Hang up on last close.  */
+#define	CLOCAL	0x00000800	/* Ignore modem status lines.  */
+#ifdef	__USE_BSD
+#define	CRTSCTS	0x08000000
+#define	CBAUD	0x0000000f	/* Mask for speed from c_cflag.  */
+#define CBAUDEX	0x00010000	/* Mask for extended speed from c_cflag.  */
+#endif
+
+  /* Input and output baud rates.  These are encoded in c_cflag.  */
+#define B0      0x000000000
+#define B50     0x000000001
+#define B75     0x000000002
+#define B110    0x000000003
+#define B134    0x000000004
+#define B150    0x000000005
+#define B200    0x000000006
+#define B300    0x000000007
+#define B600    0x000000008
+#define B1200   0x000000009
+#define B1800   0x00000000a
+#define B2400   0x00000000b
+#define B4800   0x00000000c
+#define B9600   0x00000000d
+#define B19200  0x00000000e
+#define B38400  0x00000000f
+#ifdef __USE_BSD
+#define EXTA    0x00000000e
+#define EXTB    0x00000000f
+#endif
+#define B57600	0x000010001
+#define B115200	0x000010002
+#define B230400	0x000010003
+
+  /* Local modes.  */
+  tcflag_t c_lflag;
+#ifdef	__USE_BSD
+#define	ECHOKE	0x00000800	/* Visual erase for KILL.  */
+#endif
+#define	ECHOE	0x00000010	/* Visual erase for ERASE.  */
+#define	ECHOK	0x00000020	/* Echo NL after KILL.  */
+#define	ECHO	0x00000008	/* Enable echo.  */
+#define	ECHONL	0x00000040	/* Echo NL even if ECHO is off.  */
+#ifdef	__USE_BSD
+#define	ECHOPRT	0x00000400	/* Hardcopy visual erase.  */
+#define	ECHOCTL	0x00000200	/* Echo control characters as ^X.  */
+#endif
+#define	ISIG	0x00000001	/* Enable signals.  */
+#define	ICANON	0x00000002	/* Do erase and kill processing.  */
+#define	IEXTEN	0x00008000	/* Enable DISCARD and LNEXT.  */
+#define	TOSTOP	0x00000100	/* Send SIGTTOU for background output.  */
+#ifdef	__USE_BSD
+#define	PENDIN	0x00004000	/* Retype pending input (state).  */
+#endif
+#define	NOFLSH	0x00000080	/* Disable flush after interrupt.  */
+
+  cc_t c_line;			/* Line discipline (?) */
+
+  /* Control characters.  */
+#define	VEOF	4		/* End-of-file character [ICANON].  */
+#define	VEOL	5		/* End-of-line character [ICANON].  */
+#ifdef	__USE_BSD
+#define	VEOL2	6		/* Second EOL character [ICANON].  */
+#define	VSWTCH	7		/* ??? */
+#endif
+#define	VERASE	2		/* Erase character [ICANON].  */
+#ifdef	__USE_BSD
+#define	VWERASE	14		/* Word-erase character [ICANON].  */
+#endif
+#define	VKILL	3		/* Kill-line character [ICANON].  */
+#ifdef	__USE_BSD
+#define	VREPRINT 12		/* Reprint-line character [ICANON].  */
+#endif
+#define	VINTR	0		/* Interrupt character [ISIG].  */
+#define	VQUIT	1		/* Quit character [ISIG].  */
+#define	VSUSP	10		/* Suspend character [ISIG].  */
+#ifdef	__USE_BSD
+#define	VDSUSP	11		/* Delayed suspend character [ISIG].  */
+#endif
+#define	VSTART	8		/* Start (X-ON) character [IXON, IXOFF].  */
+#define	VSTOP	9		/* Stop (X-OFF) character [IXON, IXOFF].  */
+#ifdef	__USE_BSD
+#define	VLNEXT	15		/* Literal-next character [IEXTEN].  */
+#define	VDISCARD 13		/* Discard character [IEXTEN].  */
+#endif
+#define	VMIN	VEOF		/* Minimum number of bytes read at once [!ICANON].  */
+#define	VTIME	VEOL		/* Time-out value (tenths of a second) [!ICANON].  */
+#define	NCCS	19
+  cc_t c_cc[NCCS];
+};
+
+#define _IOT_termios /* Hurd ioctl type field.  */ \
+  _IOT (_IOTS (cflag_t), 4, _IOTS (cc_t), NCCS, _IOTS (speed_t), 2)
+
+/* Values for the OPTIONAL_ACTIONS argument to `tcsetattr'.  */
+#define	TCSANOW		0	/* Change immediately.  */
+#define	TCSADRAIN	1	/* Change when pending output is written.  */
+#define	TCSAFLUSH	2	/* Flush pending input before changing.  */
+
+/* Values for the QUEUE_SELECTOR argument to `tcflush'.  */
+#define	TCIFLUSH	0	/* Discard data received but not yet read.  */
+#define	TCOFLUSH	1	/* Discard data written but not yet sent.  */
+#define	TCIOFLUSH	2	/* Discard all pending data.  */
+
+/* Values for the ACTION argument to `tcflow'.  */
+#define	TCOOFF	0		/* Suspend output.  */
+#define	TCOON	1		/* Restart suspended output.  */
+#define	TCIOFF	2		/* Send a STOP character.  */
+#define	TCION	3		/* Send a START character.  */