sl@0: /*- sl@0: * Copyright (c) 1982, 1986, 1990, 1993, 1994 sl@0: * The Regents of the University of California. All rights reserved. sl@0: * (c) UNIX System Laboratories, Inc. sl@0: * All or some portions of this file are derived from material licensed sl@0: * to the University of California by American Telephone and Telegraph sl@0: * Co. or Unix System Laboratories, Inc. and are reproduced herein with sl@0: * the permission of UNIX System Laboratories, Inc. sl@0: * sl@0: * Redistribution and use in source and binary forms, with or without sl@0: * modification, are permitted provided that the following conditions sl@0: * are met: sl@0: * 1. Redistributions of source code must retain the above copyright sl@0: * notice, this list of conditions and the following disclaimer. sl@0: * 2. Redistributions in binary form must reproduce the above copyright sl@0: * notice, this list of conditions and the following disclaimer in the sl@0: * documentation and/or other materials provided with the distribution. sl@0: * 4. Neither the name of the University nor the names of its contributors sl@0: * may be used to endorse or promote products derived from this software sl@0: * without specific prior written permission. sl@0: * sl@0: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND sl@0: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE sl@0: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE sl@0: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE sl@0: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL sl@0: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS sl@0: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) sl@0: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT sl@0: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY sl@0: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF sl@0: * SUCH DAMAGE. sl@0: * sl@0: * @(#)ioctl.h 8.6 (Berkeley) 3/28/94 sl@0: * $FreeBSD: src/sys/sys/ioctl.h,v 1.14 2005/03/02 21:33:29 joerg Exp $ sl@0: */ sl@0: sl@0: #ifndef _SYS_IOCTL_H_ sl@0: #define _SYS_IOCTL_H_ sl@0: sl@0: #ifdef _KERNEL sl@0: #ifndef _SYS_CDEFS_H_ sl@0: #error this file needs sys/cdefs.h as a prerequisite sl@0: #endif sl@0: #ifdef __CC_SUPPORTS_WARNING sl@0: #warning "Don't #include ioctl.h in the kernel. Include xxxio.h instead." sl@0: #endif sl@0: #endif /* _KERNEL */ sl@0: sl@0: #include sl@0: sl@0: /* sl@0: * Pun for SunOS prior to 3.2. SunOS 3.2 and later support TIOCGWINSZ sl@0: * and TIOCSWINSZ (yes, even 3.2-3.5, the fact that it wasn't documented sl@0: * notwithstanding). sl@0: */ sl@0: struct ttysize { sl@0: unsigned short ts_lines; sl@0: unsigned short ts_cols; sl@0: unsigned short ts_xxx; sl@0: unsigned short ts_yyy; sl@0: }; sl@0: #define TIOCGSIZE TIOCGWINSZ sl@0: #define TIOCSSIZE TIOCSWINSZ sl@0: sl@0: #include sl@0: sl@0: #include sl@0: #include sl@0: sl@0: #ifdef __SYMBIAN32__ sl@0: sl@0: /** sl@0: number of bytes available to be read - cf BSD FIONREAD sl@0: */ sl@0: #define E32IONREAD _IOR('f', 1,int) sl@0: sl@0: /** sl@0: ioctl-based form of select with infinite timeout - specify a mask of selectable sl@0: states and receive back the mask of triggering states sl@0: */ sl@0: #define E32IOSELECT _IOWR('f',2,int) sl@0: # define E32SELECT_READ 0x01 sl@0: # define E32SELECT_WRITE 0x02 sl@0: # define E32SELECT_EXCEPT 0x04 sl@0: sl@0: /** sl@0: ioctls for serial port values may change sl@0: */ sl@0: #define COMMIOCTL_SETSIGNALS 1 sl@0: #define COMMIOCTL_GETSIGNALS 2 sl@0: #define COMMIOCTL_SETCONFIG 3 sl@0: #define COMMIOCTL_GETCONFIG 4 sl@0: #define COMMIOCTL_BREAK 5 sl@0: #define COMMIOCTL_SETREADTIMEOUT 6 sl@0: #define COMMIOCTL_GETREADTIMEOUT 7 sl@0: #define COMMIOCTL_SETREADTHRESHOLD 8 sl@0: #define COMMIOCTL_GETREADTHRESHOLD 9 sl@0: #define COMMIOCTL_SETBUFFERLENGTH 10 sl@0: #define COMMIOCTL_GETBUFFERLENGTH 11 sl@0: #define COMMIOCTL_NOTIFYSUPPORTED 12 sl@0: #define COMMIOCTL_NOTIFY 0x400d sl@0: sl@0: #define REAL_COMMIOCTL_NOTIFY 13 // = COMMIOCTL_NOTIFY-0x4000 sl@0: sl@0: #endif //__SYMBIAN32__ sl@0: sl@0: sl@0: #endif /* !_SYS_IOCTL_H_ */ sl@0: sl@0: /* sl@0: * Keep outside _SYS_IOCTL_H_ sl@0: * Compatibility with old terminal driver sl@0: * sl@0: * Source level -> #define USE_OLD_TTY sl@0: * Kernel level -> options COMPAT_43 sl@0: */ sl@0: #if defined(USE_OLD_TTY) || defined(COMPAT_43) sl@0: #include sl@0: #endif