modernc.org/libc@v1.24.1/pthread/pthread_netbsd_amd64.go (about)

     1  // Code generated by 'ccgo pthread/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 pthread/pthread_netbsd_amd64.go -pkgname pthread', DO NOT EDIT.
     2  
     3  package pthread
     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  	BIG_ENDIAN                    = 4321                 // endian.h:101:1:
    19  	BYTE_ORDER                    = 1234                 // endian.h:103:1:
    20  	CLOCKS_PER_SEC                = 100                  // time.h:73:1:
    21  	CLOCK_MONOTONIC               = 3                    // time.h:297:1:
    22  	CLOCK_PROCESS_CPUTIME_ID      = 0x40000000           // time.h:299:1:
    23  	CLOCK_PROF                    = 2                    // time.h:296:1:
    24  	CLOCK_REALTIME                = 0                    // time.h:294:1:
    25  	CLOCK_THREAD_CPUTIME_ID       = 0x20000000           // time.h:298:1:
    26  	CLOCK_VIRTUAL                 = 1                    // time.h:295:1:
    27  	CLONE_CSIGNAL                 = 0x000000ff           // sched.h:189:1:
    28  	CLONE_FILES                   = 0x00000400           // sched.h:192:1:
    29  	CLONE_FS                      = 0x00000200           // sched.h:191:1:
    30  	CLONE_PID                     = 0x00001000           // sched.h:194:1:
    31  	CLONE_PTRACE                  = 0x00002000           // sched.h:195:1:
    32  	CLONE_SIGHAND                 = 0x00000800           // sched.h:193:1:
    33  	CLONE_VFORK                   = 0x00004000           // sched.h:197:1:
    34  	CLONE_VM                      = 0x00000100           // sched.h:190:1:
    35  	CPUSTATES                     = 5                    // sched.h:140:1:
    36  	CP_IDLE                       = 4                    // sched.h:139:1:
    37  	CP_INTR                       = 3                    // sched.h:138:1:
    38  	CP_NICE                       = 1                    // sched.h:136:1:
    39  	CP_SYS                        = 2                    // sched.h:137:1:
    40  	CP_USER                       = 0                    // sched.h:135:1:
    41  	FD_SETSIZE                    = 256                  // fd_set.h:59:1:
    42  	INT16_MAX                     = 32767                // common_int_limits.h:53:1:
    43  	INT16_MIN                     = -32768               // common_int_limits.h:47:1:
    44  	INT32_MAX                     = 2147483647           // common_int_limits.h:54:1:
    45  	INT32_MIN                     = -2147483648          // common_int_limits.h:48:1:
    46  	INT64_MAX                     = 9223372036854775807  // common_int_limits.h:55:1:
    47  	INT64_MIN                     = -9223372036854775808 // common_int_limits.h:49:1:
    48  	INT8_MAX                      = 127                  // common_int_limits.h:52:1:
    49  	INT8_MIN                      = -128                 // common_int_limits.h:46:1:
    50  	INTMAX_MAX                    = 9223372036854775807  // common_int_limits.h:111:1:
    51  	INTMAX_MIN                    = -9223372036854775808 // common_int_limits.h:110:1:
    52  	INTPTR_MAX                    = 9223372036854775807  // common_int_limits.h:105:1:
    53  	INTPTR_MIN                    = -9223372036854775808 // common_int_limits.h:104:1:
    54  	INT_FAST16_MAX                = 2147483647           // common_int_limits.h:93:1:
    55  	INT_FAST16_MIN                = -2147483648          // common_int_limits.h:87:1:
    56  	INT_FAST32_MAX                = 2147483647           // common_int_limits.h:94:1:
    57  	INT_FAST32_MIN                = -2147483648          // common_int_limits.h:88:1:
    58  	INT_FAST64_MAX                = 9223372036854775807  // common_int_limits.h:95:1:
    59  	INT_FAST64_MIN                = -9223372036854775808 // common_int_limits.h:89:1:
    60  	INT_FAST8_MAX                 = 2147483647           // common_int_limits.h:92:1:
    61  	INT_FAST8_MIN                 = -2147483648          // common_int_limits.h:86:1:
    62  	INT_LEAST16_MAX               = 32767                // common_int_limits.h:73:1:
    63  	INT_LEAST16_MIN               = -32768               // common_int_limits.h:67:1:
    64  	INT_LEAST32_MAX               = 2147483647           // common_int_limits.h:74:1:
    65  	INT_LEAST32_MIN               = -2147483648          // common_int_limits.h:68:1:
    66  	INT_LEAST64_MAX               = 9223372036854775807  // common_int_limits.h:75:1:
    67  	INT_LEAST64_MIN               = -9223372036854775808 // common_int_limits.h:69:1:
    68  	INT_LEAST8_MAX                = 127                  // common_int_limits.h:72:1:
    69  	INT_LEAST8_MIN                = -128                 // common_int_limits.h:66:1:
    70  	ITIMER_MONOTONIC              = 3                    // time.h:278:1:
    71  	ITIMER_PROF                   = 2                    // time.h:277:1:
    72  	ITIMER_REAL                   = 0                    // time.h:275:1:
    73  	ITIMER_VIRTUAL                = 1                    // time.h:276:1:
    74  	LITTLE_ENDIAN                 = 1234                 // endian.h:100:1:
    75  	NBBY                          = 8                    // types.h:316:1:
    76  	NFDBITS                       = 32                   // fd_set.h:93:1:
    77  	NODEVMAJOR                    = -1                   // types.h:258:1:
    78  	PDP_ENDIAN                    = 3412                 // endian.h:102:1:
    79  	PTHREAD_BARRIER_SERIAL_THREAD = 1234567              // pthread.h:266:1:
    80  	PTHREAD_CANCEL_ASYNCHRONOUS   = 1                    // pthread.h:261:1:
    81  	PTHREAD_CANCEL_DEFERRED       = 0                    // pthread.h:260:1:
    82  	PTHREAD_CANCEL_DISABLE        = 1                    // pthread.h:264:1:
    83  	PTHREAD_CANCEL_ENABLE         = 0                    // pthread.h:263:1:
    84  	PTHREAD_CREATE_DETACHED       = 1                    // pthread.h:249:1:
    85  	PTHREAD_CREATE_JOINABLE       = 0                    // pthread.h:248:1:
    86  	PTHREAD_EXPLICIT_SCHED        = 1                    // pthread.h:252:1:
    87  	PTHREAD_INHERIT_SCHED         = 0                    // pthread.h:251:1:
    88  	PTHREAD_MAX_NAMELEN_NP        = 32                   // pthread.h:279:1:
    89  	PTHREAD_MUTEX_DEFAULT         = 0                    // pthread.h:287:1:
    90  	PTHREAD_MUTEX_ERRORCHECK      = 1                    // pthread.h:285:1:
    91  	PTHREAD_MUTEX_NORMAL          = 0                    // pthread.h:284:1:
    92  	PTHREAD_MUTEX_RECURSIVE       = 2                    // pthread.h:286:1:
    93  	PTHREAD_PRIO_INHERIT          = 1                    // pthread.h:290:1:
    94  	PTHREAD_PRIO_NONE             = 0                    // pthread.h:289:1:
    95  	PTHREAD_PRIO_PROTECT          = 2                    // pthread.h:291:1:
    96  	PTHREAD_PROCESS_PRIVATE       = 0                    // pthread.h:257:1:
    97  	PTHREAD_PROCESS_SHARED        = 1                    // pthread.h:258:1:
    98  	PTHREAD_SCOPE_PROCESS         = 0                    // pthread.h:254:1:
    99  	PTHREAD_SCOPE_SYSTEM          = 1                    // pthread.h:255:1:
   100  	PTRDIFF_MAX                   = 9223372036854775807  // common_int_limits.h:121:1:
   101  	PTRDIFF_MIN                   = -9223372036854775808 // common_int_limits.h:120:1:
   102  	SCHED_FIFO                    = 1                    // sched.h:89:1:
   103  	SCHED_NONE                    = -1                   // sched.h:87:1:
   104  	SCHED_OTHER                   = 0                    // sched.h:88:1:
   105  	SCHED_RR                      = 2                    // sched.h:90:1:
   106  	SIG_ATOMIC_MAX                = 2147483647           // common_int_limits.h:125:1:
   107  	SIG_ATOMIC_MIN                = -2147483648          // common_int_limits.h:124:1:
   108  	SIZE_MAX                      = 18446744073709551615 // common_int_limits.h:128:1:
   109  	TIMER_ABSTIME                 = 0x1                  // time.h:304:1:
   110  	TIMER_RELTIME                 = 0x0                  // time.h:302:1:
   111  	TIME_UTC                      = 1                    // time.h:238:1:
   112  	UINT16_MAX                    = 65535                // common_int_limits.h:59:1:
   113  	UINT32_MAX                    = 4294967295           // common_int_limits.h:60:1:
   114  	UINT64_MAX                    = 18446744073709551615 // common_int_limits.h:61:1:
   115  	UINT8_MAX                     = 255                  // common_int_limits.h:58:1:
   116  	UINTMAX_MAX                   = 18446744073709551615 // common_int_limits.h:112:1:
   117  	UINTPTR_MAX                   = 18446744073709551615 // common_int_limits.h:106:1:
   118  	UINT_FAST16_MAX               = 4294967295           // common_int_limits.h:99:1:
   119  	UINT_FAST32_MAX               = 4294967295           // common_int_limits.h:100:1:
   120  	UINT_FAST64_MAX               = 18446744073709551615 // common_int_limits.h:101:1:
   121  	UINT_FAST8_MAX                = 4294967295           // common_int_limits.h:98:1:
   122  	UINT_LEAST16_MAX              = 65535                // common_int_limits.h:79:1:
   123  	UINT_LEAST32_MAX              = 4294967295           // common_int_limits.h:80:1:
   124  	UINT_LEAST64_MAX              = 18446744073709551615 // common_int_limits.h:81:1:
   125  	UINT_LEAST8_MAX               = 255                  // common_int_limits.h:78:1:
   126  	WCHAR_MAX                     = 0x7fffffff           // wchar_limits.h:41:1:
   127  	WCHAR_MIN                     = -2147483648          // wchar_limits.h:40:1:
   128  	WINT_MAX                      = 0x7fffffff           // wchar_limits.h:45:1:
   129  	WINT_MIN                      = -2147483648          // wchar_limits.h:44:1:
   130  	X_AMD64_BYTE_SWAP_H_          = 0                    // byte_swap.h:37:1:
   131  	X_AMD64_INT_CONST_H_          = 0                    // int_const.h:33:1:
   132  	X_AMD64_INT_LIMITS_H_         = 0                    // int_limits.h:33:1:
   133  	X_AMD64_INT_MWGWTYPES_H_      = 0                    // int_mwgwtypes.h:33:1:
   134  	X_AMD64_INT_TYPES_H_          = 0                    // int_types.h:35:1:
   135  	X_AMD64_WCHAR_LIMITS_H_       = 0                    // wchar_limits.h:33:1:
   136  	X_BIG_ENDIAN                  = 4321                 // endian.h:44:1:
   137  	X_BSD_INT16_T_                = 0                    // types.h:65:1:
   138  	X_BSD_INT32_T_                = 0                    // types.h:75:1:
   139  	X_BSD_INT64_T_                = 0                    // types.h:85:1:
   140  	X_BSD_INT8_T_                 = 0                    // types.h:55:1:
   141  	X_BSD_INTPTR_T_               = 0                    // stdint.h:80:1:
   142  	X_BSD_UINT16_T_               = 0                    // types.h:70:1:
   143  	X_BSD_UINT32_T_               = 0                    // types.h:80:1:
   144  	X_BSD_UINT64_T_               = 0                    // types.h:90:1:
   145  	X_BSD_UINT8_T_                = 0                    // types.h:60:1:
   146  	X_BSD_UINTPTR_T_              = 0                    // stdint.h:85:1:
   147  	X_BYTE_ORDER                  = 1234                 // endian_machdep.h:3:1:
   148  	X_FILE_OFFSET_BITS            = 64                   // <builtin>:25:1:
   149  	X_LIB_PTHREAD_H               = 0                    // pthread.h:33:1:
   150  	X_LIB_PTHREAD_TYPES_H         = 0                    // pthread_types.h:33:1:
   151  	X_LITTLE_ENDIAN               = 1234                 // endian.h:43:1:
   152  	X_LP64                        = 1                    // <predefined>:268:1:
   153  	X_NETBSD_SOURCE               = 1                    // featuretest.h:70:1:
   154  	X_PDP_ENDIAN                  = 3412                 // endian.h:45:1:
   155  	X_PT_BARRIERATTR_DEAD         = 0xDEAD0808           // pthread_types.h:278:1:
   156  	X_PT_BARRIERATTR_MAGIC        = 0x88880808           // pthread_types.h:277:1:
   157  	X_PT_BARRIER_DEAD             = 0xDEAD0008           // pthread_types.h:270:1:
   158  	X_PT_BARRIER_MAGIC            = 0x88880008           // pthread_types.h:269:1:
   159  	X_PT_CONDATTR_DEAD            = 0xDEAD0006           // pthread_types.h:197:1:
   160  	X_PT_CONDATTR_MAGIC           = 0x66660006           // pthread_types.h:196:1:
   161  	X_PT_COND_DEAD                = 0xDEAD0005           // pthread_types.h:182:1:
   162  	X_PT_COND_MAGIC               = 0x55550005           // pthread_types.h:181:1:
   163  	X_PT_MUTEXATTR_DEAD           = 0xDEAD0004           // pthread_types.h:167:1:
   164  	X_PT_MUTEXATTR_MAGIC          = 0x44440004           // pthread_types.h:166:1:
   165  	X_PT_MUTEX_DEAD               = 0xDEAD0003           // pthread_types.h:139:1:
   166  	X_PT_MUTEX_MAGIC              = 0x33330003           // pthread_types.h:138:1:
   167  	X_PT_RWLOCKATTR_DEAD          = 0xDEAD0909           // pthread_types.h:253:1:
   168  	X_PT_RWLOCKATTR_MAGIC         = 0x99990909           // pthread_types.h:252:1:
   169  	X_PT_RWLOCK_DEAD              = 0xDEAD0009           // pthread_types.h:236:1:
   170  	X_PT_RWLOCK_MAGIC             = 0x99990009           // pthread_types.h:235:1:
   171  	X_PT_SPINLOCK_DEAD            = 0xDEAD0007           // pthread_types.h:213:1:
   172  	X_PT_SPINLOCK_MAGIC           = 0x77770007           // pthread_types.h:212:1:
   173  	X_PT_SPINLOCK_PSHARED         = 0x00000001           // pthread_types.h:214:1:
   174  	X_QUAD_HIGHWORD               = 1                    // endian.h:84:1:
   175  	X_QUAD_LOWWORD                = 0                    // endian.h:85:1:
   176  	X_SCHED_H_                    = 0                    // sched.h:33:1:
   177  	X_SYS_ANSI_H_                 = 0                    // ansi.h:33:1:
   178  	X_SYS_BSWAP_H_                = 0                    // bswap.h:6:1:
   179  	X_SYS_CDEFS_ELF_H_            = 0                    // cdefs_elf.h:31:1:
   180  	X_SYS_CDEFS_H_                = 0                    // cdefs.h:37:1:
   181  	X_SYS_COMMON_ANSI_H_          = 0                    // common_ansi.h:33:1:
   182  	X_SYS_COMMON_INT_LIMITS_H_    = 0                    // common_int_limits.h:33:1:
   183  	X_SYS_COMMON_INT_MWGWTYPES_H_ = 0                    // common_int_mwgwtypes.h:33:1:
   184  	X_SYS_COMMON_INT_TYPES_H_     = 0                    // common_int_types.h:33:1:
   185  	X_SYS_ENDIAN_H_               = 0                    // endian.h:35:1:
   186  	X_SYS_FD_SET_H_               = 0                    // fd_set.h:35:1:
   187  	X_SYS_IDTYPE_H_               = 0                    // idtype.h:32:1:
   188  	X_SYS_NULL_H_                 = 0                    // null.h:9:1:
   189  	X_SYS_SCHED_H_                = 0                    // sched.h:70:1:
   190  	X_SYS_SELECT_H_               = 0                    // select.h:35:1:
   191  	X_SYS_SIGTYPES_H_             = 0                    // sigtypes.h:40:1:
   192  	X_SYS_STDINT_H_               = 0                    // stdint.h:33:1:
   193  	X_SYS_TIMESPEC_H_             = 0                    // timespec.h:38:1:
   194  	X_SYS_TIME_H_                 = 0                    // time.h:35:1:
   195  	X_SYS_TYPES_H_                = 0                    // types.h:40:1:
   196  	X_TIME_H_                     = 0                    // time.h:40:1:
   197  	X_X86_64_BSWAP_H_             = 0                    // bswap.h:6:1:
   198  	X_X86_64_CDEFS_H_             = 0                    // cdefs.h:4:1:
   199  	X_X86_64_TYPES_H_             = 0                    // types.h:35:1:
   200  )
   201  
   202  //	$NetBSD: idtype.h,v 1.5 2016/04/09 17:02:51 riastradh Exp $
   203  
   204  // -
   205  // Copyright (c) 2016 The NetBSD Foundation, Inc.
   206  // All rights reserved.
   207  //
   208  // This code is derived from software contributed to The NetBSD Foundation
   209  // by Christos Zoulas.
   210  //
   211  // Redistribution and use in source and binary forms, with or without
   212  // modification, are permitted provided that the following conditions
   213  // are met:
   214  // 1. Redistributions of source code must retain the above copyright
   215  //    notice, this list of conditions and the following disclaimer.
   216  // 2. Redistributions in binary form must reproduce the above copyright
   217  //    notice, this list of conditions and the following disclaimer in the
   218  //    documentation and/or other materials provided with the distribution.
   219  //
   220  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   221  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   222  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   223  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   224  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   225  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   226  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   227  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   228  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   229  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   230  // POSSIBILITY OF SUCH DAMAGE.
   231  
   232  // Using the solaris constants, some of them are not applicable to us
   233  // Do not re-order the list, or add elements in the middle as this will
   234  // break the ABI of the system calls using this.  We set a high private
   235  // maximum so that new values can be added in the future without
   236  // changing the width of the type.
   237  const ( /* idtype.h:41:1: */
   238  	P_MYID        = -1 // Me/my process group
   239  	P_ALL         = 0  // All processes.
   240  	P_PID         = 1  // A process identifier.
   241  	P_LWPID       = 2  // An LWP identifier.
   242  	P_PPID        = 3  // A parent process identifier.
   243  	P_PGID        = 4  // A process group identifier.
   244  	P_SID         = 5  // A session identifier.
   245  	P_CID         = 6  // A scheduling class identifier.
   246  	P_UID         = 7  // A user identifier.
   247  	P_GID         = 8  // A group identifier.
   248  	P_TASKID      = 9  // A task identifier.
   249  	P_PROJID      = 10 // A project identifier.
   250  	P_POOLID      = 11 // A pool identifier.
   251  	P_ZONEID      = 12 // A zone identifier.
   252  	P_CTID        = 13 // A (process) contract identifier.
   253  	P_CPUID       = 14 // CPU identifier.
   254  	P_PSETID      = 15 // Processor set identifier.
   255  	X_P_MAXIDTYPE = 2147483647
   256  )
   257  
   258  type Ptrdiff_t = int64 /* <builtin>:3:26 */
   259  
   260  type Size_t = uint64 /* <builtin>:9:23 */
   261  
   262  type Wchar_t = int32 /* <builtin>:15:24 */
   263  
   264  type X__int128_t = struct {
   265  	Flo int64
   266  	Fhi int64
   267  } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
   268  type X__uint128_t = struct {
   269  	Flo uint64
   270  	Fhi uint64
   271  } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
   272  
   273  type X__builtin_va_list = uintptr /* <builtin>:46:14 */
   274  type X__float128 = float64        /* <builtin>:47:21 */
   275  
   276  // return true if value 'a' fits in type 't'
   277  
   278  //	$NetBSD: time.h,v 1.47 2016/10/04 09:41:41 kamil Exp $
   279  
   280  // Copyright (c) 1989, 1993
   281  //	The Regents of the University of California.  All rights reserved.
   282  // (c) UNIX System Laboratories, Inc.
   283  // All or some portions of this file are derived from material licensed
   284  // to the University of California by American Telephone and Telegraph
   285  // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   286  // the permission of UNIX System Laboratories, Inc.
   287  //
   288  // Redistribution and use in source and binary forms, with or without
   289  // modification, are permitted provided that the following conditions
   290  // are met:
   291  // 1. Redistributions of source code must retain the above copyright
   292  //    notice, this list of conditions and the following disclaimer.
   293  // 2. Redistributions in binary form must reproduce the above copyright
   294  //    notice, this list of conditions and the following disclaimer in the
   295  //    documentation and/or other materials provided with the distribution.
   296  // 3. Neither the name of the University nor the names of its contributors
   297  //    may be used to endorse or promote products derived from this software
   298  //    without specific prior written permission.
   299  //
   300  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   301  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   302  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   303  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   304  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   305  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   306  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   307  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   308  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   309  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   310  // SUCH DAMAGE.
   311  //
   312  //	@(#)time.h	8.3 (Berkeley) 1/21/94
   313  
   314  //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
   315  
   316  // * Copyright (c) 1991, 1993
   317  //	The Regents of the University of California.  All rights reserved.
   318  //
   319  // This code is derived from software contributed to Berkeley by
   320  // Berkeley Software Design, Inc.
   321  //
   322  // Redistribution and use in source and binary forms, with or without
   323  // modification, are permitted provided that the following conditions
   324  // are met:
   325  // 1. Redistributions of source code must retain the above copyright
   326  //    notice, this list of conditions and the following disclaimer.
   327  // 2. Redistributions in binary form must reproduce the above copyright
   328  //    notice, this list of conditions and the following disclaimer in the
   329  //    documentation and/or other materials provided with the distribution.
   330  // 3. Neither the name of the University nor the names of its contributors
   331  //    may be used to endorse or promote products derived from this software
   332  //    without specific prior written permission.
   333  //
   334  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   335  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   336  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   337  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   338  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   339  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   340  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   341  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   342  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   343  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   344  // SUCH DAMAGE.
   345  //
   346  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   347  
   348  //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
   349  
   350  // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
   351  // Public domain.
   352  //
   353  // NOTE: Do not protect this header against multiple inclusion.  Doing
   354  // so can have subtle side-effects due to header file inclusion order
   355  // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
   356  // protect each CPP macro that we want to supply.
   357  
   358  // Feature-test macros are defined by several standards, and allow an
   359  // application to specify what symbols they want the system headers to
   360  // expose, and hence what standard they want them to conform to.
   361  // There are two classes of feature-test macros.  The first class
   362  // specify complete standards, and if one of these is defined, header
   363  // files will try to conform to the relevant standard.  They are:
   364  //
   365  // ANSI macros:
   366  // _ANSI_SOURCE			ANSI C89
   367  //
   368  // POSIX macros:
   369  // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
   370  // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
   371  // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
   372  // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
   373  // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
   374  // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
   375  // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
   376  //
   377  // X/Open macros:
   378  // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
   379  // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
   380  // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
   381  // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
   382  // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
   383  // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
   384  //
   385  // NetBSD macros:
   386  // _NETBSD_SOURCE == 1		Make all NetBSD features available.
   387  //
   388  // If more than one of these "major" feature-test macros is defined,
   389  // then the set of facilities provided (and namespace used) is the
   390  // union of that specified by the relevant standards, and in case of
   391  // conflict, the earlier standard in the above list has precedence (so
   392  // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
   393  // of rename() that's used is the POSIX one).  If none of the "major"
   394  // feature-test macros is defined, _NETBSD_SOURCE is assumed.
   395  //
   396  // There are also "minor" feature-test macros, which enable extra
   397  // functionality in addition to some base standard.  They should be
   398  // defined along with one of the "major" macros.  The "minor" macros
   399  // are:
   400  //
   401  // _REENTRANT
   402  // _ISOC99_SOURCE
   403  // _ISOC11_SOURCE
   404  // _LARGEFILE_SOURCE		Large File Support
   405  //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
   406  
   407  //	$NetBSD: ansi.h,v 1.11 2019/05/07 03:49:26 kamil Exp $
   408  
   409  //	$NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
   410  
   411  // -
   412  // Copyright (c) 2014 The NetBSD Foundation, Inc.
   413  // All rights reserved.
   414  //
   415  // This code is derived from software contributed to The NetBSD Foundation
   416  // by Matt Thomas of 3am Software Foundry.
   417  //
   418  // Redistribution and use in source and binary forms, with or without
   419  // modification, are permitted provided that the following conditions
   420  // are met:
   421  // 1. Redistributions of source code must retain the above copyright
   422  //    notice, this list of conditions and the following disclaimer.
   423  // 2. Redistributions in binary form must reproduce the above copyright
   424  //    notice, this list of conditions and the following disclaimer in the
   425  //    documentation and/or other materials provided with the distribution.
   426  //
   427  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   428  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   429  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   430  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   431  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   432  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   433  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   434  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   435  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   436  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   437  // POSSIBILITY OF SUCH DAMAGE.
   438  
   439  //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
   440  
   441  // * Copyright (c) 1991, 1993
   442  //	The Regents of the University of California.  All rights reserved.
   443  //
   444  // This code is derived from software contributed to Berkeley by
   445  // Berkeley Software Design, Inc.
   446  //
   447  // Redistribution and use in source and binary forms, with or without
   448  // modification, are permitted provided that the following conditions
   449  // are met:
   450  // 1. Redistributions of source code must retain the above copyright
   451  //    notice, this list of conditions and the following disclaimer.
   452  // 2. Redistributions in binary form must reproduce the above copyright
   453  //    notice, this list of conditions and the following disclaimer in the
   454  //    documentation and/or other materials provided with the distribution.
   455  // 3. Neither the name of the University nor the names of its contributors
   456  //    may be used to endorse or promote products derived from this software
   457  //    without specific prior written permission.
   458  //
   459  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   460  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   461  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   462  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   463  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   464  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   465  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   466  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   467  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   468  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   469  // SUCH DAMAGE.
   470  //
   471  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   472  
   473  //	$NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
   474  
   475  // -
   476  // Copyright (c) 1990 The Regents of the University of California.
   477  // All rights reserved.
   478  //
   479  // Redistribution and use in source and binary forms, with or without
   480  // modification, are permitted provided that the following conditions
   481  // are met:
   482  // 1. Redistributions of source code must retain the above copyright
   483  //    notice, this list of conditions and the following disclaimer.
   484  // 2. Redistributions in binary form must reproduce the above copyright
   485  //    notice, this list of conditions and the following disclaimer in the
   486  //    documentation and/or other materials provided with the distribution.
   487  // 3. Neither the name of the University nor the names of its contributors
   488  //    may be used to endorse or promote products derived from this software
   489  //    without specific prior written permission.
   490  //
   491  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   492  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   493  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   494  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   495  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   496  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   497  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   498  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   499  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   500  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   501  // SUCH DAMAGE.
   502  //
   503  //	from: @(#)types.h	7.5 (Berkeley) 3/9/91
   504  
   505  //	$NetBSD: common_int_types.h,v 1.1 2014/07/25 21:43:13 joerg Exp $
   506  
   507  // -
   508  // Copyright (c) 2014 The NetBSD Foundation, Inc.
   509  // All rights reserved.
   510  //
   511  // This code is derived from software contributed to The NetBSD Foundation
   512  // by Joerg Sonnenberger.
   513  //
   514  // Redistribution and use in source and binary forms, with or without
   515  // modification, are permitted provided that the following conditions
   516  // are met:
   517  // 1. Redistributions of source code must retain the above copyright
   518  //    notice, this list of conditions and the following disclaimer.
   519  // 2. Redistributions in binary form must reproduce the above copyright
   520  //    notice, this list of conditions and the following disclaimer in the
   521  //    documentation and/or other materials provided with the distribution.
   522  //
   523  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   524  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   525  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   526  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   527  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   528  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   529  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   530  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   531  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   532  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   533  // POSSIBILITY OF SUCH DAMAGE.
   534  
   535  // 7.18.1 Integer types
   536  
   537  // 7.18.1.1 Exact-width integer types
   538  
   539  type X__int8_t = int8     /* common_int_types.h:45:27 */
   540  type X__uint8_t = uint8   /* common_int_types.h:46:27 */
   541  type X__int16_t = int16   /* common_int_types.h:47:27 */
   542  type X__uint16_t = uint16 /* common_int_types.h:48:27 */
   543  type X__int32_t = int32   /* common_int_types.h:49:27 */
   544  type X__uint32_t = uint32 /* common_int_types.h:50:27 */
   545  type X__int64_t = int64   /* common_int_types.h:51:27 */
   546  type X__uint64_t = uint64 /* common_int_types.h:52:27 */
   547  
   548  // 7.18.1.4 Integer types capable of holding object pointers
   549  
   550  type X__intptr_t = int64   /* common_int_types.h:58:27 */
   551  type X__uintptr_t = uint64 /* common_int_types.h:59:26 */
   552  
   553  // Types which are fundamental to the implementation and may appear in
   554  // more than one standard header are defined here.  Standard headers
   555  // then use:
   556  //	#ifdef	_BSD_SIZE_T_
   557  //	typedef	_BSD_SIZE_T_ size_t;
   558  //	#undef	_BSD_SIZE_T_
   559  //	#endif
   560  
   561  //	$NetBSD: null.h,v 1.9 2010/07/06 11:56:20 kleink Exp $
   562  
   563  // Written by Klaus Klein <kleink@NetBSD.org>, December 22, 1999.
   564  // Public domain.
   565  
   566  type Clock_t = uint32 /* time.h:49:23 */
   567  
   568  type Time_t = X__int64_t /* time.h:54:22 */
   569  
   570  type Clockid_t = int32 /* time.h:64:25 */
   571  
   572  type Timer_t = int32 /* time.h:69:23 */
   573  
   574  type Tm = struct {
   575  	Ftm_sec      int32
   576  	Ftm_min      int32
   577  	Ftm_hour     int32
   578  	Ftm_mday     int32
   579  	Ftm_mon      int32
   580  	Ftm_year     int32
   581  	Ftm_wday     int32
   582  	Ftm_yday     int32
   583  	Ftm_isdst    int32
   584  	F__ccgo_pad1 [4]byte
   585  	Ftm_gmtoff   int64
   586  	Ftm_zone     uintptr
   587  } /* time.h:75:1 */
   588  
   589  // ISO/IEC 9899:201x 7.27.1/3 Components of time
   590  //	$NetBSD: timespec.h,v 1.1 2015/07/31 12:51:32 kamil Exp $
   591  
   592  // Copyright (c) 1982, 1986, 1993
   593  //	The Regents of the University of California.  All rights reserved.
   594  //
   595  // Redistribution and use in source and binary forms, with or without
   596  // modification, are permitted provided that the following conditions
   597  // are met:
   598  // 1. Redistributions of source code must retain the above copyright
   599  //    notice, this list of conditions and the following disclaimer.
   600  // 2. Redistributions in binary form must reproduce the above copyright
   601  //    notice, this list of conditions and the following disclaimer in the
   602  //    documentation and/or other materials provided with the distribution.
   603  // 3. Neither the name of the University nor the names of its contributors
   604  //    may be used to endorse or promote products derived from this software
   605  //    without specific prior written permission.
   606  //
   607  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   608  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   609  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   610  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   611  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   612  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   613  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   614  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   615  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   616  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   617  // SUCH DAMAGE.
   618  //
   619  //	@(#)time.h	8.5 (Berkeley) 5/4/95
   620  //
   621  // Extracted by Kamil Rytarowski from:
   622  // NetBSD: src/sys/sys/time.h,v 1.69 2015/05/19 23:35:11 riastradh Exp
   623  
   624  //	$NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $
   625  
   626  // -
   627  // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
   628  // All rights reserved.
   629  //
   630  // This code is derived from software contributed to The NetBSD Foundation
   631  // by Jun-ichiro itojun Hagino and by Klaus Klein.
   632  //
   633  // Redistribution and use in source and binary forms, with or without
   634  // modification, are permitted provided that the following conditions
   635  // are met:
   636  // 1. Redistributions of source code must retain the above copyright
   637  //    notice, this list of conditions and the following disclaimer.
   638  // 2. Redistributions in binary form must reproduce the above copyright
   639  //    notice, this list of conditions and the following disclaimer in the
   640  //    documentation and/or other materials provided with the distribution.
   641  //
   642  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   643  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   644  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   645  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   646  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   647  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   648  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   649  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   650  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   651  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   652  // POSSIBILITY OF SUCH DAMAGE.
   653  
   654  //	$NetBSD: ansi.h,v 1.11 2019/05/07 03:49:26 kamil Exp $
   655  
   656  //	$NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
   657  
   658  // -
   659  // Copyright (c) 2014 The NetBSD Foundation, Inc.
   660  // All rights reserved.
   661  //
   662  // This code is derived from software contributed to The NetBSD Foundation
   663  // by Matt Thomas of 3am Software Foundry.
   664  //
   665  // Redistribution and use in source and binary forms, with or without
   666  // modification, are permitted provided that the following conditions
   667  // are met:
   668  // 1. Redistributions of source code must retain the above copyright
   669  //    notice, this list of conditions and the following disclaimer.
   670  // 2. Redistributions in binary form must reproduce the above copyright
   671  //    notice, this list of conditions and the following disclaimer in the
   672  //    documentation and/or other materials provided with the distribution.
   673  //
   674  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
   675  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   676  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   677  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
   678  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
   679  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
   680  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
   681  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
   682  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   683  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
   684  // POSSIBILITY OF SUCH DAMAGE.
   685  
   686  type X__caddr_t = uintptr        /* ansi.h:37:14 */ // core address
   687  type X__gid_t = X__uint32_t      /* ansi.h:38:20 */ // group id
   688  type X__in_addr_t = X__uint32_t  /* ansi.h:39:20 */ // IP(v4) address
   689  type X__in_port_t = X__uint16_t  /* ansi.h:40:20 */ // "Internet" port number
   690  type X__mode_t = X__uint32_t     /* ansi.h:41:20 */ // file permissions
   691  type X__off_t = X__int64_t       /* ansi.h:42:19 */ // file offset
   692  type X__pid_t = X__int32_t       /* ansi.h:43:19 */ // process id
   693  type X__sa_family_t = X__uint8_t /* ansi.h:44:19 */ // socket address family
   694  type X__socklen_t = uint32       /* ansi.h:45:22 */ // socket-related datum length
   695  type X__uid_t = X__uint32_t      /* ansi.h:46:20 */ // user id
   696  type X__fsblkcnt_t = X__uint64_t /* ansi.h:47:20 */ // fs block count (statvfs)
   697  type X__fsfilcnt_t = X__uint64_t /* ansi.h:48:20 */
   698  type X__wctrans_t = uintptr      /* ansi.h:51:32 */
   699  type X__wctype_t = uintptr       /* ansi.h:54:31 */
   700  
   701  // mbstate_t is an opaque object to keep conversion state, during multibyte
   702  // stream conversions.  The content must not be referenced by user programs.
   703  type X__mbstate_t = struct {
   704  	F__mbstateL  X__int64_t
   705  	F__ccgo_pad1 [120]byte
   706  } /* ansi.h:63:3 */
   707  
   708  type X__va_list = X__builtin_va_list /* ansi.h:72:27 */
   709  
   710  type Timespec = struct {
   711  	Ftv_sec  Time_t
   712  	Ftv_nsec int64
   713  } /* timespec.h:47:1 */
   714  
   715  //	$NetBSD: time.h,v 1.79 2017/01/17 15:28:34 maya Exp $
   716  
   717  // Copyright (c) 1982, 1986, 1993
   718  //	The Regents of the University of California.  All rights reserved.
   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. Neither the name of the University nor the names of its contributors
   729  //    may be used to endorse or promote products derived from this software
   730  //    without specific prior written permission.
   731  //
   732  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   733  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   734  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   735  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   736  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   737  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   738  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   739  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   740  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   741  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   742  // SUCH DAMAGE.
   743  //
   744  //	@(#)time.h	8.5 (Berkeley) 5/4/95
   745  
   746  //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
   747  
   748  // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
   749  // Public domain.
   750  //
   751  // NOTE: Do not protect this header against multiple inclusion.  Doing
   752  // so can have subtle side-effects due to header file inclusion order
   753  // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
   754  // protect each CPP macro that we want to supply.
   755  
   756  // Feature-test macros are defined by several standards, and allow an
   757  // application to specify what symbols they want the system headers to
   758  // expose, and hence what standard they want them to conform to.
   759  // There are two classes of feature-test macros.  The first class
   760  // specify complete standards, and if one of these is defined, header
   761  // files will try to conform to the relevant standard.  They are:
   762  //
   763  // ANSI macros:
   764  // _ANSI_SOURCE			ANSI C89
   765  //
   766  // POSIX macros:
   767  // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
   768  // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
   769  // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
   770  // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
   771  // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
   772  // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
   773  // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
   774  //
   775  // X/Open macros:
   776  // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
   777  // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
   778  // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
   779  // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
   780  // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
   781  // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
   782  //
   783  // NetBSD macros:
   784  // _NETBSD_SOURCE == 1		Make all NetBSD features available.
   785  //
   786  // If more than one of these "major" feature-test macros is defined,
   787  // then the set of facilities provided (and namespace used) is the
   788  // union of that specified by the relevant standards, and in case of
   789  // conflict, the earlier standard in the above list has precedence (so
   790  // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
   791  // of rename() that's used is the POSIX one).  If none of the "major"
   792  // feature-test macros is defined, _NETBSD_SOURCE is assumed.
   793  //
   794  // There are also "minor" feature-test macros, which enable extra
   795  // functionality in addition to some base standard.  They should be
   796  // defined along with one of the "major" macros.  The "minor" macros
   797  // are:
   798  //
   799  // _REENTRANT
   800  // _ISOC99_SOURCE
   801  // _ISOC11_SOURCE
   802  // _LARGEFILE_SOURCE		Large File Support
   803  //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
   804  
   805  //	$NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $
   806  
   807  // -
   808  // Copyright (c) 1982, 1986, 1991, 1993, 1994
   809  //	The Regents of the University of California.  All rights reserved.
   810  // (c) UNIX System Laboratories, Inc.
   811  // All or some portions of this file are derived from material licensed
   812  // to the University of California by American Telephone and Telegraph
   813  // Co. or Unix System Laboratories, Inc. and are reproduced herein with
   814  // the permission of UNIX System Laboratories, Inc.
   815  //
   816  // Redistribution and use in source and binary forms, with or without
   817  // modification, are permitted provided that the following conditions
   818  // are met:
   819  // 1. Redistributions of source code must retain the above copyright
   820  //    notice, this list of conditions and the following disclaimer.
   821  // 2. Redistributions in binary form must reproduce the above copyright
   822  //    notice, this list of conditions and the following disclaimer in the
   823  //    documentation and/or other materials provided with the distribution.
   824  // 3. Neither the name of the University nor the names of its contributors
   825  //    may be used to endorse or promote products derived from this software
   826  //    without specific prior written permission.
   827  //
   828  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   829  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   830  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   831  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   832  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   833  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   834  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   835  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   836  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   837  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   838  // SUCH DAMAGE.
   839  //
   840  //	@(#)types.h	8.4 (Berkeley) 1/21/94
   841  
   842  //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
   843  
   844  // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
   845  // Public domain.
   846  //
   847  // NOTE: Do not protect this header against multiple inclusion.  Doing
   848  // so can have subtle side-effects due to header file inclusion order
   849  // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
   850  // protect each CPP macro that we want to supply.
   851  
   852  // Feature-test macros are defined by several standards, and allow an
   853  // application to specify what symbols they want the system headers to
   854  // expose, and hence what standard they want them to conform to.
   855  // There are two classes of feature-test macros.  The first class
   856  // specify complete standards, and if one of these is defined, header
   857  // files will try to conform to the relevant standard.  They are:
   858  //
   859  // ANSI macros:
   860  // _ANSI_SOURCE			ANSI C89
   861  //
   862  // POSIX macros:
   863  // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
   864  // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
   865  // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
   866  // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
   867  // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
   868  // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
   869  // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
   870  //
   871  // X/Open macros:
   872  // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
   873  // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
   874  // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
   875  // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
   876  // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
   877  // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
   878  //
   879  // NetBSD macros:
   880  // _NETBSD_SOURCE == 1		Make all NetBSD features available.
   881  //
   882  // If more than one of these "major" feature-test macros is defined,
   883  // then the set of facilities provided (and namespace used) is the
   884  // union of that specified by the relevant standards, and in case of
   885  // conflict, the earlier standard in the above list has precedence (so
   886  // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
   887  // of rename() that's used is the POSIX one).  If none of the "major"
   888  // feature-test macros is defined, _NETBSD_SOURCE is assumed.
   889  //
   890  // There are also "minor" feature-test macros, which enable extra
   891  // functionality in addition to some base standard.  They should be
   892  // defined along with one of the "major" macros.  The "minor" macros
   893  // are:
   894  //
   895  // _REENTRANT
   896  // _ISOC99_SOURCE
   897  // _ISOC11_SOURCE
   898  // _LARGEFILE_SOURCE		Large File Support
   899  //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
   900  
   901  // Machine type dependent parameters.
   902  //	$NetBSD: types.h,v 1.60 2019/04/06 03:06:24 thorpej Exp $
   903  
   904  // -
   905  // Copyright (c) 1990 The Regents of the University of California.
   906  // All rights reserved.
   907  //
   908  // Redistribution and use in source and binary forms, with or without
   909  // modification, are permitted provided that the following conditions
   910  // are met:
   911  // 1. Redistributions of source code must retain the above copyright
   912  //    notice, this list of conditions and the following disclaimer.
   913  // 2. Redistributions in binary form must reproduce the above copyright
   914  //    notice, this list of conditions and the following disclaimer in the
   915  //    documentation and/or other materials provided with the distribution.
   916  // 3. Neither the name of the University nor the names of its contributors
   917  //    may be used to endorse or promote products derived from this software
   918  //    without specific prior written permission.
   919  //
   920  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   921  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   922  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   923  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   924  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   925  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   926  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   927  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   928  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   929  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   930  // SUCH DAMAGE.
   931  //
   932  //	@(#)types.h	7.5 (Berkeley) 3/9/91
   933  
   934  //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
   935  
   936  // * Copyright (c) 1991, 1993
   937  //	The Regents of the University of California.  All rights reserved.
   938  //
   939  // This code is derived from software contributed to Berkeley by
   940  // Berkeley Software Design, Inc.
   941  //
   942  // Redistribution and use in source and binary forms, with or without
   943  // modification, are permitted provided that the following conditions
   944  // are met:
   945  // 1. Redistributions of source code must retain the above copyright
   946  //    notice, this list of conditions and the following disclaimer.
   947  // 2. Redistributions in binary form must reproduce the above copyright
   948  //    notice, this list of conditions and the following disclaimer in the
   949  //    documentation and/or other materials provided with the distribution.
   950  // 3. Neither the name of the University nor the names of its contributors
   951  //    may be used to endorse or promote products derived from this software
   952  //    without specific prior written permission.
   953  //
   954  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   955  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   956  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   957  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   958  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   959  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   960  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   961  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   962  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   963  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   964  // SUCH DAMAGE.
   965  //
   966  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
   967  
   968  //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
   969  
   970  // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
   971  // Public domain.
   972  //
   973  // NOTE: Do not protect this header against multiple inclusion.  Doing
   974  // so can have subtle side-effects due to header file inclusion order
   975  // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
   976  // protect each CPP macro that we want to supply.
   977  
   978  // Feature-test macros are defined by several standards, and allow an
   979  // application to specify what symbols they want the system headers to
   980  // expose, and hence what standard they want them to conform to.
   981  // There are two classes of feature-test macros.  The first class
   982  // specify complete standards, and if one of these is defined, header
   983  // files will try to conform to the relevant standard.  They are:
   984  //
   985  // ANSI macros:
   986  // _ANSI_SOURCE			ANSI C89
   987  //
   988  // POSIX macros:
   989  // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
   990  // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
   991  // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
   992  // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
   993  // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
   994  // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
   995  // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
   996  //
   997  // X/Open macros:
   998  // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
   999  // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
  1000  // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
  1001  // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
  1002  // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
  1003  // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
  1004  //
  1005  // NetBSD macros:
  1006  // _NETBSD_SOURCE == 1		Make all NetBSD features available.
  1007  //
  1008  // If more than one of these "major" feature-test macros is defined,
  1009  // then the set of facilities provided (and namespace used) is the
  1010  // union of that specified by the relevant standards, and in case of
  1011  // conflict, the earlier standard in the above list has precedence (so
  1012  // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  1013  // of rename() that's used is the POSIX one).  If none of the "major"
  1014  // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  1015  //
  1016  // There are also "minor" feature-test macros, which enable extra
  1017  // functionality in addition to some base standard.  They should be
  1018  // defined along with one of the "major" macros.  The "minor" macros
  1019  // are:
  1020  //
  1021  // _REENTRANT
  1022  // _ISOC99_SOURCE
  1023  // _ISOC11_SOURCE
  1024  // _LARGEFILE_SOURCE		Large File Support
  1025  //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  1026  
  1027  //	$NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  1028  
  1029  // -
  1030  // Copyright (c) 1990 The Regents of the University of California.
  1031  // All rights reserved.
  1032  //
  1033  // Redistribution and use in source and binary forms, with or without
  1034  // modification, are permitted provided that the following conditions
  1035  // are met:
  1036  // 1. Redistributions of source code must retain the above copyright
  1037  //    notice, this list of conditions and the following disclaimer.
  1038  // 2. Redistributions in binary form must reproduce the above copyright
  1039  //    notice, this list of conditions and the following disclaimer in the
  1040  //    documentation and/or other materials provided with the distribution.
  1041  // 3. Neither the name of the University nor the names of its contributors
  1042  //    may be used to endorse or promote products derived from this software
  1043  //    without specific prior written permission.
  1044  //
  1045  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1046  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1047  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1048  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1049  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1050  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1051  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1052  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1053  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1054  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1055  // SUCH DAMAGE.
  1056  //
  1057  //	from: @(#)types.h	7.5 (Berkeley) 3/9/91
  1058  
  1059  type X__register_t = int64           /* types.h:68:19 */
  1060  type X__cpu_simple_lock_nv_t = uint8 /* types.h:69:24 */
  1061  
  1062  // __cpu_simple_lock_t used to be a full word.
  1063  
  1064  // The amd64 does not have strict alignment requirements.
  1065  
  1066  //	$NetBSD: ansi.h,v 1.11 2019/05/07 03:49:26 kamil Exp $
  1067  
  1068  //	$NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
  1069  
  1070  // -
  1071  // Copyright (c) 2014 The NetBSD Foundation, Inc.
  1072  // All rights reserved.
  1073  //
  1074  // This code is derived from software contributed to The NetBSD Foundation
  1075  // by Matt Thomas of 3am Software Foundry.
  1076  //
  1077  // Redistribution and use in source and binary forms, with or without
  1078  // modification, are permitted provided that the following conditions
  1079  // are met:
  1080  // 1. Redistributions of source code must retain the above copyright
  1081  //    notice, this list of conditions and the following disclaimer.
  1082  // 2. Redistributions in binary form must reproduce the above copyright
  1083  //    notice, this list of conditions and the following disclaimer in the
  1084  //    documentation and/or other materials provided with the distribution.
  1085  //
  1086  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1087  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1088  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1089  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1090  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1091  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1092  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1093  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1094  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1095  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1096  // POSSIBILITY OF SUCH DAMAGE.
  1097  
  1098  //	$NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  1099  
  1100  // -
  1101  // Copyright (c) 1990 The Regents of the University of California.
  1102  // All rights reserved.
  1103  //
  1104  // Redistribution and use in source and binary forms, with or without
  1105  // modification, are permitted provided that the following conditions
  1106  // are met:
  1107  // 1. Redistributions of source code must retain the above copyright
  1108  //    notice, this list of conditions and the following disclaimer.
  1109  // 2. Redistributions in binary form must reproduce the above copyright
  1110  //    notice, this list of conditions and the following disclaimer in the
  1111  //    documentation and/or other materials provided with the distribution.
  1112  // 3. Neither the name of the University nor the names of its contributors
  1113  //    may be used to endorse or promote products derived from this software
  1114  //    without specific prior written permission.
  1115  //
  1116  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1117  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1118  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1119  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1120  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1121  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1122  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1123  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1124  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1125  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1126  // SUCH DAMAGE.
  1127  //
  1128  //	from: @(#)types.h	7.5 (Berkeley) 3/9/91
  1129  
  1130  //	$NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $
  1131  
  1132  // -
  1133  // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
  1134  // All rights reserved.
  1135  //
  1136  // This code is derived from software contributed to The NetBSD Foundation
  1137  // by Jun-ichiro itojun Hagino and by Klaus Klein.
  1138  //
  1139  // Redistribution and use in source and binary forms, with or without
  1140  // modification, are permitted provided that the following conditions
  1141  // are met:
  1142  // 1. Redistributions of source code must retain the above copyright
  1143  //    notice, this list of conditions and the following disclaimer.
  1144  // 2. Redistributions in binary form must reproduce the above copyright
  1145  //    notice, this list of conditions and the following disclaimer in the
  1146  //    documentation and/or other materials provided with the distribution.
  1147  //
  1148  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1149  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1150  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1151  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1152  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1153  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1154  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1155  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1156  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1157  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1158  // POSSIBILITY OF SUCH DAMAGE.
  1159  
  1160  type Int8_t = X__int8_t /* types.h:54:18 */
  1161  
  1162  type Uint8_t = X__uint8_t /* types.h:59:19 */
  1163  
  1164  type Int16_t = X__int16_t /* types.h:64:19 */
  1165  
  1166  type Uint16_t = X__uint16_t /* types.h:69:20 */
  1167  
  1168  type Int32_t = X__int32_t /* types.h:74:19 */
  1169  
  1170  type Uint32_t = X__uint32_t /* types.h:79:20 */
  1171  
  1172  type Int64_t = X__int64_t /* types.h:84:19 */
  1173  
  1174  type Uint64_t = X__uint64_t /* types.h:89:20 */
  1175  
  1176  type U_int8_t = Uint8_t   /* types.h:93:18 */
  1177  type U_int16_t = Uint16_t /* types.h:94:18 */
  1178  type U_int32_t = Uint32_t /* types.h:95:18 */
  1179  type U_int64_t = Uint64_t /* types.h:96:18 */
  1180  
  1181  //	$NetBSD: endian.h,v 1.1 2003/04/26 18:39:40 fvdl Exp $
  1182  
  1183  //	$NetBSD: endian.h,v 1.30 2016/02/27 21:37:35 christos Exp $
  1184  
  1185  // Copyright (c) 1987, 1991, 1993
  1186  //	The Regents of the University of California.  All rights reserved.
  1187  //
  1188  // Redistribution and use in source and binary forms, with or without
  1189  // modification, are permitted provided that the following conditions
  1190  // are met:
  1191  // 1. Redistributions of source code must retain the above copyright
  1192  //    notice, this list of conditions and the following disclaimer.
  1193  // 2. Redistributions in binary form must reproduce the above copyright
  1194  //    notice, this list of conditions and the following disclaimer in the
  1195  //    documentation and/or other materials provided with the distribution.
  1196  // 3. Neither the name of the University nor the names of its contributors
  1197  //    may be used to endorse or promote products derived from this software
  1198  //    without specific prior written permission.
  1199  //
  1200  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1201  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1202  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1203  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1204  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1205  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1206  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1207  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1208  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1209  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1210  // SUCH DAMAGE.
  1211  //
  1212  //	@(#)endian.h	8.1 (Berkeley) 6/11/93
  1213  
  1214  //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  1215  
  1216  // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  1217  // Public domain.
  1218  //
  1219  // NOTE: Do not protect this header against multiple inclusion.  Doing
  1220  // so can have subtle side-effects due to header file inclusion order
  1221  // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
  1222  // protect each CPP macro that we want to supply.
  1223  
  1224  // Feature-test macros are defined by several standards, and allow an
  1225  // application to specify what symbols they want the system headers to
  1226  // expose, and hence what standard they want them to conform to.
  1227  // There are two classes of feature-test macros.  The first class
  1228  // specify complete standards, and if one of these is defined, header
  1229  // files will try to conform to the relevant standard.  They are:
  1230  //
  1231  // ANSI macros:
  1232  // _ANSI_SOURCE			ANSI C89
  1233  //
  1234  // POSIX macros:
  1235  // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
  1236  // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
  1237  // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
  1238  // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
  1239  // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
  1240  // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
  1241  // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
  1242  //
  1243  // X/Open macros:
  1244  // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
  1245  // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
  1246  // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
  1247  // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
  1248  // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
  1249  // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
  1250  //
  1251  // NetBSD macros:
  1252  // _NETBSD_SOURCE == 1		Make all NetBSD features available.
  1253  //
  1254  // If more than one of these "major" feature-test macros is defined,
  1255  // then the set of facilities provided (and namespace used) is the
  1256  // union of that specified by the relevant standards, and in case of
  1257  // conflict, the earlier standard in the above list has precedence (so
  1258  // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  1259  // of rename() that's used is the POSIX one).  If none of the "major"
  1260  // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  1261  //
  1262  // There are also "minor" feature-test macros, which enable extra
  1263  // functionality in addition to some base standard.  They should be
  1264  // defined along with one of the "major" macros.  The "minor" macros
  1265  // are:
  1266  //
  1267  // _REENTRANT
  1268  // _ISOC99_SOURCE
  1269  // _ISOC11_SOURCE
  1270  // _LARGEFILE_SOURCE		Large File Support
  1271  //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  1272  
  1273  // Definitions for byte order, according to byte significance from low
  1274  // address to high.
  1275  
  1276  // C-family endian-ness definitions
  1277  
  1278  //	$NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $
  1279  
  1280  // -
  1281  // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
  1282  // All rights reserved.
  1283  //
  1284  // This code is derived from software contributed to The NetBSD Foundation
  1285  // by Jun-ichiro itojun Hagino and by Klaus Klein.
  1286  //
  1287  // Redistribution and use in source and binary forms, with or without
  1288  // modification, are permitted provided that the following conditions
  1289  // are met:
  1290  // 1. Redistributions of source code must retain the above copyright
  1291  //    notice, this list of conditions and the following disclaimer.
  1292  // 2. Redistributions in binary form must reproduce the above copyright
  1293  //    notice, this list of conditions and the following disclaimer in the
  1294  //    documentation and/or other materials provided with the distribution.
  1295  //
  1296  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1297  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1298  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1299  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1300  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1301  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1302  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1303  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1304  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1305  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1306  // POSSIBILITY OF SUCH DAMAGE.
  1307  
  1308  //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  1309  
  1310  // * Copyright (c) 1991, 1993
  1311  //	The Regents of the University of California.  All rights reserved.
  1312  //
  1313  // This code is derived from software contributed to Berkeley by
  1314  // Berkeley Software Design, Inc.
  1315  //
  1316  // Redistribution and use in source and binary forms, with or without
  1317  // modification, are permitted provided that the following conditions
  1318  // are met:
  1319  // 1. Redistributions of source code must retain the above copyright
  1320  //    notice, this list of conditions and the following disclaimer.
  1321  // 2. Redistributions in binary form must reproduce the above copyright
  1322  //    notice, this list of conditions and the following disclaimer in the
  1323  //    documentation and/or other materials provided with the distribution.
  1324  // 3. Neither the name of the University nor the names of its contributors
  1325  //    may be used to endorse or promote products derived from this software
  1326  //    without specific prior written permission.
  1327  //
  1328  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1329  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1330  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1331  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1332  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1333  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1334  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1335  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1336  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1337  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1338  // SUCH DAMAGE.
  1339  //
  1340  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  1341  
  1342  //	$NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $
  1343  
  1344  // -
  1345  // Copyright (c) 1982, 1986, 1991, 1993, 1994
  1346  //	The Regents of the University of California.  All rights reserved.
  1347  // (c) UNIX System Laboratories, Inc.
  1348  // All or some portions of this file are derived from material licensed
  1349  // to the University of California by American Telephone and Telegraph
  1350  // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  1351  // the permission of UNIX System Laboratories, Inc.
  1352  //
  1353  // Redistribution and use in source and binary forms, with or without
  1354  // modification, are permitted provided that the following conditions
  1355  // are met:
  1356  // 1. Redistributions of source code must retain the above copyright
  1357  //    notice, this list of conditions and the following disclaimer.
  1358  // 2. Redistributions in binary form must reproduce the above copyright
  1359  //    notice, this list of conditions and the following disclaimer in the
  1360  //    documentation and/or other materials provided with the distribution.
  1361  // 3. Neither the name of the University nor the names of its contributors
  1362  //    may be used to endorse or promote products derived from this software
  1363  //    without specific prior written permission.
  1364  //
  1365  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1366  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1367  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1368  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1369  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1370  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1371  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1372  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1373  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1374  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1375  // SUCH DAMAGE.
  1376  //
  1377  //	@(#)types.h	8.4 (Berkeley) 1/21/94
  1378  
  1379  type In_addr_t = X__in_addr_t /* endian.h:58:21 */
  1380  
  1381  type In_port_t = X__in_port_t /* endian.h:63:21 */
  1382  
  1383  //      $NetBSD: bswap.h,v 1.19 2015/03/12 15:28:16 christos Exp $
  1384  
  1385  // Written by Manuel Bouyer. Public domain
  1386  
  1387  //	$NetBSD: stdint.h,v 1.8 2018/11/06 16:26:44 maya Exp $
  1388  
  1389  // -
  1390  // Copyright (c) 2001, 2004 The NetBSD Foundation, Inc.
  1391  // All rights reserved.
  1392  //
  1393  // This code is derived from software contributed to The NetBSD Foundation
  1394  // by Klaus Klein.
  1395  //
  1396  // Redistribution and use in source and binary forms, with or without
  1397  // modification, are permitted provided that the following conditions
  1398  // are met:
  1399  // 1. Redistributions of source code must retain the above copyright
  1400  //    notice, this list of conditions and the following disclaimer.
  1401  // 2. Redistributions in binary form must reproduce the above copyright
  1402  //    notice, this list of conditions and the following disclaimer in the
  1403  //    documentation and/or other materials provided with the distribution.
  1404  //
  1405  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1406  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1407  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1408  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1409  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1410  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1411  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1412  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1413  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1414  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1415  // POSSIBILITY OF SUCH DAMAGE.
  1416  
  1417  //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  1418  
  1419  // * Copyright (c) 1991, 1993
  1420  //	The Regents of the University of California.  All rights reserved.
  1421  //
  1422  // This code is derived from software contributed to Berkeley by
  1423  // Berkeley Software Design, Inc.
  1424  //
  1425  // Redistribution and use in source and binary forms, with or without
  1426  // modification, are permitted provided that the following conditions
  1427  // are met:
  1428  // 1. Redistributions of source code must retain the above copyright
  1429  //    notice, this list of conditions and the following disclaimer.
  1430  // 2. Redistributions in binary form must reproduce the above copyright
  1431  //    notice, this list of conditions and the following disclaimer in the
  1432  //    documentation and/or other materials provided with the distribution.
  1433  // 3. Neither the name of the University nor the names of its contributors
  1434  //    may be used to endorse or promote products derived from this software
  1435  //    without specific prior written permission.
  1436  //
  1437  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1438  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1439  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1440  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1441  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1442  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1443  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1444  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1445  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1446  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1447  // SUCH DAMAGE.
  1448  //
  1449  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  1450  
  1451  //	$NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  1452  
  1453  // -
  1454  // Copyright (c) 1990 The Regents of the University of California.
  1455  // All rights reserved.
  1456  //
  1457  // Redistribution and use in source and binary forms, with or without
  1458  // modification, are permitted provided that the following conditions
  1459  // are met:
  1460  // 1. Redistributions of source code must retain the above copyright
  1461  //    notice, this list of conditions and the following disclaimer.
  1462  // 2. Redistributions in binary form must reproduce the above copyright
  1463  //    notice, this list of conditions and the following disclaimer in the
  1464  //    documentation and/or other materials provided with the distribution.
  1465  // 3. Neither the name of the University nor the names of its contributors
  1466  //    may be used to endorse or promote products derived from this software
  1467  //    without specific prior written permission.
  1468  //
  1469  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1470  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1471  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1472  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1473  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1474  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1475  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1476  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1477  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1478  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1479  // SUCH DAMAGE.
  1480  //
  1481  //	from: @(#)types.h	7.5 (Berkeley) 3/9/91
  1482  
  1483  type Intptr_t = X__intptr_t /* stdint.h:79:20 */
  1484  
  1485  type Uintptr_t = X__uintptr_t /* stdint.h:84:21 */
  1486  
  1487  //	$NetBSD: int_mwgwtypes.h,v 1.8 2014/07/25 21:43:13 joerg Exp $
  1488  
  1489  // -
  1490  // Copyright (c) 2001 The NetBSD Foundation, Inc.
  1491  // All rights reserved.
  1492  //
  1493  // This code is derived from software contributed to The NetBSD Foundation
  1494  // by Klaus Klein.
  1495  //
  1496  // Redistribution and use in source and binary forms, with or without
  1497  // modification, are permitted provided that the following conditions
  1498  // are met:
  1499  // 1. Redistributions of source code must retain the above copyright
  1500  //    notice, this list of conditions and the following disclaimer.
  1501  // 2. Redistributions in binary form must reproduce the above copyright
  1502  //    notice, this list of conditions and the following disclaimer in the
  1503  //    documentation and/or other materials provided with the distribution.
  1504  //
  1505  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1506  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1507  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1508  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1509  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1510  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1511  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1512  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1513  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1514  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1515  // POSSIBILITY OF SUCH DAMAGE.
  1516  
  1517  //	$NetBSD: common_int_mwgwtypes.h,v 1.1 2014/07/25 21:43:13 joerg Exp $
  1518  
  1519  // -
  1520  // Copyright (c) 2014 The NetBSD Foundation, Inc.
  1521  // All rights reserved.
  1522  //
  1523  // This code is derived from software contributed to The NetBSD Foundation
  1524  // by Joerg Sonnenberger.
  1525  //
  1526  // Redistribution and use in source and binary forms, with or without
  1527  // modification, are permitted provided that the following conditions
  1528  // are met:
  1529  // 1. Redistributions of source code must retain the above copyright
  1530  //    notice, this list of conditions and the following disclaimer.
  1531  // 2. Redistributions in binary form must reproduce the above copyright
  1532  //    notice, this list of conditions and the following disclaimer in the
  1533  //    documentation and/or other materials provided with the distribution.
  1534  //
  1535  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1536  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1537  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1538  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1539  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1540  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1541  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1542  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1543  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1544  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1545  // POSSIBILITY OF SUCH DAMAGE.
  1546  
  1547  // 7.18.1 Integer types
  1548  
  1549  // 7.18.1.2 Minimum-width integer types
  1550  
  1551  type Int_least8_t = int8     /* common_int_mwgwtypes.h:45:32 */
  1552  type Uint_least8_t = uint8   /* common_int_mwgwtypes.h:46:32 */
  1553  type Int_least16_t = int16   /* common_int_mwgwtypes.h:47:32 */
  1554  type Uint_least16_t = uint16 /* common_int_mwgwtypes.h:48:32 */
  1555  type Int_least32_t = int32   /* common_int_mwgwtypes.h:49:32 */
  1556  type Uint_least32_t = uint32 /* common_int_mwgwtypes.h:50:32 */
  1557  type Int_least64_t = int64   /* common_int_mwgwtypes.h:51:32 */
  1558  type Uint_least64_t = uint64 /* common_int_mwgwtypes.h:52:32 */
  1559  
  1560  // 7.18.1.3 Fastest minimum-width integer types
  1561  type Int_fast8_t = int32    /* common_int_mwgwtypes.h:55:32 */
  1562  type Uint_fast8_t = uint32  /* common_int_mwgwtypes.h:56:32 */
  1563  type Int_fast16_t = int32   /* common_int_mwgwtypes.h:57:32 */
  1564  type Uint_fast16_t = uint32 /* common_int_mwgwtypes.h:58:32 */
  1565  type Int_fast32_t = int32   /* common_int_mwgwtypes.h:59:32 */
  1566  type Uint_fast32_t = uint32 /* common_int_mwgwtypes.h:60:32 */
  1567  type Int_fast64_t = int64   /* common_int_mwgwtypes.h:61:32 */
  1568  type Uint_fast64_t = uint64 /* common_int_mwgwtypes.h:62:32 */
  1569  
  1570  // 7.18.1.5 Greatest-width integer types
  1571  
  1572  type Intmax_t = int64   /* common_int_mwgwtypes.h:66:33 */
  1573  type Uintmax_t = uint64 /* common_int_mwgwtypes.h:67:32 */
  1574  
  1575  type U_char = uint8   /* types.h:101:23 */
  1576  type U_short = uint16 /* types.h:102:24 */
  1577  type U_int = uint32   /* types.h:103:22 */
  1578  type U_long = uint64  /* types.h:104:23 */
  1579  
  1580  type Unchar = uint8  /* types.h:106:23 */ // Sys V compatibility
  1581  type Ushort = uint16 /* types.h:107:24 */ // Sys V compatibility
  1582  type Uint = uint32   /* types.h:108:22 */ // Sys V compatibility
  1583  type Ulong = uint64  /* types.h:109:23 */ // Sys V compatibility
  1584  
  1585  type U_quad_t = Uint64_t /* types.h:112:18 */ // quads
  1586  type Quad_t = Int64_t    /* types.h:113:18 */
  1587  type Qaddr_t = uintptr   /* types.h:114:16 */
  1588  
  1589  // The types longlong_t and u_longlong_t exist for use with the
  1590  // Sun-derived XDR routines involving these types, and their usage
  1591  // in other contexts is discouraged.  Further note that these types
  1592  // may not be equivalent to "long long" and "unsigned long long",
  1593  // they are only guaranteed to be signed and unsigned 64-bit types
  1594  // respectively.  Portable programs that need 64-bit types should use
  1595  // the C99 types int64_t and uint64_t instead.
  1596  
  1597  type Longlong_t = Int64_t    /* types.h:126:18 */ // for XDR
  1598  type U_longlong_t = Uint64_t /* types.h:127:18 */ // for XDR
  1599  
  1600  type Blkcnt_t = Int64_t  /* types.h:129:18 */ // fs block count
  1601  type Blksize_t = Int32_t /* types.h:130:18 */ // fs optimal block size
  1602  
  1603  type Fsblkcnt_t = X__fsblkcnt_t /* types.h:133:22 */ // fs block count (statvfs)
  1604  
  1605  type Fsfilcnt_t = X__fsfilcnt_t /* types.h:138:22 */ // fs file count
  1606  
  1607  // We don't and shouldn't use caddr_t in the kernel anymore
  1608  type Caddr_t = X__caddr_t /* types.h:145:19 */ // core address
  1609  
  1610  type Daddr_t = Int64_t /* types.h:154:18 */ // disk address
  1611  
  1612  type Dev_t = Uint64_t   /* types.h:157:18 */ // device number
  1613  type Fixpt_t = Uint32_t /* types.h:158:18 */ // fixed point number
  1614  
  1615  type Gid_t = X__gid_t /* types.h:161:18 */ // group id
  1616  
  1617  type Id_t = Uint32_t  /* types.h:165:18 */ // group id, process id or user id
  1618  type Ino_t = Uint64_t /* types.h:166:18 */ // inode number
  1619  type Key_t = int64    /* types.h:167:15 */ // IPC key (for Sys V IPC)
  1620  
  1621  type Mode_t = X__mode_t /* types.h:170:18 */ // permissions
  1622  
  1623  type Nlink_t = Uint32_t /* types.h:174:18 */ // link count
  1624  
  1625  type Off_t = X__off_t /* types.h:177:18 */ // file offset
  1626  
  1627  type Pid_t = X__pid_t  /* types.h:182:18 */ // process id
  1628  type Lwpid_t = Int32_t /* types.h:185:18 */ // LWP id
  1629  type Rlim_t = Uint64_t /* types.h:186:18 */ // resource limit
  1630  type Segsz_t = Int32_t /* types.h:187:18 */ // segment size
  1631  type Swblk_t = Int32_t /* types.h:188:18 */ // swap offset
  1632  
  1633  type Uid_t = X__uid_t /* types.h:191:18 */ // user id
  1634  
  1635  type Mqd_t = int32 /* types.h:195:14 */
  1636  
  1637  type Cpuid_t = uint64 /* types.h:197:23 */
  1638  
  1639  type Psetid_t = int32 /* types.h:199:14 */
  1640  
  1641  type X__cpu_simple_lock_t = X__cpu_simple_lock_nv_t /* types.h:201:41 */
  1642  
  1643  // Major, minor numbers, dev_t's.
  1644  type X__devmajor_t = Int32_t /* types.h:255:17 */
  1645  type X__devminor_t = Int32_t /* types.h:255:31 */
  1646  
  1647  type Ssize_t = int64 /* types.h:284:24 */
  1648  
  1649  type Suseconds_t = int32 /* types.h:304:27 */
  1650  
  1651  type Useconds_t = uint32 /* types.h:309:26 */
  1652  
  1653  //	$NetBSD: fd_set.h,v 1.7 2018/06/24 12:05:40 kamil Exp $
  1654  
  1655  // -
  1656  // Copyright (c) 1992, 1993
  1657  //	The Regents of the University of California.  All rights reserved.
  1658  //
  1659  // Redistribution and use in source and binary forms, with or without
  1660  // modification, are permitted provided that the following conditions
  1661  // are met:
  1662  // 1. Redistributions of source code must retain the above copyright
  1663  //    notice, this list of conditions and the following disclaimer.
  1664  // 2. Redistributions in binary form must reproduce the above copyright
  1665  //    notice, this list of conditions and the following disclaimer in the
  1666  //    documentation and/or other materials provided with the distribution.
  1667  // 3. Neither the name of the University nor the names of its contributors
  1668  //    may be used to endorse or promote products derived from this software
  1669  //    without specific prior written permission.
  1670  //
  1671  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1672  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1673  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1674  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1675  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1676  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1677  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1678  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1679  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1680  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1681  // SUCH DAMAGE.
  1682  //
  1683  //	from: @(#)types.h	8.4 (Berkeley) 1/21/94
  1684  
  1685  //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  1686  
  1687  // * Copyright (c) 1991, 1993
  1688  //	The Regents of the University of California.  All rights reserved.
  1689  //
  1690  // This code is derived from software contributed to Berkeley by
  1691  // Berkeley Software Design, Inc.
  1692  //
  1693  // Redistribution and use in source and binary forms, with or without
  1694  // modification, are permitted provided that the following conditions
  1695  // are met:
  1696  // 1. Redistributions of source code must retain the above copyright
  1697  //    notice, this list of conditions and the following disclaimer.
  1698  // 2. Redistributions in binary form must reproduce the above copyright
  1699  //    notice, this list of conditions and the following disclaimer in the
  1700  //    documentation and/or other materials provided with the distribution.
  1701  // 3. Neither the name of the University nor the names of its contributors
  1702  //    may be used to endorse or promote products derived from this software
  1703  //    without specific prior written permission.
  1704  //
  1705  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1706  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1707  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1708  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1709  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1710  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1711  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1712  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1713  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1714  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1715  // SUCH DAMAGE.
  1716  //
  1717  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  1718  
  1719  //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  1720  
  1721  // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  1722  // Public domain.
  1723  //
  1724  // NOTE: Do not protect this header against multiple inclusion.  Doing
  1725  // so can have subtle side-effects due to header file inclusion order
  1726  // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
  1727  // protect each CPP macro that we want to supply.
  1728  
  1729  // Feature-test macros are defined by several standards, and allow an
  1730  // application to specify what symbols they want the system headers to
  1731  // expose, and hence what standard they want them to conform to.
  1732  // There are two classes of feature-test macros.  The first class
  1733  // specify complete standards, and if one of these is defined, header
  1734  // files will try to conform to the relevant standard.  They are:
  1735  //
  1736  // ANSI macros:
  1737  // _ANSI_SOURCE			ANSI C89
  1738  //
  1739  // POSIX macros:
  1740  // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
  1741  // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
  1742  // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
  1743  // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
  1744  // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
  1745  // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
  1746  // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
  1747  //
  1748  // X/Open macros:
  1749  // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
  1750  // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
  1751  // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
  1752  // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
  1753  // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
  1754  // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
  1755  //
  1756  // NetBSD macros:
  1757  // _NETBSD_SOURCE == 1		Make all NetBSD features available.
  1758  //
  1759  // If more than one of these "major" feature-test macros is defined,
  1760  // then the set of facilities provided (and namespace used) is the
  1761  // union of that specified by the relevant standards, and in case of
  1762  // conflict, the earlier standard in the above list has precedence (so
  1763  // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  1764  // of rename() that's used is the POSIX one).  If none of the "major"
  1765  // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  1766  //
  1767  // There are also "minor" feature-test macros, which enable extra
  1768  // functionality in addition to some base standard.  They should be
  1769  // defined along with one of the "major" macros.  The "minor" macros
  1770  // are:
  1771  //
  1772  // _REENTRANT
  1773  // _ISOC99_SOURCE
  1774  // _ISOC11_SOURCE
  1775  // _LARGEFILE_SOURCE		Large File Support
  1776  //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  1777  
  1778  //	$NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  1779  
  1780  // -
  1781  // Copyright (c) 1990 The Regents of the University of California.
  1782  // All rights reserved.
  1783  //
  1784  // Redistribution and use in source and binary forms, with or without
  1785  // modification, are permitted provided that the following conditions
  1786  // are met:
  1787  // 1. Redistributions of source code must retain the above copyright
  1788  //    notice, this list of conditions and the following disclaimer.
  1789  // 2. Redistributions in binary form must reproduce the above copyright
  1790  //    notice, this list of conditions and the following disclaimer in the
  1791  //    documentation and/or other materials provided with the distribution.
  1792  // 3. Neither the name of the University nor the names of its contributors
  1793  //    may be used to endorse or promote products derived from this software
  1794  //    without specific prior written permission.
  1795  //
  1796  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1797  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1798  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1799  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1800  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1801  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1802  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1803  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1804  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1805  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1806  // SUCH DAMAGE.
  1807  //
  1808  //	from: @(#)types.h	7.5 (Berkeley) 3/9/91
  1809  
  1810  // Implementation dependent defines, hidden from user space.
  1811  // POSIX does not specify them.
  1812  
  1813  type X__fd_mask = X__uint32_t /* fd_set.h:46:20 */
  1814  
  1815  // 32 = 2 ^ 5
  1816  
  1817  // Select uses bit fields of file descriptors.  These macros manipulate
  1818  // such bit fields.  Note: FD_SETSIZE may be defined by the user.
  1819  
  1820  type Fd_set1 = struct{ Ffds_bits [8]X__fd_mask } /* fd_set.h:66:9 */
  1821  
  1822  // 32 = 2 ^ 5
  1823  
  1824  // Select uses bit fields of file descriptors.  These macros manipulate
  1825  // such bit fields.  Note: FD_SETSIZE may be defined by the user.
  1826  
  1827  type Fd_set = Fd_set1 /* fd_set.h:68:3 */
  1828  
  1829  // Expose our internals if we are not required to hide them.
  1830  
  1831  type Kauth_cred_t = uintptr /* types.h:318:27 */
  1832  
  1833  type Pri_t = int32 /* types.h:320:13 */
  1834  
  1835  //	$NetBSD: pthread_types.h,v 1.23 2017/09/09 23:21:45 kamil Exp $
  1836  
  1837  // -
  1838  // Copyright (c) 2001, 2008 The NetBSD Foundation, Inc.
  1839  // All rights reserved.
  1840  //
  1841  // This code is derived from software contributed to The NetBSD Foundation
  1842  // by Nathan J. Williams.
  1843  //
  1844  // Redistribution and use in source and binary forms, with or without
  1845  // modification, are permitted provided that the following conditions
  1846  // are met:
  1847  // 1. Redistributions of source code must retain the above copyright
  1848  //    notice, this list of conditions and the following disclaimer.
  1849  // 2. Redistributions in binary form must reproduce the above copyright
  1850  //    notice, this list of conditions and the following disclaimer in the
  1851  //    documentation and/or other materials provided with the distribution.
  1852  //
  1853  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1854  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1855  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1856  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1857  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1858  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1859  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1860  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1861  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1862  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1863  // POSSIBILITY OF SUCH DAMAGE.
  1864  
  1865  // We use the "pthread_spin_t" name internally; "pthread_spinlock_t" is the
  1866  // POSIX spinlock object.
  1867  //
  1868  // C++ expects to be using PTHREAD_FOO_INITIALIZER as a member initializer.
  1869  // This does not work for volatile types.  Since C++ does not touch the guts
  1870  // of those types, we do not include volatile in the C++ definitions.
  1871  type Pthread_spin_t = X__cpu_simple_lock_t /* pthread_types.h:43:29 */
  1872  type X__pthread_spin_t = Pthread_spin_t    /* pthread_types.h:48:24 */
  1873  
  1874  // Copied from PTQ_HEAD in pthread_queue.h
  1875  
  1876  type Pthread_queue_struct_t = struct {
  1877  	Fptqh_first uintptr
  1878  	Fptqh_last  uintptr
  1879  } /* pthread_types.h:61:1 */
  1880  
  1881  type Pthread_queue_t = Pthread_queue_struct_t /* pthread_types.h:62:39 */
  1882  type X__pthread_attr_st = struct {
  1883  	Fpta_magic   uint32
  1884  	Fpta_flags   int32
  1885  	Fpta_private uintptr
  1886  } /* pthread_types.h:65:1 */
  1887  
  1888  type X__pthread_mutex_st = struct {
  1889  	Fptm_magic      uint32
  1890  	Fptm_errorcheck X__pthread_spin_t
  1891  	Fptm_pad1       [3]Uint8_t
  1892  	F__8            struct{ Fptm_ceiling uint8 }
  1893  	Fptm_pad2       [3]Uint8_t
  1894  	F__ccgo_pad1    [4]byte
  1895  	Fptm_owner      Pthread_t
  1896  	Fptm_waiters    uintptr
  1897  	Fptm_recursed   uint32
  1898  	F__ccgo_pad2    [4]byte
  1899  	Fptm_spare2     uintptr
  1900  } /* pthread_types.h:66:1 */
  1901  
  1902  type X__pthread_mutexattr_st = struct {
  1903  	Fptma_magic   uint32
  1904  	F__ccgo_pad1  [4]byte
  1905  	Fptma_private uintptr
  1906  } /* pthread_types.h:67:1 */
  1907  
  1908  type X__pthread_cond_st = struct {
  1909  	Fptc_magic   uint32
  1910  	Fptc_lock    X__pthread_spin_t
  1911  	F__ccgo_pad1 [3]byte
  1912  	Fptc_waiters Pthread_queue_t
  1913  	Fptc_mutex   uintptr
  1914  	Fptc_private uintptr
  1915  } /* pthread_types.h:68:1 */
  1916  
  1917  type X__pthread_condattr_st = struct {
  1918  	Fptca_magic   uint32
  1919  	F__ccgo_pad1  [4]byte
  1920  	Fptca_private uintptr
  1921  } /* pthread_types.h:69:1 */
  1922  
  1923  type X__pthread_rwlock_st = struct {
  1924  	Fptr_magic     uint32
  1925  	Fptr_interlock X__pthread_spin_t
  1926  	F__ccgo_pad1   [3]byte
  1927  	Fptr_rblocked  Pthread_queue_t
  1928  	Fptr_wblocked  Pthread_queue_t
  1929  	Fptr_nreaders  uint32
  1930  	F__ccgo_pad2   [4]byte
  1931  	Fptr_owner     Pthread_t
  1932  	Fptr_private   uintptr
  1933  } /* pthread_types.h:71:1 */
  1934  
  1935  type X__pthread_rwlockattr_st = struct {
  1936  	Fptra_magic   uint32
  1937  	F__ccgo_pad1  [4]byte
  1938  	Fptra_private uintptr
  1939  } /* pthread_types.h:72:1 */
  1940  
  1941  type X__pthread_barrier_st = struct {
  1942  	Fptb_magic      uint32
  1943  	Fptb_lock       Pthread_spin_t
  1944  	F__ccgo_pad1    [3]byte
  1945  	Fptb_waiters    Pthread_queue_t
  1946  	Fptb_initcount  uint32
  1947  	Fptb_curcount   uint32
  1948  	Fptb_generation uint32
  1949  	F__ccgo_pad2    [4]byte
  1950  	Fptb_private    uintptr
  1951  } /* pthread_types.h:73:1 */
  1952  
  1953  type X__pthread_barrierattr_st = struct {
  1954  	Fptba_magic   uint32
  1955  	F__ccgo_pad1  [4]byte
  1956  	Fptba_private uintptr
  1957  } /* pthread_types.h:74:1 */
  1958  
  1959  type Pthread_t = uintptr                           /* pthread_types.h:76:29 */
  1960  type Pthread_attr_t = X__pthread_attr_st           /* pthread_types.h:77:34 */
  1961  type Pthread_mutex_t = X__pthread_mutex_st         /* pthread_types.h:78:35 */
  1962  type Pthread_mutexattr_t = X__pthread_mutexattr_st /* pthread_types.h:79:39 */
  1963  type Pthread_cond_t = X__pthread_cond_st           /* pthread_types.h:80:34 */
  1964  type Pthread_condattr_t = X__pthread_condattr_st   /* pthread_types.h:81:38 */
  1965  type X__pthread_once_st = struct {
  1966  	Fpto_mutex   Pthread_mutex_t
  1967  	Fpto_done    int32
  1968  	F__ccgo_pad1 [4]byte
  1969  } /* pthread_types.h:82:9 */
  1970  
  1971  type Pthread_once_t = X__pthread_once_st /* pthread_types.h:82:34 */
  1972  type X__pthread_spinlock_st = struct {
  1973  	Fpts_magic   uint32
  1974  	Fpts_spin    X__pthread_spin_t
  1975  	F__ccgo_pad1 [3]byte
  1976  	Fpts_flags   int32
  1977  } /* pthread_types.h:83:9 */
  1978  
  1979  type Pthread_spinlock_t = X__pthread_spinlock_st       /* pthread_types.h:83:38 */
  1980  type Pthread_rwlock_t = X__pthread_rwlock_st           /* pthread_types.h:84:36 */
  1981  type Pthread_rwlockattr_t = X__pthread_rwlockattr_st   /* pthread_types.h:85:40 */
  1982  type Pthread_barrier_t = X__pthread_barrier_st         /* pthread_types.h:86:37 */
  1983  type Pthread_barrierattr_t = X__pthread_barrierattr_st /* pthread_types.h:87:41 */
  1984  type Pthread_key_t = int32                             /* pthread_types.h:88:13 */
  1985  
  1986  // Structure returned by gettimeofday(2) system call,
  1987  // and used in other calls.
  1988  type Timeval = struct {
  1989  	Ftv_sec      Time_t
  1990  	Ftv_usec     Suseconds_t
  1991  	F__ccgo_pad1 [4]byte
  1992  } /* time.h:44:1 */
  1993  
  1994  //	$NetBSD: timespec.h,v 1.1 2015/07/31 12:51:32 kamil Exp $
  1995  
  1996  // Copyright (c) 1982, 1986, 1993
  1997  //	The Regents of the University of California.  All rights reserved.
  1998  //
  1999  // Redistribution and use in source and binary forms, with or without
  2000  // modification, are permitted provided that the following conditions
  2001  // are met:
  2002  // 1. Redistributions of source code must retain the above copyright
  2003  //    notice, this list of conditions and the following disclaimer.
  2004  // 2. Redistributions in binary form must reproduce the above copyright
  2005  //    notice, this list of conditions and the following disclaimer in the
  2006  //    documentation and/or other materials provided with the distribution.
  2007  // 3. Neither the name of the University nor the names of its contributors
  2008  //    may be used to endorse or promote products derived from this software
  2009  //    without specific prior written permission.
  2010  //
  2011  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  2012  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2013  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2014  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  2015  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  2016  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  2017  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  2018  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  2019  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  2020  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  2021  // SUCH DAMAGE.
  2022  //
  2023  //	@(#)time.h	8.5 (Berkeley) 5/4/95
  2024  //
  2025  // Extracted by Kamil Rytarowski from:
  2026  // NetBSD: src/sys/sys/time.h,v 1.69 2015/05/19 23:35:11 riastradh Exp
  2027  
  2028  // Note: timezone is obsolete. All timezone handling is now in
  2029  // userland. Its just here for back compatibility.
  2030  type Timezone = struct {
  2031  	Ftz_minuteswest int32
  2032  	Ftz_dsttime     int32
  2033  } /* time.h:65:1 */
  2034  
  2035  // Operations on timevals.
  2036  
  2037  // hide bintime for _STANDALONE because this header is used for hpcboot.exe,
  2038  // which is built with compilers which don't recognize LL suffix.
  2039  //
  2040  //	http://mail-index.NetBSD.org/tech-userlevel/2008/02/27/msg000181.html
  2041  type Bintime = struct {
  2042  	Fsec  Time_t
  2043  	Ffrac Uint64_t
  2044  } /* time.h:102:1 */
  2045  
  2046  // Operations on timespecs.
  2047  
  2048  // Names of the interval timers, and structure
  2049  // defining a timer setting.
  2050  // NB: Must match the CLOCK_ constants below.
  2051  
  2052  type Itimerval = struct {
  2053  	Fit_interval struct {
  2054  		Ftv_sec      Time_t
  2055  		Ftv_usec     Suseconds_t
  2056  		F__ccgo_pad1 [4]byte
  2057  	}
  2058  	Fit_value struct {
  2059  		Ftv_sec      Time_t
  2060  		Ftv_usec     Suseconds_t
  2061  		F__ccgo_pad1 [4]byte
  2062  	}
  2063  } /* time.h:280:1 */
  2064  
  2065  // Structure defined by POSIX.1b to be like a itimerval, but with
  2066  // timespecs. Used in the timer_*() system calls.
  2067  type Itimerspec = struct {
  2068  	Fit_interval struct {
  2069  		Ftv_sec  Time_t
  2070  		Ftv_nsec int64
  2071  	}
  2072  	Fit_value struct {
  2073  		Ftv_sec  Time_t
  2074  		Ftv_nsec int64
  2075  	}
  2076  } /* time.h:289:1 */
  2077  
  2078  //	$NetBSD: select.h,v 1.37 2014/04/25 15:52:45 pooka Exp $
  2079  
  2080  // -
  2081  // Copyright (c) 1992, 1993
  2082  //	The Regents of the University of California.  All rights reserved.
  2083  //
  2084  // Redistribution and use in source and binary forms, with or without
  2085  // modification, are permitted provided that the following conditions
  2086  // are met:
  2087  // 1. Redistributions of source code must retain the above copyright
  2088  //    notice, this list of conditions and the following disclaimer.
  2089  // 2. Redistributions in binary form must reproduce the above copyright
  2090  //    notice, this list of conditions and the following disclaimer in the
  2091  //    documentation and/or other materials provided with the distribution.
  2092  // 3. Neither the name of the University nor the names of its contributors
  2093  //    may be used to endorse or promote products derived from this software
  2094  //    without specific prior written permission.
  2095  //
  2096  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  2097  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2098  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2099  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  2100  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  2101  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  2102  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  2103  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  2104  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  2105  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  2106  // SUCH DAMAGE.
  2107  //
  2108  //	@(#)select.h	8.2 (Berkeley) 1/4/94
  2109  
  2110  //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  2111  
  2112  // * Copyright (c) 1991, 1993
  2113  //	The Regents of the University of California.  All rights reserved.
  2114  //
  2115  // This code is derived from software contributed to Berkeley by
  2116  // Berkeley Software Design, Inc.
  2117  //
  2118  // Redistribution and use in source and binary forms, with or without
  2119  // modification, are permitted provided that the following conditions
  2120  // are met:
  2121  // 1. Redistributions of source code must retain the above copyright
  2122  //    notice, this list of conditions and the following disclaimer.
  2123  // 2. Redistributions in binary form must reproduce the above copyright
  2124  //    notice, this list of conditions and the following disclaimer in the
  2125  //    documentation and/or other materials provided with the distribution.
  2126  // 3. Neither the name of the University nor the names of its contributors
  2127  //    may be used to endorse or promote products derived from this software
  2128  //    without specific prior written permission.
  2129  //
  2130  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  2131  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2132  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2133  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  2134  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  2135  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  2136  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  2137  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  2138  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  2139  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  2140  // SUCH DAMAGE.
  2141  //
  2142  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  2143  
  2144  //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  2145  
  2146  // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  2147  // Public domain.
  2148  //
  2149  // NOTE: Do not protect this header against multiple inclusion.  Doing
  2150  // so can have subtle side-effects due to header file inclusion order
  2151  // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
  2152  // protect each CPP macro that we want to supply.
  2153  
  2154  // Feature-test macros are defined by several standards, and allow an
  2155  // application to specify what symbols they want the system headers to
  2156  // expose, and hence what standard they want them to conform to.
  2157  // There are two classes of feature-test macros.  The first class
  2158  // specify complete standards, and if one of these is defined, header
  2159  // files will try to conform to the relevant standard.  They are:
  2160  //
  2161  // ANSI macros:
  2162  // _ANSI_SOURCE			ANSI C89
  2163  //
  2164  // POSIX macros:
  2165  // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
  2166  // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
  2167  // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
  2168  // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
  2169  // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
  2170  // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
  2171  // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
  2172  //
  2173  // X/Open macros:
  2174  // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
  2175  // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
  2176  // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
  2177  // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
  2178  // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
  2179  // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
  2180  //
  2181  // NetBSD macros:
  2182  // _NETBSD_SOURCE == 1		Make all NetBSD features available.
  2183  //
  2184  // If more than one of these "major" feature-test macros is defined,
  2185  // then the set of facilities provided (and namespace used) is the
  2186  // union of that specified by the relevant standards, and in case of
  2187  // conflict, the earlier standard in the above list has precedence (so
  2188  // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  2189  // of rename() that's used is the POSIX one).  If none of the "major"
  2190  // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  2191  //
  2192  // There are also "minor" feature-test macros, which enable extra
  2193  // functionality in addition to some base standard.  They should be
  2194  // defined along with one of the "major" macros.  The "minor" macros
  2195  // are:
  2196  //
  2197  // _REENTRANT
  2198  // _ISOC99_SOURCE
  2199  // _ISOC11_SOURCE
  2200  // _LARGEFILE_SOURCE		Large File Support
  2201  //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  2202  
  2203  //	$NetBSD: fd_set.h,v 1.7 2018/06/24 12:05:40 kamil Exp $
  2204  
  2205  // -
  2206  // Copyright (c) 1992, 1993
  2207  //	The Regents of the University of California.  All rights reserved.
  2208  //
  2209  // Redistribution and use in source and binary forms, with or without
  2210  // modification, are permitted provided that the following conditions
  2211  // are met:
  2212  // 1. Redistributions of source code must retain the above copyright
  2213  //    notice, this list of conditions and the following disclaimer.
  2214  // 2. Redistributions in binary form must reproduce the above copyright
  2215  //    notice, this list of conditions and the following disclaimer in the
  2216  //    documentation and/or other materials provided with the distribution.
  2217  // 3. Neither the name of the University nor the names of its contributors
  2218  //    may be used to endorse or promote products derived from this software
  2219  //    without specific prior written permission.
  2220  //
  2221  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  2222  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2223  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2224  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  2225  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  2226  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  2227  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  2228  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  2229  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  2230  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  2231  // SUCH DAMAGE.
  2232  //
  2233  //	from: @(#)types.h	8.4 (Berkeley) 1/21/94
  2234  
  2235  //	$NetBSD: sigtypes.h,v 1.11 2017/01/12 18:29:14 christos Exp $
  2236  
  2237  // Copyright (c) 1982, 1986, 1989, 1991, 1993
  2238  //	The Regents of the University of California.  All rights reserved.
  2239  // (c) UNIX System Laboratories, Inc.
  2240  // All or some portions of this file are derived from material licensed
  2241  // to the University of California by American Telephone and Telegraph
  2242  // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  2243  // the permission of UNIX System Laboratories, Inc.
  2244  //
  2245  // Redistribution and use in source and binary forms, with or without
  2246  // modification, are permitted provided that the following conditions
  2247  // are met:
  2248  // 1. Redistributions of source code must retain the above copyright
  2249  //    notice, this list of conditions and the following disclaimer.
  2250  // 2. Redistributions in binary form must reproduce the above copyright
  2251  //    notice, this list of conditions and the following disclaimer in the
  2252  //    documentation and/or other materials provided with the distribution.
  2253  // 3. Neither the name of the University nor the names of its contributors
  2254  //    may be used to endorse or promote products derived from this software
  2255  //    without specific prior written permission.
  2256  //
  2257  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  2258  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2259  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2260  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  2261  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  2262  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  2263  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  2264  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  2265  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  2266  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  2267  // SUCH DAMAGE.
  2268  //
  2269  //	@(#)signal.h	8.4 (Berkeley) 5/4/95
  2270  
  2271  // This header file defines various signal-related types.  We also keep
  2272  // the macros to manipulate sigset_t here, to encapsulate knowledge of
  2273  // its internals.
  2274  
  2275  //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  2276  
  2277  // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  2278  // Public domain.
  2279  //
  2280  // NOTE: Do not protect this header against multiple inclusion.  Doing
  2281  // so can have subtle side-effects due to header file inclusion order
  2282  // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
  2283  // protect each CPP macro that we want to supply.
  2284  
  2285  // Feature-test macros are defined by several standards, and allow an
  2286  // application to specify what symbols they want the system headers to
  2287  // expose, and hence what standard they want them to conform to.
  2288  // There are two classes of feature-test macros.  The first class
  2289  // specify complete standards, and if one of these is defined, header
  2290  // files will try to conform to the relevant standard.  They are:
  2291  //
  2292  // ANSI macros:
  2293  // _ANSI_SOURCE			ANSI C89
  2294  //
  2295  // POSIX macros:
  2296  // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
  2297  // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
  2298  // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
  2299  // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
  2300  // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
  2301  // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
  2302  // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
  2303  //
  2304  // X/Open macros:
  2305  // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
  2306  // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
  2307  // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
  2308  // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
  2309  // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
  2310  // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
  2311  //
  2312  // NetBSD macros:
  2313  // _NETBSD_SOURCE == 1		Make all NetBSD features available.
  2314  //
  2315  // If more than one of these "major" feature-test macros is defined,
  2316  // then the set of facilities provided (and namespace used) is the
  2317  // union of that specified by the relevant standards, and in case of
  2318  // conflict, the earlier standard in the above list has precedence (so
  2319  // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  2320  // of rename() that's used is the POSIX one).  If none of the "major"
  2321  // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  2322  //
  2323  // There are also "minor" feature-test macros, which enable extra
  2324  // functionality in addition to some base standard.  They should be
  2325  // defined along with one of the "major" macros.  The "minor" macros
  2326  // are:
  2327  //
  2328  // _REENTRANT
  2329  // _ISOC99_SOURCE
  2330  // _ISOC11_SOURCE
  2331  // _LARGEFILE_SOURCE		Large File Support
  2332  //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  2333  
  2334  //	$NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  2335  
  2336  // -
  2337  // Copyright (c) 1990 The Regents of the University of California.
  2338  // All rights reserved.
  2339  //
  2340  // Redistribution and use in source and binary forms, with or without
  2341  // modification, are permitted provided that the following conditions
  2342  // are met:
  2343  // 1. Redistributions of source code must retain the above copyright
  2344  //    notice, this list of conditions and the following disclaimer.
  2345  // 2. Redistributions in binary form must reproduce the above copyright
  2346  //    notice, this list of conditions and the following disclaimer in the
  2347  //    documentation and/or other materials provided with the distribution.
  2348  // 3. Neither the name of the University nor the names of its contributors
  2349  //    may be used to endorse or promote products derived from this software
  2350  //    without specific prior written permission.
  2351  //
  2352  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  2353  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2354  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2355  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  2356  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  2357  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  2358  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  2359  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  2360  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  2361  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  2362  // SUCH DAMAGE.
  2363  //
  2364  //	from: @(#)types.h	7.5 (Berkeley) 3/9/91
  2365  
  2366  //	$NetBSD: ansi.h,v 1.11 2019/05/07 03:49:26 kamil Exp $
  2367  
  2368  //	$NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
  2369  
  2370  // -
  2371  // Copyright (c) 2014 The NetBSD Foundation, Inc.
  2372  // All rights reserved.
  2373  //
  2374  // This code is derived from software contributed to The NetBSD Foundation
  2375  // by Matt Thomas of 3am Software Foundry.
  2376  //
  2377  // Redistribution and use in source and binary forms, with or without
  2378  // modification, are permitted provided that the following conditions
  2379  // are met:
  2380  // 1. Redistributions of source code must retain the above copyright
  2381  //    notice, this list of conditions and the following disclaimer.
  2382  // 2. Redistributions in binary form must reproduce the above copyright
  2383  //    notice, this list of conditions and the following disclaimer in the
  2384  //    documentation and/or other materials provided with the distribution.
  2385  //
  2386  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  2387  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  2388  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  2389  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  2390  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  2391  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  2392  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  2393  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  2394  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  2395  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  2396  // POSSIBILITY OF SUCH DAMAGE.
  2397  
  2398  type Sigset_t = struct{ F__bits [4]X__uint32_t } /* sigtypes.h:62:3 */
  2399  
  2400  // Macro for manipulating signal masks.
  2401  
  2402  type Sigaltstack = struct {
  2403  	Fss_sp       uintptr
  2404  	Fss_size     Size_t
  2405  	Fss_flags    int32
  2406  	F__ccgo_pad1 [4]byte
  2407  } /* sigtypes.h:108:9 */
  2408  
  2409  // Macro for manipulating signal masks.
  2410  
  2411  type Stack_t = Sigaltstack /* sigtypes.h:116:3 */
  2412  //	$NetBSD: idtype.h,v 1.5 2016/04/09 17:02:51 riastradh Exp $
  2413  
  2414  // -
  2415  // Copyright (c) 2016 The NetBSD Foundation, Inc.
  2416  // All rights reserved.
  2417  //
  2418  // This code is derived from software contributed to The NetBSD Foundation
  2419  // by Christos Zoulas.
  2420  //
  2421  // Redistribution and use in source and binary forms, with or without
  2422  // modification, are permitted provided that the following conditions
  2423  // are met:
  2424  // 1. Redistributions of source code must retain the above copyright
  2425  //    notice, this list of conditions and the following disclaimer.
  2426  // 2. Redistributions in binary form must reproduce the above copyright
  2427  //    notice, this list of conditions and the following disclaimer in the
  2428  //    documentation and/or other materials provided with the distribution.
  2429  //
  2430  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  2431  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  2432  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  2433  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  2434  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  2435  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  2436  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  2437  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  2438  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  2439  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  2440  // POSSIBILITY OF SUCH DAMAGE.
  2441  
  2442  // Using the solaris constants, some of them are not applicable to us
  2443  // Do not re-order the list, or add elements in the middle as this will
  2444  // break the ABI of the system calls using this.  We set a high private
  2445  // maximum so that new values can be added in the future without
  2446  // changing the width of the type.
  2447  type Idtype_t = int32 /* idtype.h:60:3 */
  2448  
  2449  type Locale_t = uintptr /* time.h:188:25 */
  2450  
  2451  type Timezone_t = uintptr /* time.h:198:24 */
  2452  
  2453  //	$NetBSD: sched.h,v 1.12.52.1 2022/08/03 10:42:02 martin Exp $
  2454  
  2455  // -
  2456  // Copyright (c) 2001 The NetBSD Foundation, Inc.
  2457  // All rights reserved.
  2458  //
  2459  // This code is derived from software contributed to The NetBSD Foundation
  2460  // by Nathan J. Williams.
  2461  //
  2462  // Redistribution and use in source and binary forms, with or without
  2463  // modification, are permitted provided that the following conditions
  2464  // are met:
  2465  // 1. Redistributions of source code must retain the above copyright
  2466  //    notice, this list of conditions and the following disclaimer.
  2467  // 2. Redistributions in binary form must reproduce the above copyright
  2468  //    notice, this list of conditions and the following disclaimer in the
  2469  //    documentation and/or other materials provided with the distribution.
  2470  //
  2471  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  2472  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  2473  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  2474  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  2475  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  2476  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  2477  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  2478  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  2479  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  2480  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  2481  // POSSIBILITY OF SUCH DAMAGE.
  2482  
  2483  //	$NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  2484  
  2485  // * Copyright (c) 1991, 1993
  2486  //	The Regents of the University of California.  All rights reserved.
  2487  //
  2488  // This code is derived from software contributed to Berkeley by
  2489  // Berkeley Software Design, Inc.
  2490  //
  2491  // Redistribution and use in source and binary forms, with or without
  2492  // modification, are permitted provided that the following conditions
  2493  // are met:
  2494  // 1. Redistributions of source code must retain the above copyright
  2495  //    notice, this list of conditions and the following disclaimer.
  2496  // 2. Redistributions in binary form must reproduce the above copyright
  2497  //    notice, this list of conditions and the following disclaimer in the
  2498  //    documentation and/or other materials provided with the distribution.
  2499  // 3. Neither the name of the University nor the names of its contributors
  2500  //    may be used to endorse or promote products derived from this software
  2501  //    without specific prior written permission.
  2502  //
  2503  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  2504  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2505  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2506  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  2507  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  2508  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  2509  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  2510  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  2511  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  2512  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  2513  // SUCH DAMAGE.
  2514  //
  2515  //	@(#)cdefs.h	8.8 (Berkeley) 1/9/95
  2516  
  2517  //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  2518  
  2519  // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  2520  // Public domain.
  2521  //
  2522  // NOTE: Do not protect this header against multiple inclusion.  Doing
  2523  // so can have subtle side-effects due to header file inclusion order
  2524  // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
  2525  // protect each CPP macro that we want to supply.
  2526  
  2527  // Feature-test macros are defined by several standards, and allow an
  2528  // application to specify what symbols they want the system headers to
  2529  // expose, and hence what standard they want them to conform to.
  2530  // There are two classes of feature-test macros.  The first class
  2531  // specify complete standards, and if one of these is defined, header
  2532  // files will try to conform to the relevant standard.  They are:
  2533  //
  2534  // ANSI macros:
  2535  // _ANSI_SOURCE			ANSI C89
  2536  //
  2537  // POSIX macros:
  2538  // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
  2539  // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
  2540  // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
  2541  // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
  2542  // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
  2543  // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
  2544  // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
  2545  //
  2546  // X/Open macros:
  2547  // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
  2548  // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
  2549  // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
  2550  // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
  2551  // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
  2552  // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
  2553  //
  2554  // NetBSD macros:
  2555  // _NETBSD_SOURCE == 1		Make all NetBSD features available.
  2556  //
  2557  // If more than one of these "major" feature-test macros is defined,
  2558  // then the set of facilities provided (and namespace used) is the
  2559  // union of that specified by the relevant standards, and in case of
  2560  // conflict, the earlier standard in the above list has precedence (so
  2561  // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  2562  // of rename() that's used is the POSIX one).  If none of the "major"
  2563  // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  2564  //
  2565  // There are also "minor" feature-test macros, which enable extra
  2566  // functionality in addition to some base standard.  They should be
  2567  // defined along with one of the "major" macros.  The "minor" macros
  2568  // are:
  2569  //
  2570  // _REENTRANT
  2571  // _ISOC99_SOURCE
  2572  // _ISOC11_SOURCE
  2573  // _LARGEFILE_SOURCE		Large File Support
  2574  //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  2575  
  2576  //	$NetBSD: sched.h,v 1.76 2016/07/03 14:24:59 christos Exp $
  2577  
  2578  // -
  2579  // Copyright (c) 1999, 2000, 2001, 2002, 2007, 2008 The NetBSD Foundation, Inc.
  2580  // All rights reserved.
  2581  //
  2582  // This code is derived from software contributed to The NetBSD Foundation
  2583  // by Ross Harvey, Jason R. Thorpe, Nathan J. Williams, Andrew Doran and
  2584  // Daniel Sieger.
  2585  //
  2586  // Redistribution and use in source and binary forms, with or without
  2587  // modification, are permitted provided that the following conditions
  2588  // are met:
  2589  // 1. Redistributions of source code must retain the above copyright
  2590  //    notice, this list of conditions and the following disclaimer.
  2591  // 2. Redistributions in binary form must reproduce the above copyright
  2592  //    notice, this list of conditions and the following disclaimer in the
  2593  //    documentation and/or other materials provided with the distribution.
  2594  //
  2595  // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  2596  // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  2597  // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  2598  // PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  2599  // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  2600  // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  2601  // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  2602  // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  2603  // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  2604  // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  2605  // POSSIBILITY OF SUCH DAMAGE.
  2606  
  2607  // -
  2608  // Copyright (c) 1982, 1986, 1991, 1993
  2609  //	The Regents of the University of California.  All rights reserved.
  2610  // (c) UNIX System Laboratories, Inc.
  2611  // All or some portions of this file are derived from material licensed
  2612  // to the University of California by American Telephone and Telegraph
  2613  // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  2614  // the permission of UNIX System Laboratories, Inc.
  2615  //
  2616  // Redistribution and use in source and binary forms, with or without
  2617  // modification, are permitted provided that the following conditions
  2618  // are met:
  2619  // 1. Redistributions of source code must retain the above copyright
  2620  //    notice, this list of conditions and the following disclaimer.
  2621  // 2. Redistributions in binary form must reproduce the above copyright
  2622  //    notice, this list of conditions and the following disclaimer in the
  2623  //    documentation and/or other materials provided with the distribution.
  2624  // 3. Neither the name of the University nor the names of its contributors
  2625  //    may be used to endorse or promote products derived from this software
  2626  //    without specific prior written permission.
  2627  //
  2628  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  2629  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2630  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2631  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  2632  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  2633  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  2634  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  2635  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  2636  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  2637  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  2638  // SUCH DAMAGE.
  2639  //
  2640  //	@(#)kern_clock.c	8.5 (Berkeley) 1/21/94
  2641  
  2642  //	$NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  2643  
  2644  // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  2645  // Public domain.
  2646  //
  2647  // NOTE: Do not protect this header against multiple inclusion.  Doing
  2648  // so can have subtle side-effects due to header file inclusion order
  2649  // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE.  Instead,
  2650  // protect each CPP macro that we want to supply.
  2651  
  2652  // Feature-test macros are defined by several standards, and allow an
  2653  // application to specify what symbols they want the system headers to
  2654  // expose, and hence what standard they want them to conform to.
  2655  // There are two classes of feature-test macros.  The first class
  2656  // specify complete standards, and if one of these is defined, header
  2657  // files will try to conform to the relevant standard.  They are:
  2658  //
  2659  // ANSI macros:
  2660  // _ANSI_SOURCE			ANSI C89
  2661  //
  2662  // POSIX macros:
  2663  // _POSIX_SOURCE == 1		IEEE Std 1003.1 (version?)
  2664  // _POSIX_C_SOURCE == 1		IEEE Std 1003.1-1990
  2665  // _POSIX_C_SOURCE == 2		IEEE Std 1003.2-1992
  2666  // _POSIX_C_SOURCE == 199309L	IEEE Std 1003.1b-1993
  2667  // _POSIX_C_SOURCE == 199506L	ISO/IEC 9945-1:1996
  2668  // _POSIX_C_SOURCE == 200112L	IEEE Std 1003.1-2001
  2669  // _POSIX_C_SOURCE == 200809L   IEEE Std 1003.1-2008
  2670  //
  2671  // X/Open macros:
  2672  // _XOPEN_SOURCE		System Interfaces and Headers, Issue 4, Ver 2
  2673  // _XOPEN_SOURCE_EXTENDED == 1	XSH4.2 UNIX extensions
  2674  // _XOPEN_SOURCE == 500		System Interfaces and Headers, Issue 5
  2675  // _XOPEN_SOURCE == 520		Networking Services (XNS), Issue 5.2
  2676  // _XOPEN_SOURCE == 600		IEEE Std 1003.1-2001, XSI option
  2677  // _XOPEN_SOURCE == 700		IEEE Std 1003.1-2008, XSI option
  2678  //
  2679  // NetBSD macros:
  2680  // _NETBSD_SOURCE == 1		Make all NetBSD features available.
  2681  //
  2682  // If more than one of these "major" feature-test macros is defined,
  2683  // then the set of facilities provided (and namespace used) is the
  2684  // union of that specified by the relevant standards, and in case of
  2685  // conflict, the earlier standard in the above list has precedence (so
  2686  // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  2687  // of rename() that's used is the POSIX one).  If none of the "major"
  2688  // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  2689  //
  2690  // There are also "minor" feature-test macros, which enable extra
  2691  // functionality in addition to some base standard.  They should be
  2692  // defined along with one of the "major" macros.  The "minor" macros
  2693  // are:
  2694  //
  2695  // _REENTRANT
  2696  // _ISOC99_SOURCE
  2697  // _ISOC11_SOURCE
  2698  // _LARGEFILE_SOURCE		Large File Support
  2699  //		<http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  2700  
  2701  //	$NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $
  2702  
  2703  // -
  2704  // Copyright (c) 1982, 1986, 1991, 1993, 1994
  2705  //	The Regents of the University of California.  All rights reserved.
  2706  // (c) UNIX System Laboratories, Inc.
  2707  // All or some portions of this file are derived from material licensed
  2708  // to the University of California by American Telephone and Telegraph
  2709  // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  2710  // the permission of UNIX System Laboratories, Inc.
  2711  //
  2712  // Redistribution and use in source and binary forms, with or without
  2713  // modification, are permitted provided that the following conditions
  2714  // are met:
  2715  // 1. Redistributions of source code must retain the above copyright
  2716  //    notice, this list of conditions and the following disclaimer.
  2717  // 2. Redistributions in binary form must reproduce the above copyright
  2718  //    notice, this list of conditions and the following disclaimer in the
  2719  //    documentation and/or other materials provided with the distribution.
  2720  // 3. Neither the name of the University nor the names of its contributors
  2721  //    may be used to endorse or promote products derived from this software
  2722  //    without specific prior written permission.
  2723  //
  2724  // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  2725  // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  2726  // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  2727  // ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  2728  // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  2729  // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  2730  // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  2731  // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  2732  // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  2733  // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  2734  // SUCH DAMAGE.
  2735  //
  2736  //	@(#)types.h	8.4 (Berkeley) 1/21/94
  2737  
  2738  type Sched_param = struct{ Fsched_priority int32 } /* sched.h:80:1 */
  2739  
  2740  type Pthread_cleanup_store = struct{ Fpad [4]uintptr } /* pthread.h:170:1 */
  2741  
  2742  var _ int8 /* gen.c:2:13: */