📄 ioctl_compat.h
字号:
/**************************************************************************** * Copyright (C) 2001-2004 MITSUBISHI ELECTRIC CORPORATION and * RENESAS SOLUTIONS CORPORATION * All rights reserved. * **************************************************************************** * Copyright (c) 1990, 1993 * The Regents of the University of California. All rights reserved. * (c) UNIX System Laboratories, Inc. * All or some portions of this file are derived from material licensed * to the University of California by American Telephone and Telegraph * Co. or Unix System Laboratories, Inc. and are reproduced herein with * the permission of UNIX System Laboratories, Inc. * * 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. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * This product includes software developed by the University of * California, Berkeley and its contributors. * 4. 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. * * @(#)ioctl_compat.h 8.4 (Berkeley) 1/21/94 * $Id: ioctl_compat.h,v 1.2 1994/08/02 07:53:05 davidg Exp $ */#ifndef _SYS_IOCTL_COMPAT_H_#define _SYS_IOCTL_COMPAT_H_#include <sys/ttychars.h>#include <sys/ttydev.h>struct tchars { char t_intrc; /* interrupt */ char t_quitc; /* quit */ char t_startc; /* start output */ char t_stopc; /* stop output */ char t_eofc; /* end-of-file */ char t_brkc; /* input delimiter (like nl) */};struct ltchars { char t_suspc; /* stop process signal */ char t_dsuspc; /* delayed stop process signal */ char t_rprntc; /* reprint line */ char t_flushc; /* flush output (toggles) */ char t_werasc; /* word erase */ char t_lnextc; /* literal next character */};/* * Structure for TIOCGETP and TIOCSETP ioctls. */#ifndef _SGTTYB_#define _SGTTYB_struct sgttyb { char sg_ispeed; /* input speed */ char sg_ospeed; /* output speed */ char sg_erase; /* erase character */ char sg_kill; /* kill character */ short sg_flags; /* mode flags */};#endif#ifdef USE_OLD_TTY# undef TIOCGETD# define TIOCGETD _IOR('t', 0, int) /* get line discipline */# undef TIOCSETD# define TIOCSETD _IOW('t', 1, int) /* set line discipline */#else# define OTIOCGETD _IOR('t', 0, int) /* get line discipline */# define OTIOCSETD _IOW('t', 1, int) /* set line discipline */#endif#define TIOCHPCL _IO('t', 2) /* hang up on last close */#define TIOCGETP _IOR('t', 8,struct sgttyb)/* get parameters -- gtty */#define TIOCSETP _IOW('t', 9,struct sgttyb)/* set parameters -- stty */#define TIOCSETN _IOW('t',10,struct sgttyb)/* as above, but no flushtty*/#define TIOCSETC _IOW('t',17,struct tchars)/* set special characters */#define TIOCGETC _IOR('t',18,struct tchars)/* get special characters */#define TANDEM 0x00000001 /* send stopc on out q full */#define CBREAK 0x00000002 /* half-cooked mode */#define LCASE 0x00000004 /* simulate lower case */#define ECHO 0x00000008 /* echo input */#define CRMOD 0x00000010 /* map \r to \r\n on output */#define RAW 0x00000020 /* no i/o processing */#define ODDP 0x00000040 /* get/send odd parity */#define EVENP 0x00000080 /* get/send even parity */#define ANYP 0x000000c0 /* get any parity/send none */#define NLDELAY 0x00000300 /* \n delay */#define NL0 0x00000000#define NL1 0x00000100 /* tty 37 */#define NL2 0x00000200 /* vt05 */#define NL3 0x00000300#define TBDELAY 0x00000c00 /* horizontal tab delay */#define TAB0 0x00000000#define TAB1 0x00000400 /* tty 37 */#define TAB2 0x00000800#define XTABS 0x00000c00 /* expand tabs on output */#define CRDELAY 0x00003000 /* \r delay */#define CR0 0x00000000#define CR1 0x00001000 /* tn 300 */#define CR2 0x00002000 /* tty 37 */#define CR3 0x00003000 /* concept 100 */#define VTDELAY 0x00004000 /* vertical tab delay */#define FF0 0x00000000#define FF1 0x00004000 /* tty 37 */#define BSDELAY 0x00008000 /* \b delay */#define BS0 0x00000000#define BS1 0x00008000#define ALLDELAY (NLDELAY|TBDELAY|CRDELAY|VTDELAY|BSDELAY)#define CRTBS 0x00010000 /* do backspacing for crt */#define PRTERA 0x00020000 /* \ ... / erase */#define CRTERA 0x00040000 /* " \b " to wipe out char */#define TILDE 0x00080000 /* hazeltine tilde kludge */#define MDMBUF 0x00100000 /*start/stop output on carrier*/#define LITOUT 0x00200000 /* literal output */#define TOSTOP 0x00400000 /*SIGSTOP on background output*/#define FLUSHO 0x00800000 /* flush output to terminal */#define NOHANG 0x01000000 /* (no-op) was no SIGHUP on carrier drop */#define L001000 0x02000000#define CRTKIL 0x04000000 /* kill line with " \b " */#define PASS8 0x08000000#define CTLECH 0x10000000 /* echo control chars as ^X */#define PENDIN 0x20000000 /* tp->t_rawq needs reread */#define DECCTQ 0x40000000 /* only ^Q starts after ^S */#define NOFLSH 0x80000000 /* no output flush on signal */#define TIOCLBIS _IOW('t', 127, int) /* bis local mode bits */#define TIOCLBIC _IOW('t', 126, int) /* bic local mode bits */#define TIOCLSET _IOW('t', 125, int) /* set entire local mode word */#define TIOCLGET _IOR('t', 124, int) /* get local modes */#define LCRTBS (CRTBS>>16)#define LPRTERA (PRTERA>>16)#define LCRTERA (CRTERA>>16)#define LTILDE (TILDE>>16)#define LMDMBUF (MDMBUF>>16)#define LLITOUT (LITOUT>>16)#define LTOSTOP (TOSTOP>>16)#define LFLUSHO (FLUSHO>>16)#define LNOHANG (NOHANG>>16)#define LCRTKIL (CRTKIL>>16)#define LPASS8 (PASS8>>16)#define LCTLECH (CTLECH>>16)#define LPENDIN (PENDIN>>16)#define LDECCTQ (DECCTQ>>16)#define LNOFLSH (NOFLSH>>16)#define TIOCSLTC _IOW('t',117,struct ltchars)/* set local special chars*/#define TIOCGLTC _IOR('t',116,struct ltchars)/* get local special chars*/#define OTIOCCONS _IO('t', 98) /* for hp300 -- sans int arg */#define OTTYDISC 0#define NETLDISC 1#define NTTYDISC 2#endif /* !_SYS_IOCTL_COMPAT_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -