gtsocial-umbx

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

termios_darwin_amd64.go (81284B)


      1 // Code generated by 'ccgo termios/gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -ignore-unsupported-alignment -o termios/termios_darwin_amd64.go -pkgname termios', DO NOT EDIT.
      2 
      3 package termios
      4 
      5 import (
      6 	"math"
      7 	"reflect"
      8 	"sync/atomic"
      9 	"unsafe"
     10 )
     11 
     12 var _ = math.Pi
     13 var _ reflect.Kind
     14 var _ atomic.Value
     15 var _ unsafe.Pointer
     16 
     17 const (
     18 	ALTWERASE                              = 0x00000200 // termios.h:249:1:
     19 	B0                                     = 0          // termios.h:291:1:
     20 	B110                                   = 110        // termios.h:294:1:
     21 	B115200                                = 115200     // termios.h:313:1:
     22 	B1200                                  = 1200       // termios.h:300:1:
     23 	B134                                   = 134        // termios.h:295:1:
     24 	B14400                                 = 14400      // termios.h:309:1:
     25 	B150                                   = 150        // termios.h:296:1:
     26 	B1800                                  = 1800       // termios.h:301:1:
     27 	B19200                                 = 19200      // termios.h:305:1:
     28 	B200                                   = 200        // termios.h:297:1:
     29 	B230400                                = 230400     // termios.h:314:1:
     30 	B2400                                  = 2400       // termios.h:302:1:
     31 	B28800                                 = 28800      // termios.h:310:1:
     32 	B300                                   = 300        // termios.h:298:1:
     33 	B38400                                 = 38400      // termios.h:306:1:
     34 	B4800                                  = 4800       // termios.h:303:1:
     35 	B50                                    = 50         // termios.h:292:1:
     36 	B57600                                 = 57600      // termios.h:311:1:
     37 	B600                                   = 600        // termios.h:299:1:
     38 	B7200                                  = 7200       // termios.h:308:1:
     39 	B75                                    = 75         // termios.h:293:1:
     40 	B76800                                 = 76800      // termios.h:312:1:
     41 	B9600                                  = 9600       // termios.h:304:1:
     42 	BRKINT                                 = 0x00000002 // termios.h:120:1:
     43 	BS0                                    = 0x00000000 // termios.h:190:1:
     44 	BS1                                    = 0x00008000 // termios.h:191:1:
     45 	BSDLY                                  = 0x00008000 // termios.h:159:1:
     46 	CBRK                                   = 255        // ttydefaults.h:107:1:
     47 	CCAR_OFLOW                             = 0x00100000 // termios.h:222:1:
     48 	CCTS_OFLOW                             = 0x00010000 // termios.h:217:1:
     49 	CDISCARD                               = 15         // ttydefaults.h:102:1:
     50 	CDSR_OFLOW                             = 0x00080000 // termios.h:221:1:
     51 	CDSUSP                                 = 25         // ttydefaults.h:98:1:
     52 	CDTR_IFLOW                             = 0x00040000 // termios.h:220:1:
     53 	CEOF                                   = 4          // ttydefaults.h:88:1:
     54 	CEOL                                   = 0xff       // ttydefaults.h:89:1:
     55 	CEOT                                   = 4          // ttydefaults.h:105:1:
     56 	CERASE                                 = 0177       // ttydefaults.h:90:1:
     57 	CFLUSH                                 = 15         // ttydefaults.h:109:1:
     58 	CIGNORE                                = 0x00000001 // termios.h:203:1:
     59 	CINTR                                  = 3          // ttydefaults.h:91:1:
     60 	CKILL                                  = 21         // ttydefaults.h:93:1:
     61 	CLNEXT                                 = 22         // ttydefaults.h:101:1:
     62 	CLOCAL                                 = 0x00008000 // termios.h:215:1:
     63 	CMIN                                   = 1          // ttydefaults.h:94:1:
     64 	CQUIT                                  = 034        // ttydefaults.h:95:1:
     65 	CR0                                    = 0x00000000 // termios.h:184:1:
     66 	CR1                                    = 0x00001000 // termios.h:185:1:
     67 	CR2                                    = 0x00002000 // termios.h:186:1:
     68 	CR3                                    = 0x00003000 // termios.h:187:1:
     69 	CRDLY                                  = 0x00003000 // termios.h:157:1:
     70 	CREAD                                  = 0x00000800 // termios.h:211:1:
     71 	CREPRINT                               = 18         // ttydefaults.h:104:1:
     72 	CRPRNT                                 = 18         // ttydefaults.h:108:1:
     73 	CRTSCTS                                = 196608     // termios.h:218:1:
     74 	CRTS_IFLOW                             = 0x00020000 // termios.h:219:1:
     75 	CS5                                    = 0x00000000 // termios.h:206:1:
     76 	CS6                                    = 0x00000100 // termios.h:207:1:
     77 	CS7                                    = 0x00000200 // termios.h:208:1:
     78 	CS8                                    = 0x00000300 // termios.h:209:1:
     79 	CSIZE                                  = 0x00000300 // termios.h:205:1:
     80 	CSTART                                 = 17         // ttydefaults.h:99:1:
     81 	CSTATUS                                = 20         // ttydefaults.h:92:1:
     82 	CSTOP                                  = 19         // ttydefaults.h:100:1:
     83 	CSTOPB                                 = 0x00000400 // termios.h:210:1:
     84 	CSUSP                                  = 26         // ttydefaults.h:96:1:
     85 	CTIME                                  = 0          // ttydefaults.h:97:1:
     86 	CWERASE                                = 23         // ttydefaults.h:103:1:
     87 	ECHO                                   = 0x00000008 // termios.h:240:1:
     88 	ECHOCTL                                = 0x00000040 // termios.h:244:1:
     89 	ECHOE                                  = 0x00000002 // termios.h:238:1:
     90 	ECHOK                                  = 0x00000004 // termios.h:239:1:
     91 	ECHOKE                                 = 0x00000001 // termios.h:236:1:
     92 	ECHONL                                 = 0x00000010 // termios.h:241:1:
     93 	ECHOPRT                                = 0x00000020 // termios.h:243:1:
     94 	EXTA                                   = 19200      // termios.h:315:1:
     95 	EXTB                                   = 38400      // termios.h:316:1:
     96 	EXTPROC                                = 0x00000800 // termios.h:253:1:
     97 	FF0                                    = 0x00000000 // termios.h:188:1:
     98 	FF1                                    = 0x00004000 // termios.h:189:1:
     99 	FFDLY                                  = 0x00004000 // termios.h:158:1:
    100 	FLUSHO                                 = 0x00800000 // termios.h:257:1:
    101 	HUPCL                                  = 0x00004000 // termios.h:214:1:
    102 	ICANON                                 = 0x00000100 // termios.h:247:1:
    103 	ICRNL                                  = 0x00000100 // termios.h:127:1:
    104 	IEXTEN                                 = 0x00000400 // termios.h:251:1:
    105 	IGNBRK                                 = 0x00000001 // termios.h:119:1:
    106 	IGNCR                                  = 0x00000080 // termios.h:126:1:
    107 	IGNPAR                                 = 0x00000004 // termios.h:121:1:
    108 	IMAXBEL                                = 0x00002000 // termios.h:132:1:
    109 	INLCR                                  = 0x00000040 // termios.h:125:1:
    110 	INPCK                                  = 0x00000010 // termios.h:123:1:
    111 	IOCPARM_MASK                           = 0x1fff     // ioccom.h:74:1:
    112 	IOCPARM_MAX                            = 8192       // ioccom.h:79:1:
    113 	ISIG                                   = 0x00000080 // termios.h:246:1:
    114 	ISTRIP                                 = 0x00000020 // termios.h:124:1:
    115 	IUTF8                                  = 0x00004000 // termios.h:133:1:
    116 	IXANY                                  = 0x00000800 // termios.h:130:1:
    117 	IXOFF                                  = 0x00000400 // termios.h:129:1:
    118 	IXON                                   = 0x00000200 // termios.h:128:1:
    119 	MDMBUF                                 = 0x00100000 // termios.h:223:1:
    120 	NCCS                                   = 20         // termios.h:108:1:
    121 	NL0                                    = 0x00000000 // termios.h:173:1:
    122 	NL1                                    = 0x00000100 // termios.h:174:1:
    123 	NL2                                    = 0x00000200 // termios.h:176:1:
    124 	NL3                                    = 0x00000300 // termios.h:177:1:
    125 	NLDLY                                  = 0x00000300 // termios.h:155:1:
    126 	NOFLSH                                 = 0x80000000 // termios.h:261:1:
    127 	NOKERNINFO                             = 0x02000000 // termios.h:258:1:
    128 	OCRNL                                  = 0x00000010 // termios.h:151:1:
    129 	OFDEL                                  = 0x00020000 // termios.h:161:1:
    130 	OFILL                                  = 0x00000080 // termios.h:154:1:
    131 	ONLCR                                  = 0x00000002 // termios.h:140:1:
    132 	ONLRET                                 = 0x00000040 // termios.h:153:1:
    133 	ONOCR                                  = 0x00000020 // termios.h:152:1:
    134 	ONOEOT                                 = 0x00000008 // termios.h:143:1:
    135 	OPOST                                  = 0x00000001 // termios.h:139:1:
    136 	OXTABS                                 = 0x00000004 // termios.h:142:1:
    137 	PARENB                                 = 0x00001000 // termios.h:212:1:
    138 	PARMRK                                 = 0x00000008 // termios.h:122:1:
    139 	PARODD                                 = 0x00002000 // termios.h:213:1:
    140 	PENDIN                                 = 0x20000000 // termios.h:259:1:
    141 	PPPDISC                                = 5          // ttycom.h:171:1:
    142 	SLIPDISC                               = 4          // ttycom.h:170:1:
    143 	TAB0                                   = 0x00000000 // termios.h:179:1:
    144 	TAB1                                   = 0x00000400 // termios.h:180:1:
    145 	TAB2                                   = 0x00000800 // termios.h:181:1:
    146 	TAB3                                   = 0x00000004 // termios.h:183:1:
    147 	TABDLY                                 = 0x00000c04 // termios.h:156:1:
    148 	TABLDISC                               = 3          // ttycom.h:169:1:
    149 	TCIFLUSH                               = 1          // termios.h:320:1:
    150 	TCIOFF                                 = 3          // termios.h:325:1:
    151 	TCIOFLUSH                              = 3          // termios.h:322:1:
    152 	TCION                                  = 4          // termios.h:326:1:
    153 	TCOFLUSH                               = 2          // termios.h:321:1:
    154 	TCOOFF                                 = 1          // termios.h:323:1:
    155 	TCOON                                  = 2          // termios.h:324:1:
    156 	TCSADRAIN                              = 1          // termios.h:282:1:
    157 	TCSAFLUSH                              = 2          // termios.h:283:1:
    158 	TCSANOW                                = 0          // termios.h:281:1:
    159 	TCSASOFT                               = 0x10       // termios.h:285:1:
    160 	TIOCM_CAR                              = 0100       // ttycom.h:97:1:
    161 	TIOCM_CD                               = 64         // ttycom.h:98:1:
    162 	TIOCM_CTS                              = 0040       // ttycom.h:96:1:
    163 	TIOCM_DSR                              = 0400       // ttycom.h:101:1:
    164 	TIOCM_DTR                              = 0002       // ttycom.h:92:1:
    165 	TIOCM_LE                               = 0001       // ttycom.h:91:1:
    166 	TIOCM_RI                               = 128        // ttycom.h:100:1:
    167 	TIOCM_RNG                              = 0200       // ttycom.h:99:1:
    168 	TIOCM_RTS                              = 0004       // ttycom.h:93:1:
    169 	TIOCM_SR                               = 0020       // ttycom.h:95:1:
    170 	TIOCM_ST                               = 0010       // ttycom.h:94:1:
    171 	TIOCPKT_DATA                           = 0x00       // ttycom.h:128:1:
    172 	TIOCPKT_DOSTOP                         = 0x20       // ttycom.h:134:1:
    173 	TIOCPKT_FLUSHREAD                      = 0x01       // ttycom.h:129:1:
    174 	TIOCPKT_FLUSHWRITE                     = 0x02       // ttycom.h:130:1:
    175 	TIOCPKT_IOCTL                          = 0x40       // ttycom.h:135:1:
    176 	TIOCPKT_NOSTOP                         = 0x10       // ttycom.h:133:1:
    177 	TIOCPKT_START                          = 0x08       // ttycom.h:132:1:
    178 	TIOCPKT_STOP                           = 0x04       // ttycom.h:131:1:
    179 	TOSTOP                                 = 0x00400000 // termios.h:255:1:
    180 	TTYDEF_CFLAG                           = 19200      // ttydefaults.h:81:1:
    181 	TTYDEF_IFLAG                           = 11010      // ttydefaults.h:78:1:
    182 	TTYDEF_LFLAG                           = 1483       // ttydefaults.h:80:1:
    183 	TTYDEF_OFLAG                           = 3          // ttydefaults.h:79:1:
    184 	TTYDEF_SPEED                           = 9600       // ttydefaults.h:82:1:
    185 	TTYDISC                                = 0          // ttycom.h:168:1:
    186 	VDISCARD                               = 15         // termios.h:100:1:
    187 	VDSUSP                                 = 11         // termios.h:94:1:
    188 	VEOF                                   = 0          // termios.h:76:1:
    189 	VEOL                                   = 1          // termios.h:77:1:
    190 	VEOL2                                  = 2          // termios.h:79:1:
    191 	VERASE                                 = 3          // termios.h:81:1:
    192 	VINTR                                  = 8          // termios.h:90:1:
    193 	VKILL                                  = 5          // termios.h:85:1:
    194 	VLNEXT                                 = 14         // termios.h:99:1:
    195 	VMIN                                   = 16         // termios.h:102:1:
    196 	VQUIT                                  = 9          // termios.h:91:1:
    197 	VREPRINT                               = 6          // termios.h:87:1:
    198 	VSTART                                 = 12         // termios.h:96:1:
    199 	VSTATUS                                = 18         // termios.h:105:1:
    200 	VSTOP                                  = 13         // termios.h:97:1:
    201 	VSUSP                                  = 10         // termios.h:92:1:
    202 	VT0                                    = 0x00000000 // termios.h:192:1:
    203 	VT1                                    = 0x00010000 // termios.h:193:1:
    204 	VTDLY                                  = 0x00010000 // termios.h:160:1:
    205 	VTIME                                  = 17         // termios.h:103:1:
    206 	VWERASE                                = 4          // termios.h:83:1:
    207 	X_BSD_I386__TYPES_H_                   = 0          // _types.h:29:1:
    208 	X_BSD_MACHINE__TYPES_H_                = 0          // _types.h:29:1:
    209 	X_CDEFS_H_                             = 0          // cdefs.h:68:1:
    210 	X_DARWIN_FEATURE_64_BIT_INODE          = 1          // cdefs.h:745:1:
    211 	X_DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE = 1          // cdefs.h:771:1:
    212 	X_DARWIN_FEATURE_UNIX_CONFORMANCE      = 3          // cdefs.h:779:1:
    213 	X_FILE_OFFSET_BITS                     = 64         // <builtin>:25:1:
    214 	X_FORTIFY_SOURCE                       = 2          // _types.h:65:1:
    215 	X_LP64                                 = 1          // <predefined>:1:1:
    216 	X_Nonnull                              = 0          // cdefs.h:243:1:
    217 	X_Null_unspecified                     = 0          // cdefs.h:246:1:
    218 	X_Nullable                             = 0          // cdefs.h:240:1:
    219 	X_PID_T                                = 0          // _pid_t.h:29:1:
    220 	X_SYS_IOCCOM_H_                        = 0          // ioccom.h:65:1:
    221 	X_SYS_TERMIOS_H_                       = 0          // termios.h:65:1:
    222 	X_SYS_TTYCOM_H_                        = 0          // ttycom.h:70:1:
    223 	X_SYS_TTYDEFAULTS_H_                   = 0          // ttydefaults.h:73:1:
    224 	X_SYS__PTHREAD_TYPES_H_                = 0          // _pthread_types.h:30:1:
    225 	X_SYS__TYPES_H_                        = 0          // _types.h:30:1:
    226 )
    227 
    228 type Ptrdiff_t = int64 /* <builtin>:3:26 */
    229 
    230 type Size_t = uint64 /* <builtin>:9:23 */
    231 
    232 type Wchar_t = int32 /* <builtin>:15:24 */
    233 
    234 type X__int128_t = struct {
    235 	Flo int64
    236 	Fhi int64
    237 } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
    238 type X__uint128_t = struct {
    239 	Flo uint64
    240 	Fhi uint64
    241 } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
    242 
    243 type X__builtin_va_list = uintptr /* <builtin>:46:14 */
    244 type X__float128 = float64        /* <builtin>:47:21 */
    245 
    246 var X__darwin_check_fd_set_overflow uintptr /* <builtin>:146:5: */
    247 
    248 // Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
    249 //
    250 // @APPLE_LICENSE_HEADER_START@
    251 //
    252 // This file contains Original Code and/or Modifications of Original Code
    253 // as defined in and that are subject to the Apple Public Source License
    254 // Version 2.0 (the 'License'). You may not use this file except in
    255 // compliance with the License. Please obtain a copy of the License at
    256 // http://www.opensource.apple.com/apsl/ and read it before using this
    257 // file.
    258 //
    259 // The Original Code and all software distributed under the License are
    260 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    261 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    262 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    263 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
    264 // Please see the License for the specific language governing rights and
    265 // limitations under the License.
    266 //
    267 // @APPLE_LICENSE_HEADER_END@
    268 
    269 // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
    270 //
    271 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
    272 //
    273 // This file contains Original Code and/or Modifications of Original Code
    274 // as defined in and that are subject to the Apple Public Source License
    275 // Version 2.0 (the 'License'). You may not use this file except in
    276 // compliance with the License. The rights granted to you under the License
    277 // may not be used to create, or enable the creation or redistribution of,
    278 // unlawful or unlicensed copies of an Apple operating system, or to
    279 // circumvent, violate, or enable the circumvention or violation of, any
    280 // terms of an Apple operating system software license agreement.
    281 //
    282 // Please obtain a copy of the License at
    283 // http://www.opensource.apple.com/apsl/ and read it before using this file.
    284 //
    285 // The Original Code and all software distributed under the License are
    286 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    287 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    288 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    289 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
    290 // Please see the License for the specific language governing rights and
    291 // limitations under the License.
    292 //
    293 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
    294 // Copyright 1995 NeXT Computer, Inc. All rights reserved.
    295 // Copyright (c) 1991, 1993
    296 //	The Regents of the University of California.  All rights reserved.
    297 //
    298 // This code is derived from software contributed to Berkeley by
    299 // Berkeley Software Design, Inc.
    300 //
    301 // Redistribution and use in source and binary forms, with or without
    302 // modification, are permitted provided that the following conditions
    303 // are met:
    304 // 1. Redistributions of source code must retain the above copyright
    305 //    notice, this list of conditions and the following disclaimer.
    306 // 2. Redistributions in binary form must reproduce the above copyright
    307 //    notice, this list of conditions and the following disclaimer in the
    308 //    documentation and/or other materials provided with the distribution.
    309 // 3. All advertising materials mentioning features or use of this software
    310 //    must display the following acknowledgement:
    311 //	This product includes software developed by the University of
    312 //	California, Berkeley and its contributors.
    313 // 4. Neither the name of the University nor the names of its contributors
    314 //    may be used to endorse or promote products derived from this software
    315 //    without specific prior written permission.
    316 //
    317 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    318 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    319 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    320 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    321 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    322 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    323 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    324 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    325 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    326 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    327 // SUCH DAMAGE.
    328 //
    329 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
    330 
    331 // This SDK is designed to work with clang and specific versions of
    332 // gcc >= 4.0 with Apple's patch sets
    333 
    334 // Compatibility with compilers and environments that don't support compiler
    335 // feature checking function-like macros.
    336 
    337 // The __CONCAT macro is used to concatenate parts of symbol names, e.g.
    338 // with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
    339 // The __CONCAT macro is a bit tricky -- make sure you don't put spaces
    340 // in between its arguments.  __CONCAT can also concatenate double-quoted
    341 // strings produced by the __STRING macro, but this only works with ANSI C.
    342 
    343 // In non-ANSI C environments, new programs will want ANSI-only C keywords
    344 // deleted from the program and old programs will want them left alone.
    345 // When using a compiler other than gcc, programs using the ANSI C keywords
    346 // const, inline etc. as normal identifiers should define -DNO_ANSI_KEYWORDS.
    347 // When using "gcc -traditional", we assume that this is the intent; if
    348 // __GNUC__ is defined but __STDC__ is not, we leave the new keywords alone.
    349 
    350 // __unused denotes variables and functions that may not be used, preventing
    351 // the compiler from warning about it if not used.
    352 
    353 // __used forces variables and functions to be included even if it appears
    354 // to the compiler that they are not used (and would thust be discarded).
    355 
    356 // __cold marks code used for debugging or that is rarely taken
    357 // and tells the compiler to optimize for size and outline code.
    358 
    359 // __deprecated causes the compiler to produce a warning when encountering
    360 // code using the deprecated functionality.
    361 // __deprecated_msg() does the same, and compilers that support it will print
    362 // a message along with the deprecation warning.
    363 // This may require turning on such warning with the -Wdeprecated flag.
    364 // __deprecated_enum_msg() should be used on enums, and compilers that support
    365 // it will print the deprecation warning.
    366 // __kpi_deprecated() specifically indicates deprecation of kernel programming
    367 // interfaces in Kernel.framework used by KEXTs.
    368 
    369 // __unavailable causes the compiler to error out when encountering
    370 // code using the tagged function of variable.
    371 
    372 // Delete pseudo-keywords wherever they are not available or needed.
    373 
    374 // We use `__restrict' as a way to define the `restrict' type qualifier
    375 // without disturbing older software that is unaware of C99 keywords.
    376 
    377 // Compatibility with compilers and environments that don't support the
    378 // nullability feature.
    379 
    380 // __disable_tail_calls causes the compiler to not perform tail call
    381 // optimization inside the marked function.
    382 
    383 // __not_tail_called causes the compiler to prevent tail call optimization
    384 // on statically bound calls to the function.  It has no effect on indirect
    385 // calls.  Virtual functions, objective-c methods, and functions marked as
    386 // "always_inline" cannot be marked as __not_tail_called.
    387 
    388 // __result_use_check warns callers of a function that not using the function
    389 // return value is a bug, i.e. dismissing malloc() return value results in a
    390 // memory leak.
    391 
    392 // __swift_unavailable causes the compiler to mark a symbol as specifically
    393 // unavailable in Swift, regardless of any other availability in C.
    394 
    395 // __abortlike is the attribute to put on functions like abort() that are
    396 // typically used to mark assertions. These optimize the codegen
    397 // for outlining while still maintaining debugability.
    398 
    399 // Declaring inline functions within headers is error-prone due to differences
    400 // across various versions of the C language and extensions.  __header_inline
    401 // can be used to declare inline functions within system headers.  In cases
    402 // where you want to force inlining instead of letting the compiler make
    403 // the decision, you can use __header_always_inline.
    404 //
    405 // Be aware that using inline for functions which compilers may also provide
    406 // builtins can behave differently under various compilers.  If you intend to
    407 // provide an inline version of such a function, you may want to use a macro
    408 // instead.
    409 //
    410 // The check for !__GNUC__ || __clang__ is because gcc doesn't correctly
    411 // support c99 inline in some cases:
    412 // http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55965
    413 
    414 // Compiler-dependent macros that bracket portions of code where the
    415 // "-Wunreachable-code" warning should be ignored. Please use sparingly.
    416 
    417 // Compiler-dependent macros to declare that functions take printf-like
    418 // or scanf-like arguments.  They are null except for versions of gcc
    419 // that are known to support the features properly.  Functions declared
    420 // with these attributes will cause compilation warnings if there is a
    421 // mismatch between the format string and subsequent function parameter
    422 // types.
    423 
    424 // Source compatibility only, ID string not emitted in object file
    425 
    426 // __alloc_size can be used to label function arguments that represent the
    427 // size of memory that the function allocates and returns. The one-argument
    428 // form labels a single argument that gives the allocation size (where the
    429 // arguments are numbered from 1):
    430 //
    431 // void	*malloc(size_t __size) __alloc_size(1);
    432 //
    433 // The two-argument form handles the case where the size is calculated as the
    434 // product of two arguments:
    435 //
    436 // void	*calloc(size_t __count, size_t __size) __alloc_size(1,2);
    437 
    438 // COMPILATION ENVIRONMENTS -- see compat(5) for additional detail
    439 //
    440 // DEFAULT	By default newly complied code will get POSIX APIs plus
    441 //		Apple API extensions in scope.
    442 //
    443 //		Most users will use this compilation environment to avoid
    444 //		behavioral differences between 32 and 64 bit code.
    445 //
    446 // LEGACY	Defining _NONSTD_SOURCE will get pre-POSIX APIs plus Apple
    447 //		API extensions in scope.
    448 //
    449 //		This is generally equivalent to the Tiger release compilation
    450 //		environment, except that it cannot be applied to 64 bit code;
    451 //		its use is discouraged.
    452 //
    453 //		We expect this environment to be deprecated in the future.
    454 //
    455 // STRICT	Defining _POSIX_C_SOURCE or _XOPEN_SOURCE restricts the
    456 //		available APIs to exactly the set of APIs defined by the
    457 //		corresponding standard, based on the value defined.
    458 //
    459 //		A correct, portable definition for _POSIX_C_SOURCE is 200112L.
    460 //		A correct, portable definition for _XOPEN_SOURCE is 600L.
    461 //
    462 //		Apple API extensions are not visible in this environment,
    463 //		which can cause Apple specific code to fail to compile,
    464 //		or behave incorrectly if prototypes are not in scope or
    465 //		warnings about missing prototypes are not enabled or ignored.
    466 //
    467 // In any compilation environment, for correct symbol resolution to occur,
    468 // function prototypes must be in scope.  It is recommended that all Apple
    469 // tools users add either the "-Wall" or "-Wimplicit-function-declaration"
    470 // compiler flags to their projects to be warned when a function is being
    471 // used without a prototype in scope.
    472 
    473 // These settings are particular to each product.
    474 // Platform: MacOSX
    475 // #undef __DARWIN_ONLY_UNIX_CONFORMANCE (automatically set for 64-bit)
    476 
    477 // The __DARWIN_ALIAS macros are used to do symbol renaming; they allow
    478 // legacy code to use the old symbol, thus maintaining binary compatibility
    479 // while new code can use a standards compliant version of the same function.
    480 //
    481 // __DARWIN_ALIAS is used by itself if the function signature has not
    482 // changed, it is used along with a #ifdef check for __DARWIN_UNIX03
    483 // if the signature has changed.  Because the __LP64__ environment
    484 // only supports UNIX03 semantics it causes __DARWIN_UNIX03 to be
    485 // defined, but causes __DARWIN_ALIAS to do no symbol mangling.
    486 //
    487 // As a special case, when XCode is used to target a specific version of the
    488 // OS, the manifest constant __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
    489 // will be defined by the compiler, with the digits representing major version
    490 // time 100 + minor version times 10 (e.g. 10.5 := 1050).  If we are targeting
    491 // pre-10.5, and it is the default compilation environment, revert the
    492 // compilation environment to pre-__DARWIN_UNIX03.
    493 
    494 // symbol suffixes used for symbol versioning
    495 
    496 // symbol versioning macros
    497 
    498 // symbol release macros
    499 // Copyright (c) 2010 Apple Inc. All rights reserved.
    500 //
    501 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
    502 //
    503 // This file contains Original Code and/or Modifications of Original Code
    504 // as defined in and that are subject to the Apple Public Source License
    505 // Version 2.0 (the 'License'). You may not use this file except in
    506 // compliance with the License. The rights granted to you under the License
    507 // may not be used to create, or enable the creation or redistribution of,
    508 // unlawful or unlicensed copies of an Apple operating system, or to
    509 // circumvent, violate, or enable the circumvention or violation of, any
    510 // terms of an Apple operating system software license agreement.
    511 //
    512 // Please obtain a copy of the License at
    513 // http://www.opensource.apple.com/apsl/ and read it before using this file.
    514 //
    515 // The Original Code and all software distributed under the License are
    516 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    517 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    518 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    519 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
    520 // Please see the License for the specific language governing rights and
    521 // limitations under the License.
    522 //
    523 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
    524 
    525 // POSIX.1 requires that the macros we test be defined before any standard
    526 // header file is included.  This permits us to convert values for feature
    527 // testing, as necessary, using only _POSIX_C_SOURCE.
    528 //
    529 // Here's a quick run-down of the versions:
    530 //  defined(_POSIX_SOURCE)		1003.1-1988
    531 //  _POSIX_C_SOURCE == 1L		1003.1-1990
    532 //  _POSIX_C_SOURCE == 2L		1003.2-1992 C Language Binding Option
    533 //  _POSIX_C_SOURCE == 199309L		1003.1b-1993
    534 //  _POSIX_C_SOURCE == 199506L		1003.1c-1995, 1003.1i-1995,
    535 //					and the omnibus ISO/IEC 9945-1: 1996
    536 //  _POSIX_C_SOURCE == 200112L		1003.1-2001
    537 //  _POSIX_C_SOURCE == 200809L		1003.1-2008
    538 //
    539 // In addition, the X/Open Portability Guide, which is now the Single UNIX
    540 // Specification, defines a feature-test macro which indicates the version of
    541 // that specification, and which subsumes _POSIX_C_SOURCE.
    542 
    543 // Deal with IEEE Std. 1003.1-1990, in which _POSIX_C_SOURCE == 1L.
    544 
    545 // Deal with IEEE Std. 1003.2-1992, in which _POSIX_C_SOURCE == 2L.
    546 
    547 // Deal with various X/Open Portability Guides and Single UNIX Spec.
    548 
    549 // Deal with all versions of POSIX.  The ordering relative to the tests above is
    550 // important.
    551 
    552 // POSIX C deprecation macros
    553 // Copyright (c) 2010 Apple Inc. All rights reserved.
    554 //
    555 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
    556 //
    557 // This file contains Original Code and/or Modifications of Original Code
    558 // as defined in and that are subject to the Apple Public Source License
    559 // Version 2.0 (the 'License'). You may not use this file except in
    560 // compliance with the License. The rights granted to you under the License
    561 // may not be used to create, or enable the creation or redistribution of,
    562 // unlawful or unlicensed copies of an Apple operating system, or to
    563 // circumvent, violate, or enable the circumvention or violation of, any
    564 // terms of an Apple operating system software license agreement.
    565 //
    566 // Please obtain a copy of the License at
    567 // http://www.opensource.apple.com/apsl/ and read it before using this file.
    568 //
    569 // The Original Code and all software distributed under the License are
    570 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    571 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    572 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    573 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
    574 // Please see the License for the specific language governing rights and
    575 // limitations under the License.
    576 //
    577 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
    578 
    579 // Set a single macro which will always be defined and can be used to determine
    580 // the appropriate namespace.  For POSIX, these values will correspond to
    581 // _POSIX_C_SOURCE value.  Currently there are two additional levels corresponding
    582 // to ANSI (_ANSI_SOURCE) and Darwin extensions (_DARWIN_C_SOURCE)
    583 
    584 // If the developer has neither requested a strict language mode nor a version
    585 // of POSIX, turn on functionality provided by __STDC_WANT_LIB_EXT1__ as part
    586 // of __DARWIN_C_FULL.
    587 
    588 // long long is not supported in c89 (__STRICT_ANSI__), but g++ -ansi and
    589 // c99 still want long longs.  While not perfect, we allow long longs for
    590 // g++.
    591 
    592 // ****************************************
    593 //
    594 //  Public darwin-specific feature macros
    595 //
    596 
    597 // _DARWIN_FEATURE_64_BIT_INODE indicates that the ino_t type is 64-bit, and
    598 // structures modified for 64-bit inodes (like struct stat) will be used.
    599 
    600 // _DARWIN_FEATURE_64_ONLY_BIT_INODE indicates that the ino_t type may only
    601 // be 64-bit; there is no support for 32-bit ino_t when this macro is defined
    602 // (and non-zero).  There is no struct stat64 either, as the regular
    603 // struct stat will already be the 64-bit version.
    604 
    605 // _DARWIN_FEATURE_ONLY_VERS_1050 indicates that only those APIs updated
    606 // in 10.5 exists; no pre-10.5 variants are available.
    607 
    608 // _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE indicates only UNIX conforming API
    609 // are available (the legacy BSD APIs are not available)
    610 
    611 // _DARWIN_FEATURE_UNIX_CONFORMANCE indicates whether UNIX conformance is on,
    612 // and specifies the conformance level (3 is SUSv3)
    613 
    614 // This macro casts away the qualifier from the variable
    615 //
    616 // Note: use at your own risk, removing qualifiers can result in
    617 // catastrophic run-time failures.
    618 
    619 // __XNU_PRIVATE_EXTERN is a linkage decoration indicating that a symbol can be
    620 // used from other compilation units, but not other libraries or executables.
    621 
    622 // Architecture validation for current SDK
    623 
    624 // Similar to OS_ENUM/OS_CLOSED_ENUM/OS_OPTIONS/OS_CLOSED_OPTIONS
    625 //
    626 // This provides more advanced type checking on compilers supporting
    627 // the proper extensions, even in C.
    628 
    629 // Copyright (c) 2000-2006 Apple Computer, Inc. All rights reserved.
    630 //
    631 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
    632 //
    633 // This file contains Original Code and/or Modifications of Original Code
    634 // as defined in and that are subject to the Apple Public Source License
    635 // Version 2.0 (the 'License'). You may not use this file except in
    636 // compliance with the License. The rights granted to you under the License
    637 // may not be used to create, or enable the creation or redistribution of,
    638 // unlawful or unlicensed copies of an Apple operating system, or to
    639 // circumvent, violate, or enable the circumvention or violation of, any
    640 // terms of an Apple operating system software license agreement.
    641 //
    642 // Please obtain a copy of the License at
    643 // http://www.opensource.apple.com/apsl/ and read it before using this file.
    644 //
    645 // The Original Code and all software distributed under the License are
    646 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    647 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    648 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    649 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
    650 // Please see the License for the specific language governing rights and
    651 // limitations under the License.
    652 //
    653 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
    654 // Copyright (c) 1997 Apple Computer, Inc. All Rights Reserved
    655 // Copyright (c) 1988, 1989, 1993, 1994
    656 //	The Regents of the University of California.  All rights reserved.
    657 //
    658 // Redistribution and use in source and binary forms, with or without
    659 // modification, are permitted provided that the following conditions
    660 // are met:
    661 // 1. Redistributions of source code must retain the above copyright
    662 //    notice, this list of conditions and the following disclaimer.
    663 // 2. Redistributions in binary form must reproduce the above copyright
    664 //    notice, this list of conditions and the following disclaimer in the
    665 //    documentation and/or other materials provided with the distribution.
    666 // 3. All advertising materials mentioning features or use of this software
    667 //    must display the following acknowledgement:
    668 //      This product includes software developed by the University of
    669 //      California, Berkeley and its contributors.
    670 // 4. Neither the name of the University nor the names of its contributors
    671 //    may be used to endorse or promote products derived from this software
    672 //    without specific prior written permission.
    673 //
    674 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    675 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    676 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    677 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    678 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    679 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    680 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    681 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    682 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    683 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    684 // SUCH DAMAGE.
    685 //
    686 //	@(#)termios.h	8.3 (Berkeley) 3/28/94
    687 
    688 // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
    689 //
    690 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
    691 //
    692 // This file contains Original Code and/or Modifications of Original Code
    693 // as defined in and that are subject to the Apple Public Source License
    694 // Version 2.0 (the 'License'). You may not use this file except in
    695 // compliance with the License. The rights granted to you under the License
    696 // may not be used to create, or enable the creation or redistribution of,
    697 // unlawful or unlicensed copies of an Apple operating system, or to
    698 // circumvent, violate, or enable the circumvention or violation of, any
    699 // terms of an Apple operating system software license agreement.
    700 //
    701 // Please obtain a copy of the License at
    702 // http://www.opensource.apple.com/apsl/ and read it before using this file.
    703 //
    704 // The Original Code and all software distributed under the License are
    705 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    706 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    707 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    708 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
    709 // Please see the License for the specific language governing rights and
    710 // limitations under the License.
    711 //
    712 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
    713 // Copyright 1995 NeXT Computer, Inc. All rights reserved.
    714 // Copyright (c) 1991, 1993
    715 //	The Regents of the University of California.  All rights reserved.
    716 //
    717 // This code is derived from software contributed to Berkeley by
    718 // Berkeley Software Design, Inc.
    719 //
    720 // Redistribution and use in source and binary forms, with or without
    721 // modification, are permitted provided that the following conditions
    722 // are met:
    723 // 1. Redistributions of source code must retain the above copyright
    724 //    notice, this list of conditions and the following disclaimer.
    725 // 2. Redistributions in binary form must reproduce the above copyright
    726 //    notice, this list of conditions and the following disclaimer in the
    727 //    documentation and/or other materials provided with the distribution.
    728 // 3. All advertising materials mentioning features or use of this software
    729 //    must display the following acknowledgement:
    730 //	This product includes software developed by the University of
    731 //	California, Berkeley and its contributors.
    732 // 4. Neither the name of the University nor the names of its contributors
    733 //    may be used to endorse or promote products derived from this software
    734 //    without specific prior written permission.
    735 //
    736 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    737 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    738 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    739 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    740 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    741 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    742 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    743 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    744 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    745 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    746 // SUCH DAMAGE.
    747 //
    748 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
    749 
    750 // Special Control Characters
    751 //
    752 // Index into c_cc[] character array.
    753 //
    754 //	Name	     Subscript	Enabled by
    755 //			7	   spare 1
    756 //			19	   spare 2
    757 
    758 // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
    759 //
    760 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
    761 //
    762 // This file contains Original Code and/or Modifications of Original Code
    763 // as defined in and that are subject to the Apple Public Source License
    764 // Version 2.0 (the 'License'). You may not use this file except in
    765 // compliance with the License. The rights granted to you under the License
    766 // may not be used to create, or enable the creation or redistribution of,
    767 // unlawful or unlicensed copies of an Apple operating system, or to
    768 // circumvent, violate, or enable the circumvention or violation of, any
    769 // terms of an Apple operating system software license agreement.
    770 //
    771 // Please obtain a copy of the License at
    772 // http://www.opensource.apple.com/apsl/ and read it before using this file.
    773 //
    774 // The Original Code and all software distributed under the License are
    775 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    776 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    777 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    778 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
    779 // Please see the License for the specific language governing rights and
    780 // limitations under the License.
    781 //
    782 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
    783 
    784 // Input flags - software input processing
    785 
    786 // Output flags - software output processing
    787 // The following block of features is unimplemented.  Use of these flags in
    788 // programs will currently result in unexpected behaviour.
    789 //
    790 // - Begin unimplemented features
    791 // These manifest constants have the same names as those in the header
    792 // <sys/ioctl_compat.h>, so you are not permitted to have both definitions
    793 // in scope simultaneously in the same compilation unit.  Nevertheless,
    794 // they are required to be in scope when _POSIX_C_SOURCE is requested;
    795 // this means that including the <sys/ioctl_compat.h> header before this
    796 // one when _POSIX_C_SOURCE is in scope will result in redefintions.  We
    797 // attempt to maintain these as the same values so as to avoid this being
    798 // an outright error in most compilers.
    799 // not in sys/ioctl_compat.h, use OXTABS value
    800 // + End unimplemented features
    801 
    802 // Control flags - hardware control of terminal
    803 
    804 // "Local" flags - dumping ground for other state
    805 //
    806 // Warning: some flags in this structure begin with
    807 // the letter "I" and look like they belong in the
    808 // input flag.
    809 
    810 type Tcflag_t = uint64 /* termios.h:263:25 */
    811 type Cc_t = uint8      /* termios.h:264:25 */
    812 type Speed_t = uint64  /* termios.h:265:25 */
    813 
    814 type Termios = struct {
    815 	Fc_iflag     Tcflag_t
    816 	Fc_oflag     Tcflag_t
    817 	Fc_cflag     Tcflag_t
    818 	Fc_lflag     Tcflag_t
    819 	Fc_cc        [20]Cc_t
    820 	F__ccgo_pad1 [4]byte
    821 	Fc_ispeed    Speed_t
    822 	Fc_ospeed    Speed_t
    823 } /* termios.h:267:1 */
    824 
    825 // Include tty ioctl's that aren't just for backwards compatibility
    826 // with the old tty driver.  These ioctl definitions were previously
    827 // in <sys/ioctl.h>.
    828 // Copyright (c) 2000-2002 Apple Computer, Inc. All rights reserved.
    829 //
    830 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
    831 //
    832 // This file contains Original Code and/or Modifications of Original Code
    833 // as defined in and that are subject to the Apple Public Source License
    834 // Version 2.0 (the 'License'). You may not use this file except in
    835 // compliance with the License. The rights granted to you under the License
    836 // may not be used to create, or enable the creation or redistribution of,
    837 // unlawful or unlicensed copies of an Apple operating system, or to
    838 // circumvent, violate, or enable the circumvention or violation of, any
    839 // terms of an Apple operating system software license agreement.
    840 //
    841 // Please obtain a copy of the License at
    842 // http://www.opensource.apple.com/apsl/ and read it before using this file.
    843 //
    844 // The Original Code and all software distributed under the License are
    845 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    846 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    847 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    848 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
    849 // Please see the License for the specific language governing rights and
    850 // limitations under the License.
    851 //
    852 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
    853 // Copyright (c) 1997 Apple Computer, Inc. All Rights Reserved
    854 // -
    855 // Copyright (c) 1982, 1986, 1990, 1993, 1994
    856 //	The Regents of the University of California.  All rights reserved.
    857 // (c) UNIX System Laboratories, Inc.
    858 // All or some portions of this file are derived from material licensed
    859 // to the University of California by American Telephone and Telegraph
    860 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
    861 // the permission of UNIX System Laboratories, Inc.
    862 //
    863 // Redistribution and use in source and binary forms, with or without
    864 // modification, are permitted provided that the following conditions
    865 // are met:
    866 // 1. Redistributions of source code must retain the above copyright
    867 //    notice, this list of conditions and the following disclaimer.
    868 // 2. Redistributions in binary form must reproduce the above copyright
    869 //    notice, this list of conditions and the following disclaimer in the
    870 //    documentation and/or other materials provided with the distribution.
    871 // 3. All advertising materials mentioning features or use of this software
    872 //    must display the following acknowledgement:
    873 //      This product includes software developed by the University of
    874 //      California, Berkeley and its contributors.
    875 // 4. Neither the name of the University nor the names of its contributors
    876 //    may be used to endorse or promote products derived from this software
    877 //    without specific prior written permission.
    878 //
    879 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    880 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    881 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    882 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    883 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    884 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    885 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    886 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    887 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    888 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    889 // SUCH DAMAGE.
    890 //
    891 //	@(#)ttycom.h	8.1 (Berkeley) 3/28/94
    892 
    893 // Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
    894 //
    895 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
    896 //
    897 // This file contains Original Code and/or Modifications of Original Code
    898 // as defined in and that are subject to the Apple Public Source License
    899 // Version 2.0 (the 'License'). You may not use this file except in
    900 // compliance with the License. The rights granted to you under the License
    901 // may not be used to create, or enable the creation or redistribution of,
    902 // unlawful or unlicensed copies of an Apple operating system, or to
    903 // circumvent, violate, or enable the circumvention or violation of, any
    904 // terms of an Apple operating system software license agreement.
    905 //
    906 // Please obtain a copy of the License at
    907 // http://www.opensource.apple.com/apsl/ and read it before using this file.
    908 //
    909 // The Original Code and all software distributed under the License are
    910 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    911 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    912 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    913 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
    914 // Please see the License for the specific language governing rights and
    915 // limitations under the License.
    916 //
    917 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
    918 // Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved
    919 // -
    920 // Copyright (c) 1982, 1986, 1990, 1993, 1994
    921 //	The Regents of the University of California.  All rights reserved.
    922 //
    923 // Redistribution and use in source and binary forms, with or without
    924 // modification, are permitted provided that the following conditions
    925 // are met:
    926 // 1. Redistributions of source code must retain the above copyright
    927 //    notice, this list of conditions and the following disclaimer.
    928 // 2. Redistributions in binary form must reproduce the above copyright
    929 //    notice, this list of conditions and the following disclaimer in the
    930 //    documentation and/or other materials provided with the distribution.
    931 // 3. All advertising materials mentioning features or use of this software
    932 //    must display the following acknowledgement:
    933 //	This product includes software developed by the University of
    934 //	California, Berkeley and its contributors.
    935 // 4. Neither the name of the University nor the names of its contributors
    936 //    may be used to endorse or promote products derived from this software
    937 //    without specific prior written permission.
    938 //
    939 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    940 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    941 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    942 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    943 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    944 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    945 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    946 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    947 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    948 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    949 // SUCH DAMAGE.
    950 //
    951 //	@(#)ioccom.h	8.2 (Berkeley) 3/28/94
    952 
    953 // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
    954 //
    955 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
    956 //
    957 // This file contains Original Code and/or Modifications of Original Code
    958 // as defined in and that are subject to the Apple Public Source License
    959 // Version 2.0 (the 'License'). You may not use this file except in
    960 // compliance with the License. The rights granted to you under the License
    961 // may not be used to create, or enable the creation or redistribution of,
    962 // unlawful or unlicensed copies of an Apple operating system, or to
    963 // circumvent, violate, or enable the circumvention or violation of, any
    964 // terms of an Apple operating system software license agreement.
    965 //
    966 // Please obtain a copy of the License at
    967 // http://www.opensource.apple.com/apsl/ and read it before using this file.
    968 //
    969 // The Original Code and all software distributed under the License are
    970 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    971 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    972 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    973 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
    974 // Please see the License for the specific language governing rights and
    975 // limitations under the License.
    976 //
    977 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
    978 
    979 // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
    980 //
    981 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
    982 //
    983 // This file contains Original Code and/or Modifications of Original Code
    984 // as defined in and that are subject to the Apple Public Source License
    985 // Version 2.0 (the 'License'). You may not use this file except in
    986 // compliance with the License. The rights granted to you under the License
    987 // may not be used to create, or enable the creation or redistribution of,
    988 // unlawful or unlicensed copies of an Apple operating system, or to
    989 // circumvent, violate, or enable the circumvention or violation of, any
    990 // terms of an Apple operating system software license agreement.
    991 //
    992 // Please obtain a copy of the License at
    993 // http://www.opensource.apple.com/apsl/ and read it before using this file.
    994 //
    995 // The Original Code and all software distributed under the License are
    996 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
    997 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
    998 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
    999 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1000 // Please see the License for the specific language governing rights and
   1001 // limitations under the License.
   1002 //
   1003 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   1004 // Copyright 1995 NeXT Computer, Inc. All rights reserved.
   1005 // Copyright (c) 1991, 1993
   1006 //	The Regents of the University of California.  All rights reserved.
   1007 //
   1008 // This code is derived from software contributed to Berkeley by
   1009 // Berkeley Software Design, Inc.
   1010 //
   1011 // Redistribution and use in source and binary forms, with or without
   1012 // modification, are permitted provided that the following conditions
   1013 // are met:
   1014 // 1. Redistributions of source code must retain the above copyright
   1015 //    notice, this list of conditions and the following disclaimer.
   1016 // 2. Redistributions in binary form must reproduce the above copyright
   1017 //    notice, this list of conditions and the following disclaimer in the
   1018 //    documentation and/or other materials provided with the distribution.
   1019 // 3. All advertising materials mentioning features or use of this software
   1020 //    must display the following acknowledgement:
   1021 //	This product includes software developed by the University of
   1022 //	California, Berkeley and its contributors.
   1023 // 4. Neither the name of the University nor the names of its contributors
   1024 //    may be used to endorse or promote products derived from this software
   1025 //    without specific prior written permission.
   1026 //
   1027 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1028 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1029 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1030 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1031 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1032 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1033 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1034 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1035 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1036 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1037 // SUCH DAMAGE.
   1038 //
   1039 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1040 
   1041 // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
   1042 //
   1043 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   1044 //
   1045 // This file contains Original Code and/or Modifications of Original Code
   1046 // as defined in and that are subject to the Apple Public Source License
   1047 // Version 2.0 (the 'License'). You may not use this file except in
   1048 // compliance with the License. The rights granted to you under the License
   1049 // may not be used to create, or enable the creation or redistribution of,
   1050 // unlawful or unlicensed copies of an Apple operating system, or to
   1051 // circumvent, violate, or enable the circumvention or violation of, any
   1052 // terms of an Apple operating system software license agreement.
   1053 //
   1054 // Please obtain a copy of the License at
   1055 // http://www.opensource.apple.com/apsl/ and read it before using this file.
   1056 //
   1057 // The Original Code and all software distributed under the License are
   1058 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   1059 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   1060 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   1061 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1062 // Please see the License for the specific language governing rights and
   1063 // limitations under the License.
   1064 //
   1065 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   1066 
   1067 // Copyright (c) 2000-2003 Apple Computer, Inc. All rights reserved.
   1068 //
   1069 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   1070 //
   1071 // This file contains Original Code and/or Modifications of Original Code
   1072 // as defined in and that are subject to the Apple Public Source License
   1073 // Version 2.0 (the 'License'). You may not use this file except in
   1074 // compliance with the License. The rights granted to you under the License
   1075 // may not be used to create, or enable the creation or redistribution of,
   1076 // unlawful or unlicensed copies of an Apple operating system, or to
   1077 // circumvent, violate, or enable the circumvention or violation of, any
   1078 // terms of an Apple operating system software license agreement.
   1079 //
   1080 // Please obtain a copy of the License at
   1081 // http://www.opensource.apple.com/apsl/ and read it before using this file.
   1082 //
   1083 // The Original Code and all software distributed under the License are
   1084 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   1085 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   1086 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   1087 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1088 // Please see the License for the specific language governing rights and
   1089 // limitations under the License.
   1090 //
   1091 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   1092 
   1093 // This header file contains integer types.  It's intended to also contain
   1094 // flotaing point and other arithmetic types, as needed, later.
   1095 
   1096 type X__int8_t = int8     /* _types.h:37:33 */
   1097 type X__uint8_t = uint8   /* _types.h:41:33 */
   1098 type X__int16_t = int16   /* _types.h:42:33 */
   1099 type X__uint16_t = uint16 /* _types.h:43:33 */
   1100 type X__int32_t = int32   /* _types.h:44:33 */
   1101 type X__uint32_t = uint32 /* _types.h:45:33 */
   1102 type X__int64_t = int64   /* _types.h:46:33 */
   1103 type X__uint64_t = uint64 /* _types.h:47:33 */
   1104 
   1105 type X__darwin_intptr_t = int64   /* _types.h:49:33 */
   1106 type X__darwin_natural_t = uint32 /* _types.h:50:33 */
   1107 
   1108 // The rune type below is declared to be an ``int'' instead of the more natural
   1109 // ``unsigned long'' or ``long''.  Two things are happening here.  It is not
   1110 // unsigned so that EOF (-1) can be naturally assigned to it and used.  Also,
   1111 // it looks like 10646 will be a 31 bit standard.  This means that if your
   1112 // ints cannot hold 32 bits, you will be in trouble.  The reason an int was
   1113 // chosen over a long is that the is*() and to*() routines take ints (says
   1114 // ANSI C), but they use __darwin_ct_rune_t instead of int.  By changing it
   1115 // here, you lose a bit of ANSI conformance, but your programs will still
   1116 // work.
   1117 //
   1118 // NOTE: rune_t is not covered by ANSI nor other standards, and should not
   1119 // be instantiated outside of lib/libc/locale.  Use wchar_t.  wchar_t and
   1120 // rune_t must be the same type.  Also wint_t must be no narrower than
   1121 // wchar_t, and should also be able to hold all members of the largest
   1122 // character set plus one extra value (WEOF). wint_t must be at least 16 bits.
   1123 
   1124 type X__darwin_ct_rune_t = int32 /* _types.h:70:33 */ // ct_rune_t
   1125 
   1126 // mbstate_t is an opaque object to keep conversion state, during multibyte
   1127 // stream conversions.  The content must not be referenced by user programs.
   1128 type X__mbstate_t = struct {
   1129 	F__ccgo_pad1 [0]uint64
   1130 	F__mbstate8  [128]int8
   1131 } /* _types.h:79:3 */
   1132 
   1133 type X__darwin_mbstate_t = X__mbstate_t /* _types.h:81:33 */ // mbstate_t
   1134 
   1135 type X__darwin_ptrdiff_t = int64 /* _types.h:84:33 */ // ptr1 - ptr2
   1136 
   1137 type X__darwin_size_t = uint64 /* _types.h:92:33 */ // sizeof()
   1138 
   1139 type X__darwin_va_list = X__builtin_va_list /* _types.h:98:33 */ // va_list
   1140 
   1141 type X__darwin_wchar_t = int32 /* _types.h:104:33 */ // wchar_t
   1142 
   1143 type X__darwin_rune_t = X__darwin_wchar_t /* _types.h:109:33 */ // rune_t
   1144 
   1145 type X__darwin_wint_t = int32 /* _types.h:112:33 */ // wint_t
   1146 
   1147 type X__darwin_clock_t = uint64        /* _types.h:117:33 */ // clock()
   1148 type X__darwin_socklen_t = X__uint32_t /* _types.h:118:33 */ // socklen_t (duh)
   1149 type X__darwin_ssize_t = int64         /* _types.h:119:33 */ // byte count or error
   1150 type X__darwin_time_t = int64          /* _types.h:120:33 */ // time()
   1151 
   1152 // Type definitions; takes common type definitions that must be used
   1153 // in multiple header files due to [XSI], removes them from the system
   1154 // space, and puts them in the implementation space.
   1155 
   1156 type X__darwin_blkcnt_t = X__int64_t                    /* _types.h:55:25 */ // total blocks
   1157 type X__darwin_blksize_t = X__int32_t                   /* _types.h:56:25 */ // preferred block size
   1158 type X__darwin_dev_t = X__int32_t                       /* _types.h:57:25 */ // dev_t
   1159 type X__darwin_fsblkcnt_t = uint32                      /* _types.h:58:25 */ // Used by statvfs and fstatvfs
   1160 type X__darwin_fsfilcnt_t = uint32                      /* _types.h:59:25 */ // Used by statvfs and fstatvfs
   1161 type X__darwin_gid_t = X__uint32_t                      /* _types.h:60:25 */ // [???] process and group IDs
   1162 type X__darwin_id_t = X__uint32_t                       /* _types.h:61:25 */ // [XSI] pid_t, uid_t, or gid_t
   1163 type X__darwin_ino64_t = X__uint64_t                    /* _types.h:62:25 */ // [???] Used for 64 bit inodes
   1164 type X__darwin_ino_t = X__darwin_ino64_t                /* _types.h:64:26 */ // [???] Used for inodes
   1165 type X__darwin_mach_port_name_t = X__darwin_natural_t   /* _types.h:68:28 */ // Used by mach
   1166 type X__darwin_mach_port_t = X__darwin_mach_port_name_t /* _types.h:69:35 */ // Used by mach
   1167 type X__darwin_mode_t = X__uint16_t                     /* _types.h:70:25 */ // [???] Some file attributes
   1168 type X__darwin_off_t = X__int64_t                       /* _types.h:71:25 */ // [???] Used for file sizes
   1169 type X__darwin_pid_t = X__int32_t                       /* _types.h:72:25 */ // [???] process and group IDs
   1170 type X__darwin_sigset_t = X__uint32_t                   /* _types.h:73:25 */ // [???] signal set
   1171 type X__darwin_suseconds_t = X__int32_t                 /* _types.h:74:25 */ // [???] microseconds
   1172 type X__darwin_uid_t = X__uint32_t                      /* _types.h:75:25 */ // [???] user IDs
   1173 type X__darwin_useconds_t = X__uint32_t                 /* _types.h:76:25 */ // [???] microseconds
   1174 type X__darwin_uuid_t = [16]uint8                       /* _types.h:77:25 */
   1175 type X__darwin_uuid_string_t = [37]int8                 /* _types.h:78:17 */
   1176 
   1177 // Copyright (c) 2003-2013 Apple Inc. All rights reserved.
   1178 //
   1179 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   1180 //
   1181 // This file contains Original Code and/or Modifications of Original Code
   1182 // as defined in and that are subject to the Apple Public Source License
   1183 // Version 2.0 (the 'License'). You may not use this file except in
   1184 // compliance with the License. The rights granted to you under the License
   1185 // may not be used to create, or enable the creation or redistribution of,
   1186 // unlawful or unlicensed copies of an Apple operating system, or to
   1187 // circumvent, violate, or enable the circumvention or violation of, any
   1188 // terms of an Apple operating system software license agreement.
   1189 //
   1190 // Please obtain a copy of the License at
   1191 // http://www.opensource.apple.com/apsl/ and read it before using this file.
   1192 //
   1193 // The Original Code and all software distributed under the License are
   1194 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   1195 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   1196 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   1197 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1198 // Please see the License for the specific language governing rights and
   1199 // limitations under the License.
   1200 //
   1201 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   1202 
   1203 // Copyright (c) 2000-2018 Apple Inc. All rights reserved.
   1204 //
   1205 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   1206 //
   1207 // This file contains Original Code and/or Modifications of Original Code
   1208 // as defined in and that are subject to the Apple Public Source License
   1209 // Version 2.0 (the 'License'). You may not use this file except in
   1210 // compliance with the License. The rights granted to you under the License
   1211 // may not be used to create, or enable the creation or redistribution of,
   1212 // unlawful or unlicensed copies of an Apple operating system, or to
   1213 // circumvent, violate, or enable the circumvention or violation of, any
   1214 // terms of an Apple operating system software license agreement.
   1215 //
   1216 // Please obtain a copy of the License at
   1217 // http://www.opensource.apple.com/apsl/ and read it before using this file.
   1218 //
   1219 // The Original Code and all software distributed under the License are
   1220 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   1221 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   1222 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   1223 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1224 // Please see the License for the specific language governing rights and
   1225 // limitations under the License.
   1226 //
   1227 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   1228 // Copyright 1995 NeXT Computer, Inc. All rights reserved.
   1229 // Copyright (c) 1991, 1993
   1230 //	The Regents of the University of California.  All rights reserved.
   1231 //
   1232 // This code is derived from software contributed to Berkeley by
   1233 // Berkeley Software Design, Inc.
   1234 //
   1235 // Redistribution and use in source and binary forms, with or without
   1236 // modification, are permitted provided that the following conditions
   1237 // are met:
   1238 // 1. Redistributions of source code must retain the above copyright
   1239 //    notice, this list of conditions and the following disclaimer.
   1240 // 2. Redistributions in binary form must reproduce the above copyright
   1241 //    notice, this list of conditions and the following disclaimer in the
   1242 //    documentation and/or other materials provided with the distribution.
   1243 // 3. All advertising materials mentioning features or use of this software
   1244 //    must display the following acknowledgement:
   1245 //	This product includes software developed by the University of
   1246 //	California, Berkeley and its contributors.
   1247 // 4. Neither the name of the University nor the names of its contributors
   1248 //    may be used to endorse or promote products derived from this software
   1249 //    without specific prior written permission.
   1250 //
   1251 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1252 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1253 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1254 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1255 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1256 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1257 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1258 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1259 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1260 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1261 // SUCH DAMAGE.
   1262 //
   1263 //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   1264 
   1265 // pthread opaque structures
   1266 
   1267 type X__darwin_pthread_handler_rec = struct {
   1268 	F__routine uintptr
   1269 	F__arg     uintptr
   1270 	F__next    uintptr
   1271 } /* _pthread_types.h:57:1 */
   1272 
   1273 type X_opaque_pthread_attr_t = struct {
   1274 	F__sig    int64
   1275 	F__opaque [56]int8
   1276 } /* _pthread_types.h:63:1 */
   1277 
   1278 type X_opaque_pthread_cond_t = struct {
   1279 	F__sig    int64
   1280 	F__opaque [40]int8
   1281 } /* _pthread_types.h:68:1 */
   1282 
   1283 type X_opaque_pthread_condattr_t = struct {
   1284 	F__sig    int64
   1285 	F__opaque [8]int8
   1286 } /* _pthread_types.h:73:1 */
   1287 
   1288 type X_opaque_pthread_mutex_t = struct {
   1289 	F__sig    int64
   1290 	F__opaque [56]int8
   1291 } /* _pthread_types.h:78:1 */
   1292 
   1293 type X_opaque_pthread_mutexattr_t = struct {
   1294 	F__sig    int64
   1295 	F__opaque [8]int8
   1296 } /* _pthread_types.h:83:1 */
   1297 
   1298 type X_opaque_pthread_once_t = struct {
   1299 	F__sig    int64
   1300 	F__opaque [8]int8
   1301 } /* _pthread_types.h:88:1 */
   1302 
   1303 type X_opaque_pthread_rwlock_t = struct {
   1304 	F__sig    int64
   1305 	F__opaque [192]int8
   1306 } /* _pthread_types.h:93:1 */
   1307 
   1308 type X_opaque_pthread_rwlockattr_t = struct {
   1309 	F__sig    int64
   1310 	F__opaque [16]int8
   1311 } /* _pthread_types.h:98:1 */
   1312 
   1313 type X_opaque_pthread_t = struct {
   1314 	F__sig           int64
   1315 	F__cleanup_stack uintptr
   1316 	F__opaque        [8176]int8
   1317 } /* _pthread_types.h:103:1 */
   1318 
   1319 type X__darwin_pthread_attr_t = X_opaque_pthread_attr_t             /* _pthread_types.h:109:39 */
   1320 type X__darwin_pthread_cond_t = X_opaque_pthread_cond_t             /* _pthread_types.h:110:39 */
   1321 type X__darwin_pthread_condattr_t = X_opaque_pthread_condattr_t     /* _pthread_types.h:111:43 */
   1322 type X__darwin_pthread_key_t = uint64                               /* _pthread_types.h:112:23 */
   1323 type X__darwin_pthread_mutex_t = X_opaque_pthread_mutex_t           /* _pthread_types.h:113:40 */
   1324 type X__darwin_pthread_mutexattr_t = X_opaque_pthread_mutexattr_t   /* _pthread_types.h:114:44 */
   1325 type X__darwin_pthread_once_t = X_opaque_pthread_once_t             /* _pthread_types.h:115:39 */
   1326 type X__darwin_pthread_rwlock_t = X_opaque_pthread_rwlock_t         /* _pthread_types.h:116:41 */
   1327 type X__darwin_pthread_rwlockattr_t = X_opaque_pthread_rwlockattr_t /* _pthread_types.h:117:45 */
   1328 type X__darwin_pthread_t = uintptr                                  /* _pthread_types.h:118:34 */
   1329 
   1330 // Ioctl's have the command encoded in the lower word, and the size of
   1331 // any in or out parameters in the upper word.  The high 3 bits of the
   1332 // upper word are used to encode the in/out status of the parameter.
   1333 
   1334 // no parameters
   1335 // copy parameters out
   1336 // copy parameters in
   1337 // copy paramters in and out
   1338 // mask for IN/OUT/VOID
   1339 
   1340 // this should be _IORW, but stdio got there first
   1341 
   1342 // Tty ioctl's except for those supported only for backwards compatibility
   1343 // with the old tty driver.
   1344 
   1345 // Window/terminal size structure.  This information is stored by the kernel
   1346 // in order to provide a consistent interface, but is not used by the kernel.
   1347 type Winsize = struct {
   1348 	Fws_row    uint16
   1349 	Fws_col    uint16
   1350 	Fws_xpixel uint16
   1351 	Fws_ypixel uint16
   1352 } /* ttycom.h:82:1 */
   1353 
   1354 // 8-10 compat
   1355 // 15 unused
   1356 // 17-18 compat
   1357 // 127-124 compat
   1358 // 117-116 compat
   1359 
   1360 // END OF PROTECTED INCLUDE.
   1361 
   1362 // Copyright (c) 2000-2002 Apple Computer, Inc. All rights reserved.
   1363 //
   1364 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   1365 //
   1366 // This file contains Original Code and/or Modifications of Original Code
   1367 // as defined in and that are subject to the Apple Public Source License
   1368 // Version 2.0 (the 'License'). You may not use this file except in
   1369 // compliance with the License. The rights granted to you under the License
   1370 // may not be used to create, or enable the creation or redistribution of,
   1371 // unlawful or unlicensed copies of an Apple operating system, or to
   1372 // circumvent, violate, or enable the circumvention or violation of, any
   1373 // terms of an Apple operating system software license agreement.
   1374 //
   1375 // Please obtain a copy of the License at
   1376 // http://www.opensource.apple.com/apsl/ and read it before using this file.
   1377 //
   1378 // The Original Code and all software distributed under the License are
   1379 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   1380 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   1381 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   1382 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1383 // Please see the License for the specific language governing rights and
   1384 // limitations under the License.
   1385 //
   1386 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   1387 // Copyright (c) 1997 Apple Computer, Inc. All Rights Reserved
   1388 // -
   1389 // Copyright (c) 1982, 1986, 1993
   1390 //	The Regents of the University of California.  All rights reserved.
   1391 // (c) UNIX System Laboratories, Inc.
   1392 // All or some portions of this file are derived from material licensed
   1393 // to the University of California by American Telephone and Telegraph
   1394 // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   1395 // the permission of UNIX System Laboratories, Inc.
   1396 //
   1397 // Redistribution and use in source and binary forms, with or without
   1398 // modification, are permitted provided that the following conditions
   1399 // are met:
   1400 // 1. Redistributions of source code must retain the above copyright
   1401 //    notice, this list of conditions and the following disclaimer.
   1402 // 2. Redistributions in binary form must reproduce the above copyright
   1403 //    notice, this list of conditions and the following disclaimer in the
   1404 //    documentation and/or other materials provided with the distribution.
   1405 // 3. All advertising materials mentioning features or use of this software
   1406 //    must display the following acknowledgement:
   1407 //      This product includes software developed by the University of
   1408 //      California, Berkeley and its contributors.
   1409 // 4. Neither the name of the University nor the names of its contributors
   1410 //    may be used to endorse or promote products derived from this software
   1411 //    without specific prior written permission.
   1412 //
   1413 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   1414 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   1415 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   1416 // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   1417 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   1418 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   1419 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   1420 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   1421 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   1422 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   1423 // SUCH DAMAGE.
   1424 //
   1425 //	@(#)ttydefaults.h	8.4 (Berkeley) 1/21/94
   1426 
   1427 // System wide defaults for terminal state.
   1428 
   1429 // Defaults on "first" open.
   1430 
   1431 // Control Character Defaults
   1432 // compat
   1433 
   1434 // PROTECTED INCLUSION ENDS HERE
   1435 
   1436 // #define TTYDEFCHARS to include an array of default control characters.
   1437 // Copyright (c) 2004, 2008, 2009 Apple Inc. All rights reserved.
   1438 //
   1439 // @APPLE_LICENSE_HEADER_START@
   1440 //
   1441 // This file contains Original Code and/or Modifications of Original Code
   1442 // as defined in and that are subject to the Apple Public Source License
   1443 // Version 2.0 (the 'License'). You may not use this file except in
   1444 // compliance with the License. Please obtain a copy of the License at
   1445 // http://www.opensource.apple.com/apsl/ and read it before using this
   1446 // file.
   1447 //
   1448 // The Original Code and all software distributed under the License are
   1449 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   1450 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   1451 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   1452 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1453 // Please see the License for the specific language governing rights and
   1454 // limitations under the License.
   1455 //
   1456 // @APPLE_LICENSE_HEADER_END@
   1457 
   1458 // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
   1459 //
   1460 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   1461 //
   1462 // This file contains Original Code and/or Modifications of Original Code
   1463 // as defined in and that are subject to the Apple Public Source License
   1464 // Version 2.0 (the 'License'). You may not use this file except in
   1465 // compliance with the License. The rights granted to you under the License
   1466 // may not be used to create, or enable the creation or redistribution of,
   1467 // unlawful or unlicensed copies of an Apple operating system, or to
   1468 // circumvent, violate, or enable the circumvention or violation of, any
   1469 // terms of an Apple operating system software license agreement.
   1470 //
   1471 // Please obtain a copy of the License at
   1472 // http://www.opensource.apple.com/apsl/ and read it before using this file.
   1473 //
   1474 // The Original Code and all software distributed under the License are
   1475 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   1476 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   1477 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   1478 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1479 // Please see the License for the specific language governing rights and
   1480 // limitations under the License.
   1481 //
   1482 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   1483 
   1484 // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
   1485 //
   1486 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   1487 //
   1488 // This file contains Original Code and/or Modifications of Original Code
   1489 // as defined in and that are subject to the Apple Public Source License
   1490 // Version 2.0 (the 'License'). You may not use this file except in
   1491 // compliance with the License. The rights granted to you under the License
   1492 // may not be used to create, or enable the creation or redistribution of,
   1493 // unlawful or unlicensed copies of an Apple operating system, or to
   1494 // circumvent, violate, or enable the circumvention or violation of, any
   1495 // terms of an Apple operating system software license agreement.
   1496 //
   1497 // Please obtain a copy of the License at
   1498 // http://www.opensource.apple.com/apsl/ and read it before using this file.
   1499 //
   1500 // The Original Code and all software distributed under the License are
   1501 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   1502 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   1503 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   1504 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1505 // Please see the License for the specific language governing rights and
   1506 // limitations under the License.
   1507 //
   1508 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   1509 
   1510 type X__darwin_nl_item = int32        /* _types.h:40:14 */
   1511 type X__darwin_wctrans_t = int32      /* _types.h:41:14 */
   1512 type X__darwin_wctype_t = X__uint32_t /* _types.h:43:20 */
   1513 
   1514 // Copyright (c) 2003-2012 Apple Inc. All rights reserved.
   1515 //
   1516 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   1517 //
   1518 // This file contains Original Code and/or Modifications of Original Code
   1519 // as defined in and that are subject to the Apple Public Source License
   1520 // Version 2.0 (the 'License'). You may not use this file except in
   1521 // compliance with the License. The rights granted to you under the License
   1522 // may not be used to create, or enable the creation or redistribution of,
   1523 // unlawful or unlicensed copies of an Apple operating system, or to
   1524 // circumvent, violate, or enable the circumvention or violation of, any
   1525 // terms of an Apple operating system software license agreement.
   1526 //
   1527 // Please obtain a copy of the License at
   1528 // http://www.opensource.apple.com/apsl/ and read it before using this file.
   1529 //
   1530 // The Original Code and all software distributed under the License are
   1531 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   1532 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   1533 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   1534 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1535 // Please see the License for the specific language governing rights and
   1536 // limitations under the License.
   1537 //
   1538 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   1539 // Copyright (c) 2003-2007 Apple Inc. All rights reserved.
   1540 //
   1541 // @APPLE_OSREFERENCE_LICENSE_HEADER_START@
   1542 //
   1543 // This file contains Original Code and/or Modifications of Original Code
   1544 // as defined in and that are subject to the Apple Public Source License
   1545 // Version 2.0 (the 'License'). You may not use this file except in
   1546 // compliance with the License. The rights granted to you under the License
   1547 // may not be used to create, or enable the creation or redistribution of,
   1548 // unlawful or unlicensed copies of an Apple operating system, or to
   1549 // circumvent, violate, or enable the circumvention or violation of, any
   1550 // terms of an Apple operating system software license agreement.
   1551 //
   1552 // Please obtain a copy of the License at
   1553 // http://www.opensource.apple.com/apsl/ and read it before using this file.
   1554 //
   1555 // The Original Code and all software distributed under the License are
   1556 // distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
   1557 // EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
   1558 // INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
   1559 // FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
   1560 // Please see the License for the specific language governing rights and
   1561 // limitations under the License.
   1562 //
   1563 // @APPLE_OSREFERENCE_LICENSE_HEADER_END@
   1564 
   1565 type Pid_t = X__darwin_pid_t /* _pid_t.h:31:31 */
   1566 
   1567 var _ int8 /* gen.c:2:13: */