pwd_netbsd_amd64.go 77 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622
  1. // Code generated by 'ccgo pwd/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 pwd/pwd_netbsd_amd64.go -pkgname pwd', DO NOT EDIT.
  2. package pwd
  3. import (
  4. "math"
  5. "reflect"
  6. "sync/atomic"
  7. "unsafe"
  8. )
  9. var _ = math.Pi
  10. var _ reflect.Kind
  11. var _ atomic.Value
  12. var _ unsafe.Pointer
  13. const (
  14. BIG_ENDIAN = 4321 // endian.h:101:1:
  15. BYTE_ORDER = 1234 // endian.h:103:1:
  16. FD_SETSIZE = 256 // fd_set.h:59:1:
  17. INT16_MAX = 32767 // common_int_limits.h:53:1:
  18. INT16_MIN = -32768 // common_int_limits.h:47:1:
  19. INT32_MAX = 2147483647 // common_int_limits.h:54:1:
  20. INT32_MIN = -2147483648 // common_int_limits.h:48:1:
  21. INT64_MAX = 9223372036854775807 // common_int_limits.h:55:1:
  22. INT64_MIN = -9223372036854775808 // common_int_limits.h:49:1:
  23. INT8_MAX = 127 // common_int_limits.h:52:1:
  24. INT8_MIN = -128 // common_int_limits.h:46:1:
  25. INTMAX_MAX = 9223372036854775807 // common_int_limits.h:111:1:
  26. INTMAX_MIN = -9223372036854775808 // common_int_limits.h:110:1:
  27. INTPTR_MAX = 9223372036854775807 // common_int_limits.h:105:1:
  28. INTPTR_MIN = -9223372036854775808 // common_int_limits.h:104:1:
  29. INT_FAST16_MAX = 2147483647 // common_int_limits.h:93:1:
  30. INT_FAST16_MIN = -2147483648 // common_int_limits.h:87:1:
  31. INT_FAST32_MAX = 2147483647 // common_int_limits.h:94:1:
  32. INT_FAST32_MIN = -2147483648 // common_int_limits.h:88:1:
  33. INT_FAST64_MAX = 9223372036854775807 // common_int_limits.h:95:1:
  34. INT_FAST64_MIN = -9223372036854775808 // common_int_limits.h:89:1:
  35. INT_FAST8_MAX = 2147483647 // common_int_limits.h:92:1:
  36. INT_FAST8_MIN = -2147483648 // common_int_limits.h:86:1:
  37. INT_LEAST16_MAX = 32767 // common_int_limits.h:73:1:
  38. INT_LEAST16_MIN = -32768 // common_int_limits.h:67:1:
  39. INT_LEAST32_MAX = 2147483647 // common_int_limits.h:74:1:
  40. INT_LEAST32_MIN = -2147483648 // common_int_limits.h:68:1:
  41. INT_LEAST64_MAX = 9223372036854775807 // common_int_limits.h:75:1:
  42. INT_LEAST64_MIN = -9223372036854775808 // common_int_limits.h:69:1:
  43. INT_LEAST8_MAX = 127 // common_int_limits.h:72:1:
  44. INT_LEAST8_MIN = -128 // common_int_limits.h:66:1:
  45. LITTLE_ENDIAN = 1234 // endian.h:100:1:
  46. NBBY = 8 // types.h:316:1:
  47. NFDBITS = 32 // fd_set.h:93:1:
  48. NODEVMAJOR = -1 // types.h:258:1:
  49. PDP_ENDIAN = 3412 // endian.h:102:1:
  50. PTRDIFF_MAX = 9223372036854775807 // common_int_limits.h:121:1:
  51. PTRDIFF_MIN = -9223372036854775808 // common_int_limits.h:120:1:
  52. SIG_ATOMIC_MAX = 2147483647 // common_int_limits.h:125:1:
  53. SIG_ATOMIC_MIN = -2147483648 // common_int_limits.h:124:1:
  54. SIZE_MAX = 18446744073709551615 // common_int_limits.h:128:1:
  55. UINT16_MAX = 65535 // common_int_limits.h:59:1:
  56. UINT32_MAX = 4294967295 // common_int_limits.h:60:1:
  57. UINT64_MAX = 18446744073709551615 // common_int_limits.h:61:1:
  58. UINT8_MAX = 255 // common_int_limits.h:58:1:
  59. UINTMAX_MAX = 18446744073709551615 // common_int_limits.h:112:1:
  60. UINTPTR_MAX = 18446744073709551615 // common_int_limits.h:106:1:
  61. UINT_FAST16_MAX = 4294967295 // common_int_limits.h:99:1:
  62. UINT_FAST32_MAX = 4294967295 // common_int_limits.h:100:1:
  63. UINT_FAST64_MAX = 18446744073709551615 // common_int_limits.h:101:1:
  64. UINT_FAST8_MAX = 4294967295 // common_int_limits.h:98:1:
  65. UINT_LEAST16_MAX = 65535 // common_int_limits.h:79:1:
  66. UINT_LEAST32_MAX = 4294967295 // common_int_limits.h:80:1:
  67. UINT_LEAST64_MAX = 18446744073709551615 // common_int_limits.h:81:1:
  68. UINT_LEAST8_MAX = 255 // common_int_limits.h:78:1:
  69. WCHAR_MAX = 0x7fffffff // wchar_limits.h:41:1:
  70. WCHAR_MIN = -2147483648 // wchar_limits.h:40:1:
  71. WINT_MAX = 0x7fffffff // wchar_limits.h:45:1:
  72. WINT_MIN = -2147483648 // wchar_limits.h:44:1:
  73. X_AMD64_BYTE_SWAP_H_ = 0 // byte_swap.h:37:1:
  74. X_AMD64_INT_CONST_H_ = 0 // int_const.h:33:1:
  75. X_AMD64_INT_LIMITS_H_ = 0 // int_limits.h:33:1:
  76. X_AMD64_INT_MWGWTYPES_H_ = 0 // int_mwgwtypes.h:33:1:
  77. X_AMD64_INT_TYPES_H_ = 0 // int_types.h:35:1:
  78. X_AMD64_WCHAR_LIMITS_H_ = 0 // wchar_limits.h:33:1:
  79. X_BIG_ENDIAN = 4321 // endian.h:44:1:
  80. X_BSD_INT16_T_ = 0 // types.h:65:1:
  81. X_BSD_INT32_T_ = 0 // types.h:75:1:
  82. X_BSD_INT64_T_ = 0 // types.h:85:1:
  83. X_BSD_INT8_T_ = 0 // types.h:55:1:
  84. X_BSD_INTPTR_T_ = 0 // stdint.h:80:1:
  85. X_BSD_UINT16_T_ = 0 // types.h:70:1:
  86. X_BSD_UINT32_T_ = 0 // types.h:80:1:
  87. X_BSD_UINT64_T_ = 0 // types.h:90:1:
  88. X_BSD_UINT8_T_ = 0 // types.h:60:1:
  89. X_BSD_UINTPTR_T_ = 0 // stdint.h:85:1:
  90. X_BYTE_ORDER = 1234 // endian_machdep.h:3:1:
  91. X_FILE_OFFSET_BITS = 64 // <builtin>:25:1:
  92. X_LIB_PTHREAD_TYPES_H = 0 // pthread_types.h:33:1:
  93. X_LITTLE_ENDIAN = 1234 // endian.h:43:1:
  94. X_LP64 = 1 // <predefined>:268:1:
  95. X_NETBSD_SOURCE = 1 // featuretest.h:70:1:
  96. X_PASSWORD_CHGNOW = -1 // pwd.h:103:1:
  97. X_PASSWORD_EFMT1 = 95 // pwd.h:89:1:
  98. X_PASSWORD_LEN = 128 // pwd.h:92:1:
  99. X_PASSWORD_NOCHG = 0x04 // pwd.h:96:1:
  100. X_PASSWORD_NOEXP = 0x08 // pwd.h:97:1:
  101. X_PASSWORD_NOGID = 0x02 // pwd.h:95:1:
  102. X_PASSWORD_NONDES = 36 // pwd.h:90:1:
  103. X_PASSWORD_NOUID = 0x01 // pwd.h:94:1:
  104. X_PASSWORD_NOWARN = 0x20 // pwd.h:100:1:
  105. X_PASSWORD_OLDFMT = 0x10 // pwd.h:99:1:
  106. X_PASSWORD_WARNDAYS = 14 // pwd.h:102:1:
  107. X_PATH_MASTERPASSWD = "/etc/master.passwd" // pwd.h:73:1:
  108. X_PATH_MASTERPASSWD_LOCK = "/etc/ptmp" // pwd.h:74:1:
  109. X_PATH_MP_DB = "/etc/pwd.db" // pwd.h:80:1:
  110. X_PATH_PASSWD = "/etc/passwd" // pwd.h:72:1:
  111. X_PATH_PASSWD_CONF = "/etc/passwd.conf" // pwd.h:76:1:
  112. X_PATH_PWD_MKDB = "/usr/sbin/pwd_mkdb" // pwd.h:83:1:
  113. X_PATH_SMP_DB = "/etc/spwd.db" // pwd.h:81:1:
  114. X_PATH_USERMGMT_CONF = "/etc/usermgmt.conf" // pwd.h:78:1:
  115. X_PDP_ENDIAN = 3412 // endian.h:45:1:
  116. X_PT_BARRIERATTR_DEAD = 0xDEAD0808 // pthread_types.h:278:1:
  117. X_PT_BARRIERATTR_MAGIC = 0x88880808 // pthread_types.h:277:1:
  118. X_PT_BARRIER_DEAD = 0xDEAD0008 // pthread_types.h:270:1:
  119. X_PT_BARRIER_MAGIC = 0x88880008 // pthread_types.h:269:1:
  120. X_PT_CONDATTR_DEAD = 0xDEAD0006 // pthread_types.h:197:1:
  121. X_PT_CONDATTR_MAGIC = 0x66660006 // pthread_types.h:196:1:
  122. X_PT_COND_DEAD = 0xDEAD0005 // pthread_types.h:182:1:
  123. X_PT_COND_MAGIC = 0x55550005 // pthread_types.h:181:1:
  124. X_PT_MUTEXATTR_DEAD = 0xDEAD0004 // pthread_types.h:167:1:
  125. X_PT_MUTEXATTR_MAGIC = 0x44440004 // pthread_types.h:166:1:
  126. X_PT_MUTEX_DEAD = 0xDEAD0003 // pthread_types.h:139:1:
  127. X_PT_MUTEX_MAGIC = 0x33330003 // pthread_types.h:138:1:
  128. X_PT_RWLOCKATTR_DEAD = 0xDEAD0909 // pthread_types.h:253:1:
  129. X_PT_RWLOCKATTR_MAGIC = 0x99990909 // pthread_types.h:252:1:
  130. X_PT_RWLOCK_DEAD = 0xDEAD0009 // pthread_types.h:236:1:
  131. X_PT_RWLOCK_MAGIC = 0x99990009 // pthread_types.h:235:1:
  132. X_PT_SPINLOCK_DEAD = 0xDEAD0007 // pthread_types.h:213:1:
  133. X_PT_SPINLOCK_MAGIC = 0x77770007 // pthread_types.h:212:1:
  134. X_PT_SPINLOCK_PSHARED = 0x00000001 // pthread_types.h:214:1:
  135. X_PWD_H_ = 0 // pwd.h:65:1:
  136. X_PW_KEYBYNAME = 49 // pwd.h:85:1:
  137. X_PW_KEYBYNUM = 50 // pwd.h:86:1:
  138. X_PW_KEYBYUID = 51 // pwd.h:87:1:
  139. X_QUAD_HIGHWORD = 1 // endian.h:84:1:
  140. X_QUAD_LOWWORD = 0 // endian.h:85:1:
  141. X_SIZE_T = 0 // types.h:279:1:
  142. X_SYS_ANSI_H_ = 0 // ansi.h:33:1:
  143. X_SYS_BSWAP_H_ = 0 // bswap.h:6:1:
  144. X_SYS_CDEFS_ELF_H_ = 0 // cdefs_elf.h:31:1:
  145. X_SYS_CDEFS_H_ = 0 // cdefs.h:37:1:
  146. X_SYS_COMMON_ANSI_H_ = 0 // common_ansi.h:33:1:
  147. X_SYS_COMMON_INT_LIMITS_H_ = 0 // common_int_limits.h:33:1:
  148. X_SYS_COMMON_INT_MWGWTYPES_H_ = 0 // common_int_mwgwtypes.h:33:1:
  149. X_SYS_COMMON_INT_TYPES_H_ = 0 // common_int_types.h:33:1:
  150. X_SYS_ENDIAN_H_ = 0 // endian.h:35:1:
  151. X_SYS_FD_SET_H_ = 0 // fd_set.h:35:1:
  152. X_SYS_STDINT_H_ = 0 // stdint.h:33:1:
  153. X_SYS_TYPES_H_ = 0 // types.h:40:1:
  154. X_X86_64_BSWAP_H_ = 0 // bswap.h:6:1:
  155. X_X86_64_CDEFS_H_ = 0 // cdefs.h:4:1:
  156. X_X86_64_TYPES_H_ = 0 // types.h:35:1:
  157. )
  158. type Ptrdiff_t = int64 /* <builtin>:3:26 */
  159. type Size_t = uint64 /* <builtin>:9:23 */
  160. type Wchar_t = int32 /* <builtin>:15:24 */
  161. type X__int128_t = struct {
  162. Flo int64
  163. Fhi int64
  164. } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
  165. type X__uint128_t = struct {
  166. Flo uint64
  167. Fhi uint64
  168. } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
  169. type X__builtin_va_list = uintptr /* <builtin>:46:14 */
  170. type X__float128 = float64 /* <builtin>:47:21 */
  171. // return true if value 'a' fits in type 't'
  172. // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  173. // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  174. // Public domain.
  175. //
  176. // NOTE: Do not protect this header against multiple inclusion. Doing
  177. // so can have subtle side-effects due to header file inclusion order
  178. // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,
  179. // protect each CPP macro that we want to supply.
  180. // Feature-test macros are defined by several standards, and allow an
  181. // application to specify what symbols they want the system headers to
  182. // expose, and hence what standard they want them to conform to.
  183. // There are two classes of feature-test macros. The first class
  184. // specify complete standards, and if one of these is defined, header
  185. // files will try to conform to the relevant standard. They are:
  186. //
  187. // ANSI macros:
  188. // _ANSI_SOURCE ANSI C89
  189. //
  190. // POSIX macros:
  191. // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)
  192. // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990
  193. // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992
  194. // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993
  195. // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996
  196. // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001
  197. // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008
  198. //
  199. // X/Open macros:
  200. // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2
  201. // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions
  202. // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5
  203. // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2
  204. // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option
  205. // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option
  206. //
  207. // NetBSD macros:
  208. // _NETBSD_SOURCE == 1 Make all NetBSD features available.
  209. //
  210. // If more than one of these "major" feature-test macros is defined,
  211. // then the set of facilities provided (and namespace used) is the
  212. // union of that specified by the relevant standards, and in case of
  213. // conflict, the earlier standard in the above list has precedence (so
  214. // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  215. // of rename() that's used is the POSIX one). If none of the "major"
  216. // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  217. //
  218. // There are also "minor" feature-test macros, which enable extra
  219. // functionality in addition to some base standard. They should be
  220. // defined along with one of the "major" macros. The "minor" macros
  221. // are:
  222. //
  223. // _REENTRANT
  224. // _ISOC99_SOURCE
  225. // _ISOC11_SOURCE
  226. // _LARGEFILE_SOURCE Large File Support
  227. // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  228. // $NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $
  229. // -
  230. // Copyright (c) 1982, 1986, 1991, 1993, 1994
  231. // The Regents of the University of California. All rights reserved.
  232. // (c) UNIX System Laboratories, Inc.
  233. // All or some portions of this file are derived from material licensed
  234. // to the University of California by American Telephone and Telegraph
  235. // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  236. // the permission of UNIX System Laboratories, Inc.
  237. //
  238. // Redistribution and use in source and binary forms, with or without
  239. // modification, are permitted provided that the following conditions
  240. // are met:
  241. // 1. Redistributions of source code must retain the above copyright
  242. // notice, this list of conditions and the following disclaimer.
  243. // 2. Redistributions in binary form must reproduce the above copyright
  244. // notice, this list of conditions and the following disclaimer in the
  245. // documentation and/or other materials provided with the distribution.
  246. // 3. Neither the name of the University nor the names of its contributors
  247. // may be used to endorse or promote products derived from this software
  248. // without specific prior written permission.
  249. //
  250. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  251. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  252. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  253. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  254. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  255. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  256. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  257. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  258. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  259. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  260. // SUCH DAMAGE.
  261. //
  262. // @(#)types.h 8.4 (Berkeley) 1/21/94
  263. // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  264. // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  265. // Public domain.
  266. //
  267. // NOTE: Do not protect this header against multiple inclusion. Doing
  268. // so can have subtle side-effects due to header file inclusion order
  269. // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,
  270. // protect each CPP macro that we want to supply.
  271. // Feature-test macros are defined by several standards, and allow an
  272. // application to specify what symbols they want the system headers to
  273. // expose, and hence what standard they want them to conform to.
  274. // There are two classes of feature-test macros. The first class
  275. // specify complete standards, and if one of these is defined, header
  276. // files will try to conform to the relevant standard. They are:
  277. //
  278. // ANSI macros:
  279. // _ANSI_SOURCE ANSI C89
  280. //
  281. // POSIX macros:
  282. // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)
  283. // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990
  284. // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992
  285. // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993
  286. // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996
  287. // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001
  288. // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008
  289. //
  290. // X/Open macros:
  291. // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2
  292. // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions
  293. // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5
  294. // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2
  295. // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option
  296. // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option
  297. //
  298. // NetBSD macros:
  299. // _NETBSD_SOURCE == 1 Make all NetBSD features available.
  300. //
  301. // If more than one of these "major" feature-test macros is defined,
  302. // then the set of facilities provided (and namespace used) is the
  303. // union of that specified by the relevant standards, and in case of
  304. // conflict, the earlier standard in the above list has precedence (so
  305. // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  306. // of rename() that's used is the POSIX one). If none of the "major"
  307. // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  308. //
  309. // There are also "minor" feature-test macros, which enable extra
  310. // functionality in addition to some base standard. They should be
  311. // defined along with one of the "major" macros. The "minor" macros
  312. // are:
  313. //
  314. // _REENTRANT
  315. // _ISOC99_SOURCE
  316. // _ISOC11_SOURCE
  317. // _LARGEFILE_SOURCE Large File Support
  318. // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  319. // Machine type dependent parameters.
  320. // $NetBSD: types.h,v 1.60 2019/04/06 03:06:24 thorpej Exp $
  321. // -
  322. // Copyright (c) 1990 The Regents of the University of California.
  323. // All rights reserved.
  324. //
  325. // Redistribution and use in source and binary forms, with or without
  326. // modification, are permitted provided that the following conditions
  327. // are met:
  328. // 1. Redistributions of source code must retain the above copyright
  329. // notice, this list of conditions and the following disclaimer.
  330. // 2. Redistributions in binary form must reproduce the above copyright
  331. // notice, this list of conditions and the following disclaimer in the
  332. // documentation and/or other materials provided with the distribution.
  333. // 3. Neither the name of the University nor the names of its contributors
  334. // may be used to endorse or promote products derived from this software
  335. // without specific prior written permission.
  336. //
  337. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  338. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  339. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  340. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  341. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  342. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  343. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  344. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  345. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  346. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  347. // SUCH DAMAGE.
  348. //
  349. // @(#)types.h 7.5 (Berkeley) 3/9/91
  350. // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  351. // * Copyright (c) 1991, 1993
  352. // The Regents of the University of California. All rights reserved.
  353. //
  354. // This code is derived from software contributed to Berkeley by
  355. // Berkeley Software Design, Inc.
  356. //
  357. // Redistribution and use in source and binary forms, with or without
  358. // modification, are permitted provided that the following conditions
  359. // are met:
  360. // 1. Redistributions of source code must retain the above copyright
  361. // notice, this list of conditions and the following disclaimer.
  362. // 2. Redistributions in binary form must reproduce the above copyright
  363. // notice, this list of conditions and the following disclaimer in the
  364. // documentation and/or other materials provided with the distribution.
  365. // 3. Neither the name of the University nor the names of its contributors
  366. // may be used to endorse or promote products derived from this software
  367. // without specific prior written permission.
  368. //
  369. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  370. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  371. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  372. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  373. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  374. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  375. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  376. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  377. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  378. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  379. // SUCH DAMAGE.
  380. //
  381. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  382. // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  383. // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  384. // Public domain.
  385. //
  386. // NOTE: Do not protect this header against multiple inclusion. Doing
  387. // so can have subtle side-effects due to header file inclusion order
  388. // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,
  389. // protect each CPP macro that we want to supply.
  390. // Feature-test macros are defined by several standards, and allow an
  391. // application to specify what symbols they want the system headers to
  392. // expose, and hence what standard they want them to conform to.
  393. // There are two classes of feature-test macros. The first class
  394. // specify complete standards, and if one of these is defined, header
  395. // files will try to conform to the relevant standard. They are:
  396. //
  397. // ANSI macros:
  398. // _ANSI_SOURCE ANSI C89
  399. //
  400. // POSIX macros:
  401. // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)
  402. // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990
  403. // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992
  404. // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993
  405. // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996
  406. // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001
  407. // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008
  408. //
  409. // X/Open macros:
  410. // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2
  411. // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions
  412. // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5
  413. // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2
  414. // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option
  415. // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option
  416. //
  417. // NetBSD macros:
  418. // _NETBSD_SOURCE == 1 Make all NetBSD features available.
  419. //
  420. // If more than one of these "major" feature-test macros is defined,
  421. // then the set of facilities provided (and namespace used) is the
  422. // union of that specified by the relevant standards, and in case of
  423. // conflict, the earlier standard in the above list has precedence (so
  424. // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  425. // of rename() that's used is the POSIX one). If none of the "major"
  426. // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  427. //
  428. // There are also "minor" feature-test macros, which enable extra
  429. // functionality in addition to some base standard. They should be
  430. // defined along with one of the "major" macros. The "minor" macros
  431. // are:
  432. //
  433. // _REENTRANT
  434. // _ISOC99_SOURCE
  435. // _ISOC11_SOURCE
  436. // _LARGEFILE_SOURCE Large File Support
  437. // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  438. // $NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  439. // -
  440. // Copyright (c) 1990 The Regents of the University of California.
  441. // All rights reserved.
  442. //
  443. // Redistribution and use in source and binary forms, with or without
  444. // modification, are permitted provided that the following conditions
  445. // are met:
  446. // 1. Redistributions of source code must retain the above copyright
  447. // notice, this list of conditions and the following disclaimer.
  448. // 2. Redistributions in binary form must reproduce the above copyright
  449. // notice, this list of conditions and the following disclaimer in the
  450. // documentation and/or other materials provided with the distribution.
  451. // 3. Neither the name of the University nor the names of its contributors
  452. // may be used to endorse or promote products derived from this software
  453. // without specific prior written permission.
  454. //
  455. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  456. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  457. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  458. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  459. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  460. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  461. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  462. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  463. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  464. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  465. // SUCH DAMAGE.
  466. //
  467. // from: @(#)types.h 7.5 (Berkeley) 3/9/91
  468. // $NetBSD: common_int_types.h,v 1.1 2014/07/25 21:43:13 joerg Exp $
  469. // -
  470. // Copyright (c) 2014 The NetBSD Foundation, Inc.
  471. // All rights reserved.
  472. //
  473. // This code is derived from software contributed to The NetBSD Foundation
  474. // by Joerg Sonnenberger.
  475. //
  476. // Redistribution and use in source and binary forms, with or without
  477. // modification, are permitted provided that the following conditions
  478. // are met:
  479. // 1. Redistributions of source code must retain the above copyright
  480. // notice, this list of conditions and the following disclaimer.
  481. // 2. Redistributions in binary form must reproduce the above copyright
  482. // notice, this list of conditions and the following disclaimer in the
  483. // documentation and/or other materials provided with the distribution.
  484. //
  485. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  486. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  487. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  488. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  489. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  490. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  491. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  492. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  493. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  494. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  495. // POSSIBILITY OF SUCH DAMAGE.
  496. // 7.18.1 Integer types
  497. // 7.18.1.1 Exact-width integer types
  498. type X__int8_t = int8 /* common_int_types.h:45:27 */
  499. type X__uint8_t = uint8 /* common_int_types.h:46:27 */
  500. type X__int16_t = int16 /* common_int_types.h:47:27 */
  501. type X__uint16_t = uint16 /* common_int_types.h:48:27 */
  502. type X__int32_t = int32 /* common_int_types.h:49:27 */
  503. type X__uint32_t = uint32 /* common_int_types.h:50:27 */
  504. type X__int64_t = int64 /* common_int_types.h:51:27 */
  505. type X__uint64_t = uint64 /* common_int_types.h:52:27 */
  506. // 7.18.1.4 Integer types capable of holding object pointers
  507. type X__intptr_t = int64 /* common_int_types.h:58:27 */
  508. type X__uintptr_t = uint64 /* common_int_types.h:59:26 */
  509. type X__register_t = int64 /* types.h:68:19 */
  510. type X__cpu_simple_lock_nv_t = uint8 /* types.h:69:24 */
  511. // __cpu_simple_lock_t used to be a full word.
  512. // The amd64 does not have strict alignment requirements.
  513. // $NetBSD: ansi.h,v 1.11 2019/05/07 03:49:26 kamil Exp $
  514. // $NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
  515. // -
  516. // Copyright (c) 2014 The NetBSD Foundation, Inc.
  517. // All rights reserved.
  518. //
  519. // This code is derived from software contributed to The NetBSD Foundation
  520. // by Matt Thomas of 3am Software Foundry.
  521. //
  522. // Redistribution and use in source and binary forms, with or without
  523. // modification, are permitted provided that the following conditions
  524. // are met:
  525. // 1. Redistributions of source code must retain the above copyright
  526. // notice, this list of conditions and the following disclaimer.
  527. // 2. Redistributions in binary form must reproduce the above copyright
  528. // notice, this list of conditions and the following disclaimer in the
  529. // documentation and/or other materials provided with the distribution.
  530. //
  531. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  532. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  533. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  534. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  535. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  536. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  537. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  538. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  539. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  540. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  541. // POSSIBILITY OF SUCH DAMAGE.
  542. // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  543. // * Copyright (c) 1991, 1993
  544. // The Regents of the University of California. All rights reserved.
  545. //
  546. // This code is derived from software contributed to Berkeley by
  547. // Berkeley Software Design, Inc.
  548. //
  549. // Redistribution and use in source and binary forms, with or without
  550. // modification, are permitted provided that the following conditions
  551. // are met:
  552. // 1. Redistributions of source code must retain the above copyright
  553. // notice, this list of conditions and the following disclaimer.
  554. // 2. Redistributions in binary form must reproduce the above copyright
  555. // notice, this list of conditions and the following disclaimer in the
  556. // documentation and/or other materials provided with the distribution.
  557. // 3. Neither the name of the University nor the names of its contributors
  558. // may be used to endorse or promote products derived from this software
  559. // without specific prior written permission.
  560. //
  561. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  562. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  563. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  564. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  565. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  566. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  567. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  568. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  569. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  570. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  571. // SUCH DAMAGE.
  572. //
  573. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  574. // $NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  575. // -
  576. // Copyright (c) 1990 The Regents of the University of California.
  577. // All rights reserved.
  578. //
  579. // Redistribution and use in source and binary forms, with or without
  580. // modification, are permitted provided that the following conditions
  581. // are met:
  582. // 1. Redistributions of source code must retain the above copyright
  583. // notice, this list of conditions and the following disclaimer.
  584. // 2. Redistributions in binary form must reproduce the above copyright
  585. // notice, this list of conditions and the following disclaimer in the
  586. // documentation and/or other materials provided with the distribution.
  587. // 3. Neither the name of the University nor the names of its contributors
  588. // may be used to endorse or promote products derived from this software
  589. // without specific prior written permission.
  590. //
  591. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  592. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  593. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  594. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  595. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  596. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  597. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  598. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  599. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  600. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  601. // SUCH DAMAGE.
  602. //
  603. // from: @(#)types.h 7.5 (Berkeley) 3/9/91
  604. // Types which are fundamental to the implementation and may appear in
  605. // more than one standard header are defined here. Standard headers
  606. // then use:
  607. // #ifdef _BSD_SIZE_T_
  608. // typedef _BSD_SIZE_T_ size_t;
  609. // #undef _BSD_SIZE_T_
  610. // #endif
  611. // $NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  612. // -
  613. // Copyright (c) 1990 The Regents of the University of California.
  614. // All rights reserved.
  615. //
  616. // Redistribution and use in source and binary forms, with or without
  617. // modification, are permitted provided that the following conditions
  618. // are met:
  619. // 1. Redistributions of source code must retain the above copyright
  620. // notice, this list of conditions and the following disclaimer.
  621. // 2. Redistributions in binary form must reproduce the above copyright
  622. // notice, this list of conditions and the following disclaimer in the
  623. // documentation and/or other materials provided with the distribution.
  624. // 3. Neither the name of the University nor the names of its contributors
  625. // may be used to endorse or promote products derived from this software
  626. // without specific prior written permission.
  627. //
  628. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  629. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  630. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  631. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  632. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  633. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  634. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  635. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  636. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  637. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  638. // SUCH DAMAGE.
  639. //
  640. // from: @(#)types.h 7.5 (Berkeley) 3/9/91
  641. // $NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $
  642. // -
  643. // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
  644. // All rights reserved.
  645. //
  646. // This code is derived from software contributed to The NetBSD Foundation
  647. // by Jun-ichiro itojun Hagino and by Klaus Klein.
  648. //
  649. // Redistribution and use in source and binary forms, with or without
  650. // modification, are permitted provided that the following conditions
  651. // are met:
  652. // 1. Redistributions of source code must retain the above copyright
  653. // notice, this list of conditions and the following disclaimer.
  654. // 2. Redistributions in binary form must reproduce the above copyright
  655. // notice, this list of conditions and the following disclaimer in the
  656. // documentation and/or other materials provided with the distribution.
  657. //
  658. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  659. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  660. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  661. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  662. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  663. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  664. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  665. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  666. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  667. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  668. // POSSIBILITY OF SUCH DAMAGE.
  669. // $NetBSD: ansi.h,v 1.11 2019/05/07 03:49:26 kamil Exp $
  670. // $NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $
  671. // -
  672. // Copyright (c) 2014 The NetBSD Foundation, Inc.
  673. // All rights reserved.
  674. //
  675. // This code is derived from software contributed to The NetBSD Foundation
  676. // by Matt Thomas of 3am Software Foundry.
  677. //
  678. // Redistribution and use in source and binary forms, with or without
  679. // modification, are permitted provided that the following conditions
  680. // are met:
  681. // 1. Redistributions of source code must retain the above copyright
  682. // notice, this list of conditions and the following disclaimer.
  683. // 2. Redistributions in binary form must reproduce the above copyright
  684. // notice, this list of conditions and the following disclaimer in the
  685. // documentation and/or other materials provided with the distribution.
  686. //
  687. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  688. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  689. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  690. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  691. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  692. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  693. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  694. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  695. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  696. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  697. // POSSIBILITY OF SUCH DAMAGE.
  698. type X__caddr_t = uintptr /* ansi.h:37:14 */ // core address
  699. type X__gid_t = X__uint32_t /* ansi.h:38:20 */ // group id
  700. type X__in_addr_t = X__uint32_t /* ansi.h:39:20 */ // IP(v4) address
  701. type X__in_port_t = X__uint16_t /* ansi.h:40:20 */ // "Internet" port number
  702. type X__mode_t = X__uint32_t /* ansi.h:41:20 */ // file permissions
  703. type X__off_t = X__int64_t /* ansi.h:42:19 */ // file offset
  704. type X__pid_t = X__int32_t /* ansi.h:43:19 */ // process id
  705. type X__sa_family_t = X__uint8_t /* ansi.h:44:19 */ // socket address family
  706. type X__socklen_t = uint32 /* ansi.h:45:22 */ // socket-related datum length
  707. type X__uid_t = X__uint32_t /* ansi.h:46:20 */ // user id
  708. type X__fsblkcnt_t = X__uint64_t /* ansi.h:47:20 */ // fs block count (statvfs)
  709. type X__fsfilcnt_t = X__uint64_t /* ansi.h:48:20 */
  710. type X__wctrans_t = uintptr /* ansi.h:51:32 */
  711. type X__wctype_t = uintptr /* ansi.h:54:31 */
  712. // mbstate_t is an opaque object to keep conversion state, during multibyte
  713. // stream conversions. The content must not be referenced by user programs.
  714. type X__mbstate_t = struct {
  715. F__mbstateL X__int64_t
  716. F__ccgo_pad1 [120]byte
  717. } /* ansi.h:63:3 */
  718. type X__va_list = X__builtin_va_list /* ansi.h:72:27 */
  719. type Int8_t = X__int8_t /* types.h:54:18 */
  720. type Uint8_t = X__uint8_t /* types.h:59:19 */
  721. type Int16_t = X__int16_t /* types.h:64:19 */
  722. type Uint16_t = X__uint16_t /* types.h:69:20 */
  723. type Int32_t = X__int32_t /* types.h:74:19 */
  724. type Uint32_t = X__uint32_t /* types.h:79:20 */
  725. type Int64_t = X__int64_t /* types.h:84:19 */
  726. type Uint64_t = X__uint64_t /* types.h:89:20 */
  727. type U_int8_t = Uint8_t /* types.h:93:18 */
  728. type U_int16_t = Uint16_t /* types.h:94:18 */
  729. type U_int32_t = Uint32_t /* types.h:95:18 */
  730. type U_int64_t = Uint64_t /* types.h:96:18 */
  731. // $NetBSD: endian.h,v 1.1 2003/04/26 18:39:40 fvdl Exp $
  732. // $NetBSD: endian.h,v 1.30 2016/02/27 21:37:35 christos Exp $
  733. // Copyright (c) 1987, 1991, 1993
  734. // The Regents of the University of California. All rights reserved.
  735. //
  736. // Redistribution and use in source and binary forms, with or without
  737. // modification, are permitted provided that the following conditions
  738. // are met:
  739. // 1. Redistributions of source code must retain the above copyright
  740. // notice, this list of conditions and the following disclaimer.
  741. // 2. Redistributions in binary form must reproduce the above copyright
  742. // notice, this list of conditions and the following disclaimer in the
  743. // documentation and/or other materials provided with the distribution.
  744. // 3. Neither the name of the University nor the names of its contributors
  745. // may be used to endorse or promote products derived from this software
  746. // without specific prior written permission.
  747. //
  748. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  749. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  750. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  751. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  752. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  753. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  754. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  755. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  756. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  757. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  758. // SUCH DAMAGE.
  759. //
  760. // @(#)endian.h 8.1 (Berkeley) 6/11/93
  761. // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  762. // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  763. // Public domain.
  764. //
  765. // NOTE: Do not protect this header against multiple inclusion. Doing
  766. // so can have subtle side-effects due to header file inclusion order
  767. // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,
  768. // protect each CPP macro that we want to supply.
  769. // Feature-test macros are defined by several standards, and allow an
  770. // application to specify what symbols they want the system headers to
  771. // expose, and hence what standard they want them to conform to.
  772. // There are two classes of feature-test macros. The first class
  773. // specify complete standards, and if one of these is defined, header
  774. // files will try to conform to the relevant standard. They are:
  775. //
  776. // ANSI macros:
  777. // _ANSI_SOURCE ANSI C89
  778. //
  779. // POSIX macros:
  780. // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)
  781. // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990
  782. // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992
  783. // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993
  784. // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996
  785. // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001
  786. // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008
  787. //
  788. // X/Open macros:
  789. // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2
  790. // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions
  791. // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5
  792. // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2
  793. // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option
  794. // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option
  795. //
  796. // NetBSD macros:
  797. // _NETBSD_SOURCE == 1 Make all NetBSD features available.
  798. //
  799. // If more than one of these "major" feature-test macros is defined,
  800. // then the set of facilities provided (and namespace used) is the
  801. // union of that specified by the relevant standards, and in case of
  802. // conflict, the earlier standard in the above list has precedence (so
  803. // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  804. // of rename() that's used is the POSIX one). If none of the "major"
  805. // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  806. //
  807. // There are also "minor" feature-test macros, which enable extra
  808. // functionality in addition to some base standard. They should be
  809. // defined along with one of the "major" macros. The "minor" macros
  810. // are:
  811. //
  812. // _REENTRANT
  813. // _ISOC99_SOURCE
  814. // _ISOC11_SOURCE
  815. // _LARGEFILE_SOURCE Large File Support
  816. // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  817. // Definitions for byte order, according to byte significance from low
  818. // address to high.
  819. // C-family endian-ness definitions
  820. // $NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $
  821. // -
  822. // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc.
  823. // All rights reserved.
  824. //
  825. // This code is derived from software contributed to The NetBSD Foundation
  826. // by Jun-ichiro itojun Hagino and by Klaus Klein.
  827. //
  828. // Redistribution and use in source and binary forms, with or without
  829. // modification, are permitted provided that the following conditions
  830. // are met:
  831. // 1. Redistributions of source code must retain the above copyright
  832. // notice, this list of conditions and the following disclaimer.
  833. // 2. Redistributions in binary form must reproduce the above copyright
  834. // notice, this list of conditions and the following disclaimer in the
  835. // documentation and/or other materials provided with the distribution.
  836. //
  837. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  838. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  839. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  840. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  841. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  842. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  843. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  844. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  845. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  846. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  847. // POSSIBILITY OF SUCH DAMAGE.
  848. // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  849. // * Copyright (c) 1991, 1993
  850. // The Regents of the University of California. All rights reserved.
  851. //
  852. // This code is derived from software contributed to Berkeley by
  853. // Berkeley Software Design, Inc.
  854. //
  855. // Redistribution and use in source and binary forms, with or without
  856. // modification, are permitted provided that the following conditions
  857. // are met:
  858. // 1. Redistributions of source code must retain the above copyright
  859. // notice, this list of conditions and the following disclaimer.
  860. // 2. Redistributions in binary form must reproduce the above copyright
  861. // notice, this list of conditions and the following disclaimer in the
  862. // documentation and/or other materials provided with the distribution.
  863. // 3. Neither the name of the University nor the names of its contributors
  864. // may be used to endorse or promote products derived from this software
  865. // without specific prior written permission.
  866. //
  867. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  868. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  869. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  870. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  871. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  872. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  873. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  874. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  875. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  876. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  877. // SUCH DAMAGE.
  878. //
  879. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  880. // $NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $
  881. // -
  882. // Copyright (c) 1982, 1986, 1991, 1993, 1994
  883. // The Regents of the University of California. All rights reserved.
  884. // (c) UNIX System Laboratories, Inc.
  885. // All or some portions of this file are derived from material licensed
  886. // to the University of California by American Telephone and Telegraph
  887. // Co. or Unix System Laboratories, Inc. and are reproduced herein with
  888. // the permission of UNIX System Laboratories, Inc.
  889. //
  890. // Redistribution and use in source and binary forms, with or without
  891. // modification, are permitted provided that the following conditions
  892. // are met:
  893. // 1. Redistributions of source code must retain the above copyright
  894. // notice, this list of conditions and the following disclaimer.
  895. // 2. Redistributions in binary form must reproduce the above copyright
  896. // notice, this list of conditions and the following disclaimer in the
  897. // documentation and/or other materials provided with the distribution.
  898. // 3. Neither the name of the University nor the names of its contributors
  899. // may be used to endorse or promote products derived from this software
  900. // without specific prior written permission.
  901. //
  902. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  903. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  904. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  905. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  906. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  907. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  908. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  909. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  910. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  911. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  912. // SUCH DAMAGE.
  913. //
  914. // @(#)types.h 8.4 (Berkeley) 1/21/94
  915. type In_addr_t = X__in_addr_t /* endian.h:58:21 */
  916. type In_port_t = X__in_port_t /* endian.h:63:21 */
  917. // $NetBSD: bswap.h,v 1.19 2015/03/12 15:28:16 christos Exp $
  918. // Written by Manuel Bouyer. Public domain
  919. // $NetBSD: stdint.h,v 1.8 2018/11/06 16:26:44 maya Exp $
  920. // -
  921. // Copyright (c) 2001, 2004 The NetBSD Foundation, Inc.
  922. // All rights reserved.
  923. //
  924. // This code is derived from software contributed to The NetBSD Foundation
  925. // by Klaus Klein.
  926. //
  927. // Redistribution and use in source and binary forms, with or without
  928. // modification, are permitted provided that the following conditions
  929. // are met:
  930. // 1. Redistributions of source code must retain the above copyright
  931. // notice, this list of conditions and the following disclaimer.
  932. // 2. Redistributions in binary form must reproduce the above copyright
  933. // notice, this list of conditions and the following disclaimer in the
  934. // documentation and/or other materials provided with the distribution.
  935. //
  936. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  937. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  938. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  939. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  940. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  941. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  942. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  943. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  944. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  945. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  946. // POSSIBILITY OF SUCH DAMAGE.
  947. // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  948. // * Copyright (c) 1991, 1993
  949. // The Regents of the University of California. All rights reserved.
  950. //
  951. // This code is derived from software contributed to Berkeley by
  952. // Berkeley Software Design, Inc.
  953. //
  954. // Redistribution and use in source and binary forms, with or without
  955. // modification, are permitted provided that the following conditions
  956. // are met:
  957. // 1. Redistributions of source code must retain the above copyright
  958. // notice, this list of conditions and the following disclaimer.
  959. // 2. Redistributions in binary form must reproduce the above copyright
  960. // notice, this list of conditions and the following disclaimer in the
  961. // documentation and/or other materials provided with the distribution.
  962. // 3. Neither the name of the University nor the names of its contributors
  963. // may be used to endorse or promote products derived from this software
  964. // without specific prior written permission.
  965. //
  966. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  967. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  968. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  969. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  970. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  971. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  972. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  973. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  974. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  975. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  976. // SUCH DAMAGE.
  977. //
  978. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  979. // $NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  980. // -
  981. // Copyright (c) 1990 The Regents of the University of California.
  982. // All rights reserved.
  983. //
  984. // Redistribution and use in source and binary forms, with or without
  985. // modification, are permitted provided that the following conditions
  986. // are met:
  987. // 1. Redistributions of source code must retain the above copyright
  988. // notice, this list of conditions and the following disclaimer.
  989. // 2. Redistributions in binary form must reproduce the above copyright
  990. // notice, this list of conditions and the following disclaimer in the
  991. // documentation and/or other materials provided with the distribution.
  992. // 3. Neither the name of the University nor the names of its contributors
  993. // may be used to endorse or promote products derived from this software
  994. // without specific prior written permission.
  995. //
  996. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  997. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  998. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  999. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1000. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1001. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1002. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1003. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1004. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1005. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1006. // SUCH DAMAGE.
  1007. //
  1008. // from: @(#)types.h 7.5 (Berkeley) 3/9/91
  1009. type Intptr_t = X__intptr_t /* stdint.h:79:20 */
  1010. type Uintptr_t = X__uintptr_t /* stdint.h:84:21 */
  1011. // $NetBSD: int_mwgwtypes.h,v 1.8 2014/07/25 21:43:13 joerg Exp $
  1012. // -
  1013. // Copyright (c) 2001 The NetBSD Foundation, Inc.
  1014. // All rights reserved.
  1015. //
  1016. // This code is derived from software contributed to The NetBSD Foundation
  1017. // by Klaus Klein.
  1018. //
  1019. // Redistribution and use in source and binary forms, with or without
  1020. // modification, are permitted provided that the following conditions
  1021. // are met:
  1022. // 1. Redistributions of source code must retain the above copyright
  1023. // notice, this list of conditions and the following disclaimer.
  1024. // 2. Redistributions in binary form must reproduce the above copyright
  1025. // notice, this list of conditions and the following disclaimer in the
  1026. // documentation and/or other materials provided with the distribution.
  1027. //
  1028. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1029. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1030. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1031. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1032. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1033. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1034. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1035. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1036. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1037. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1038. // POSSIBILITY OF SUCH DAMAGE.
  1039. // $NetBSD: common_int_mwgwtypes.h,v 1.1 2014/07/25 21:43:13 joerg Exp $
  1040. // -
  1041. // Copyright (c) 2014 The NetBSD Foundation, Inc.
  1042. // All rights reserved.
  1043. //
  1044. // This code is derived from software contributed to The NetBSD Foundation
  1045. // by Joerg Sonnenberger.
  1046. //
  1047. // Redistribution and use in source and binary forms, with or without
  1048. // modification, are permitted provided that the following conditions
  1049. // are met:
  1050. // 1. Redistributions of source code must retain the above copyright
  1051. // notice, this list of conditions and the following disclaimer.
  1052. // 2. Redistributions in binary form must reproduce the above copyright
  1053. // notice, this list of conditions and the following disclaimer in the
  1054. // documentation and/or other materials provided with the distribution.
  1055. //
  1056. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1057. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1058. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1059. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1060. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1061. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1062. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1063. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1064. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1065. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1066. // POSSIBILITY OF SUCH DAMAGE.
  1067. // 7.18.1 Integer types
  1068. // 7.18.1.2 Minimum-width integer types
  1069. type Int_least8_t = int8 /* common_int_mwgwtypes.h:45:32 */
  1070. type Uint_least8_t = uint8 /* common_int_mwgwtypes.h:46:32 */
  1071. type Int_least16_t = int16 /* common_int_mwgwtypes.h:47:32 */
  1072. type Uint_least16_t = uint16 /* common_int_mwgwtypes.h:48:32 */
  1073. type Int_least32_t = int32 /* common_int_mwgwtypes.h:49:32 */
  1074. type Uint_least32_t = uint32 /* common_int_mwgwtypes.h:50:32 */
  1075. type Int_least64_t = int64 /* common_int_mwgwtypes.h:51:32 */
  1076. type Uint_least64_t = uint64 /* common_int_mwgwtypes.h:52:32 */
  1077. // 7.18.1.3 Fastest minimum-width integer types
  1078. type Int_fast8_t = int32 /* common_int_mwgwtypes.h:55:32 */
  1079. type Uint_fast8_t = uint32 /* common_int_mwgwtypes.h:56:32 */
  1080. type Int_fast16_t = int32 /* common_int_mwgwtypes.h:57:32 */
  1081. type Uint_fast16_t = uint32 /* common_int_mwgwtypes.h:58:32 */
  1082. type Int_fast32_t = int32 /* common_int_mwgwtypes.h:59:32 */
  1083. type Uint_fast32_t = uint32 /* common_int_mwgwtypes.h:60:32 */
  1084. type Int_fast64_t = int64 /* common_int_mwgwtypes.h:61:32 */
  1085. type Uint_fast64_t = uint64 /* common_int_mwgwtypes.h:62:32 */
  1086. // 7.18.1.5 Greatest-width integer types
  1087. type Intmax_t = int64 /* common_int_mwgwtypes.h:66:33 */
  1088. type Uintmax_t = uint64 /* common_int_mwgwtypes.h:67:32 */
  1089. type U_char = uint8 /* types.h:101:23 */
  1090. type U_short = uint16 /* types.h:102:24 */
  1091. type U_int = uint32 /* types.h:103:22 */
  1092. type U_long = uint64 /* types.h:104:23 */
  1093. type Unchar = uint8 /* types.h:106:23 */ // Sys V compatibility
  1094. type Ushort = uint16 /* types.h:107:24 */ // Sys V compatibility
  1095. type Uint = uint32 /* types.h:108:22 */ // Sys V compatibility
  1096. type Ulong = uint64 /* types.h:109:23 */ // Sys V compatibility
  1097. type U_quad_t = Uint64_t /* types.h:112:18 */ // quads
  1098. type Quad_t = Int64_t /* types.h:113:18 */
  1099. type Qaddr_t = uintptr /* types.h:114:16 */
  1100. // The types longlong_t and u_longlong_t exist for use with the
  1101. // Sun-derived XDR routines involving these types, and their usage
  1102. // in other contexts is discouraged. Further note that these types
  1103. // may not be equivalent to "long long" and "unsigned long long",
  1104. // they are only guaranteed to be signed and unsigned 64-bit types
  1105. // respectively. Portable programs that need 64-bit types should use
  1106. // the C99 types int64_t and uint64_t instead.
  1107. type Longlong_t = Int64_t /* types.h:126:18 */ // for XDR
  1108. type U_longlong_t = Uint64_t /* types.h:127:18 */ // for XDR
  1109. type Blkcnt_t = Int64_t /* types.h:129:18 */ // fs block count
  1110. type Blksize_t = Int32_t /* types.h:130:18 */ // fs optimal block size
  1111. type Fsblkcnt_t = X__fsblkcnt_t /* types.h:133:22 */ // fs block count (statvfs)
  1112. type Fsfilcnt_t = X__fsfilcnt_t /* types.h:138:22 */ // fs file count
  1113. // We don't and shouldn't use caddr_t in the kernel anymore
  1114. type Caddr_t = X__caddr_t /* types.h:145:19 */ // core address
  1115. type Daddr_t = Int64_t /* types.h:154:18 */ // disk address
  1116. type Dev_t = Uint64_t /* types.h:157:18 */ // device number
  1117. type Fixpt_t = Uint32_t /* types.h:158:18 */ // fixed point number
  1118. type Gid_t = X__gid_t /* types.h:161:18 */ // group id
  1119. type Id_t = Uint32_t /* types.h:165:18 */ // group id, process id or user id
  1120. type Ino_t = Uint64_t /* types.h:166:18 */ // inode number
  1121. type Key_t = int64 /* types.h:167:15 */ // IPC key (for Sys V IPC)
  1122. type Mode_t = X__mode_t /* types.h:170:18 */ // permissions
  1123. type Nlink_t = Uint32_t /* types.h:174:18 */ // link count
  1124. type Off_t = X__off_t /* types.h:177:18 */ // file offset
  1125. type Pid_t = X__pid_t /* types.h:182:18 */ // process id
  1126. type Lwpid_t = Int32_t /* types.h:185:18 */ // LWP id
  1127. type Rlim_t = Uint64_t /* types.h:186:18 */ // resource limit
  1128. type Segsz_t = Int32_t /* types.h:187:18 */ // segment size
  1129. type Swblk_t = Int32_t /* types.h:188:18 */ // swap offset
  1130. type Uid_t = X__uid_t /* types.h:191:18 */ // user id
  1131. type Mqd_t = int32 /* types.h:195:14 */
  1132. type Cpuid_t = uint64 /* types.h:197:23 */
  1133. type Psetid_t = int32 /* types.h:199:14 */
  1134. type X__cpu_simple_lock_t = X__cpu_simple_lock_nv_t /* types.h:201:41 */
  1135. // Major, minor numbers, dev_t's.
  1136. type X__devmajor_t = Int32_t /* types.h:255:17 */
  1137. type X__devminor_t = Int32_t /* types.h:255:31 */
  1138. type Clock_t = uint32 /* types.h:268:24 */
  1139. type Ssize_t = int64 /* types.h:284:24 */
  1140. type Time_t = X__int64_t /* types.h:289:23 */
  1141. type Clockid_t = int32 /* types.h:294:26 */
  1142. type Timer_t = int32 /* types.h:299:24 */
  1143. type Suseconds_t = int32 /* types.h:304:27 */
  1144. type Useconds_t = uint32 /* types.h:309:26 */
  1145. // $NetBSD: fd_set.h,v 1.7 2018/06/24 12:05:40 kamil Exp $
  1146. // -
  1147. // Copyright (c) 1992, 1993
  1148. // The Regents of the University of California. All rights reserved.
  1149. //
  1150. // Redistribution and use in source and binary forms, with or without
  1151. // modification, are permitted provided that the following conditions
  1152. // are met:
  1153. // 1. Redistributions of source code must retain the above copyright
  1154. // notice, this list of conditions and the following disclaimer.
  1155. // 2. Redistributions in binary form must reproduce the above copyright
  1156. // notice, this list of conditions and the following disclaimer in the
  1157. // documentation and/or other materials provided with the distribution.
  1158. // 3. Neither the name of the University nor the names of its contributors
  1159. // may be used to endorse or promote products derived from this software
  1160. // without specific prior written permission.
  1161. //
  1162. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1163. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1164. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1165. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1166. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1167. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1168. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1169. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1170. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1171. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1172. // SUCH DAMAGE.
  1173. //
  1174. // from: @(#)types.h 8.4 (Berkeley) 1/21/94
  1175. // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $
  1176. // * Copyright (c) 1991, 1993
  1177. // The Regents of the University of California. All rights reserved.
  1178. //
  1179. // This code is derived from software contributed to Berkeley by
  1180. // Berkeley Software Design, Inc.
  1181. //
  1182. // Redistribution and use in source and binary forms, with or without
  1183. // modification, are permitted provided that the following conditions
  1184. // are met:
  1185. // 1. Redistributions of source code must retain the above copyright
  1186. // notice, this list of conditions and the following disclaimer.
  1187. // 2. Redistributions in binary form must reproduce the above copyright
  1188. // notice, this list of conditions and the following disclaimer in the
  1189. // documentation and/or other materials provided with the distribution.
  1190. // 3. Neither the name of the University nor the names of its contributors
  1191. // may be used to endorse or promote products derived from this software
  1192. // without specific prior written permission.
  1193. //
  1194. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1195. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1196. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1197. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1198. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1199. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1200. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1201. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1202. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1203. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1204. // SUCH DAMAGE.
  1205. //
  1206. // @(#)cdefs.h 8.8 (Berkeley) 1/9/95
  1207. // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $
  1208. // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998.
  1209. // Public domain.
  1210. //
  1211. // NOTE: Do not protect this header against multiple inclusion. Doing
  1212. // so can have subtle side-effects due to header file inclusion order
  1213. // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead,
  1214. // protect each CPP macro that we want to supply.
  1215. // Feature-test macros are defined by several standards, and allow an
  1216. // application to specify what symbols they want the system headers to
  1217. // expose, and hence what standard they want them to conform to.
  1218. // There are two classes of feature-test macros. The first class
  1219. // specify complete standards, and if one of these is defined, header
  1220. // files will try to conform to the relevant standard. They are:
  1221. //
  1222. // ANSI macros:
  1223. // _ANSI_SOURCE ANSI C89
  1224. //
  1225. // POSIX macros:
  1226. // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?)
  1227. // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990
  1228. // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992
  1229. // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993
  1230. // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996
  1231. // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001
  1232. // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008
  1233. //
  1234. // X/Open macros:
  1235. // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2
  1236. // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions
  1237. // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5
  1238. // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2
  1239. // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option
  1240. // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option
  1241. //
  1242. // NetBSD macros:
  1243. // _NETBSD_SOURCE == 1 Make all NetBSD features available.
  1244. //
  1245. // If more than one of these "major" feature-test macros is defined,
  1246. // then the set of facilities provided (and namespace used) is the
  1247. // union of that specified by the relevant standards, and in case of
  1248. // conflict, the earlier standard in the above list has precedence (so
  1249. // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version
  1250. // of rename() that's used is the POSIX one). If none of the "major"
  1251. // feature-test macros is defined, _NETBSD_SOURCE is assumed.
  1252. //
  1253. // There are also "minor" feature-test macros, which enable extra
  1254. // functionality in addition to some base standard. They should be
  1255. // defined along with one of the "major" macros. The "minor" macros
  1256. // are:
  1257. //
  1258. // _REENTRANT
  1259. // _ISOC99_SOURCE
  1260. // _ISOC11_SOURCE
  1261. // _LARGEFILE_SOURCE Large File Support
  1262. // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html>
  1263. // $NetBSD: int_types.h,v 1.7 2014/07/25 21:43:13 joerg Exp $
  1264. // -
  1265. // Copyright (c) 1990 The Regents of the University of California.
  1266. // All rights reserved.
  1267. //
  1268. // Redistribution and use in source and binary forms, with or without
  1269. // modification, are permitted provided that the following conditions
  1270. // are met:
  1271. // 1. Redistributions of source code must retain the above copyright
  1272. // notice, this list of conditions and the following disclaimer.
  1273. // 2. Redistributions in binary form must reproduce the above copyright
  1274. // notice, this list of conditions and the following disclaimer in the
  1275. // documentation and/or other materials provided with the distribution.
  1276. // 3. Neither the name of the University nor the names of its contributors
  1277. // may be used to endorse or promote products derived from this software
  1278. // without specific prior written permission.
  1279. //
  1280. // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  1281. // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  1282. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  1283. // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  1284. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  1285. // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  1286. // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  1287. // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  1288. // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  1289. // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  1290. // SUCH DAMAGE.
  1291. //
  1292. // from: @(#)types.h 7.5 (Berkeley) 3/9/91
  1293. // Implementation dependent defines, hidden from user space.
  1294. // POSIX does not specify them.
  1295. type X__fd_mask = X__uint32_t /* fd_set.h:46:20 */
  1296. // 32 = 2 ^ 5
  1297. // Select uses bit fields of file descriptors. These macros manipulate
  1298. // such bit fields. Note: FD_SETSIZE may be defined by the user.
  1299. type Fd_set1 = struct{ Ffds_bits [8]X__fd_mask } /* fd_set.h:66:9 */
  1300. // 32 = 2 ^ 5
  1301. // Select uses bit fields of file descriptors. These macros manipulate
  1302. // such bit fields. Note: FD_SETSIZE may be defined by the user.
  1303. type Fd_set = Fd_set1 /* fd_set.h:68:3 */
  1304. // Expose our internals if we are not required to hide them.
  1305. type Kauth_cred_t = uintptr /* types.h:318:27 */
  1306. type Pri_t = int32 /* types.h:320:13 */
  1307. // $NetBSD: pthread_types.h,v 1.23 2017/09/09 23:21:45 kamil Exp $
  1308. // -
  1309. // Copyright (c) 2001, 2008 The NetBSD Foundation, Inc.
  1310. // All rights reserved.
  1311. //
  1312. // This code is derived from software contributed to The NetBSD Foundation
  1313. // by Nathan J. Williams.
  1314. //
  1315. // Redistribution and use in source and binary forms, with or without
  1316. // modification, are permitted provided that the following conditions
  1317. // are met:
  1318. // 1. Redistributions of source code must retain the above copyright
  1319. // notice, this list of conditions and the following disclaimer.
  1320. // 2. Redistributions in binary form must reproduce the above copyright
  1321. // notice, this list of conditions and the following disclaimer in the
  1322. // documentation and/or other materials provided with the distribution.
  1323. //
  1324. // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
  1325. // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
  1326. // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  1327. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
  1328. // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  1329. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  1330. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  1331. // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  1332. // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  1333. // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  1334. // POSSIBILITY OF SUCH DAMAGE.
  1335. // We use the "pthread_spin_t" name internally; "pthread_spinlock_t" is the
  1336. // POSIX spinlock object.
  1337. //
  1338. // C++ expects to be using PTHREAD_FOO_INITIALIZER as a member initializer.
  1339. // This does not work for volatile types. Since C++ does not touch the guts
  1340. // of those types, we do not include volatile in the C++ definitions.
  1341. type Pthread_spin_t = X__cpu_simple_lock_t /* pthread_types.h:43:29 */
  1342. type X__pthread_spin_t = Pthread_spin_t /* pthread_types.h:48:24 */
  1343. // Copied from PTQ_HEAD in pthread_queue.h
  1344. type Pthread_queue_struct_t = struct {
  1345. Fptqh_first uintptr
  1346. Fptqh_last uintptr
  1347. } /* pthread_types.h:61:1 */
  1348. type Pthread_queue_t = Pthread_queue_struct_t /* pthread_types.h:62:39 */
  1349. type X__pthread_attr_st = struct {
  1350. Fpta_magic uint32
  1351. Fpta_flags int32
  1352. Fpta_private uintptr
  1353. } /* pthread_types.h:65:1 */
  1354. type X__pthread_mutex_st = struct {
  1355. Fptm_magic uint32
  1356. Fptm_errorcheck X__pthread_spin_t
  1357. Fptm_pad1 [3]Uint8_t
  1358. F__8 struct{ Fptm_ceiling uint8 }
  1359. Fptm_pad2 [3]Uint8_t
  1360. F__ccgo_pad1 [4]byte
  1361. Fptm_owner Pthread_t
  1362. Fptm_waiters uintptr
  1363. Fptm_recursed uint32
  1364. F__ccgo_pad2 [4]byte
  1365. Fptm_spare2 uintptr
  1366. } /* pthread_types.h:66:1 */
  1367. type X__pthread_mutexattr_st = struct {
  1368. Fptma_magic uint32
  1369. F__ccgo_pad1 [4]byte
  1370. Fptma_private uintptr
  1371. } /* pthread_types.h:67:1 */
  1372. type X__pthread_cond_st = struct {
  1373. Fptc_magic uint32
  1374. Fptc_lock X__pthread_spin_t
  1375. F__ccgo_pad1 [3]byte
  1376. Fptc_waiters Pthread_queue_t
  1377. Fptc_mutex uintptr
  1378. Fptc_private uintptr
  1379. } /* pthread_types.h:68:1 */
  1380. type X__pthread_condattr_st = struct {
  1381. Fptca_magic uint32
  1382. F__ccgo_pad1 [4]byte
  1383. Fptca_private uintptr
  1384. } /* pthread_types.h:69:1 */
  1385. type X__pthread_rwlock_st = struct {
  1386. Fptr_magic uint32
  1387. Fptr_interlock X__pthread_spin_t
  1388. F__ccgo_pad1 [3]byte
  1389. Fptr_rblocked Pthread_queue_t
  1390. Fptr_wblocked Pthread_queue_t
  1391. Fptr_nreaders uint32
  1392. F__ccgo_pad2 [4]byte
  1393. Fptr_owner Pthread_t
  1394. Fptr_private uintptr
  1395. } /* pthread_types.h:71:1 */
  1396. type X__pthread_rwlockattr_st = struct {
  1397. Fptra_magic uint32
  1398. F__ccgo_pad1 [4]byte
  1399. Fptra_private uintptr
  1400. } /* pthread_types.h:72:1 */
  1401. type X__pthread_barrier_st = struct {
  1402. Fptb_magic uint32
  1403. Fptb_lock Pthread_spin_t
  1404. F__ccgo_pad1 [3]byte
  1405. Fptb_waiters Pthread_queue_t
  1406. Fptb_initcount uint32
  1407. Fptb_curcount uint32
  1408. Fptb_generation uint32
  1409. F__ccgo_pad2 [4]byte
  1410. Fptb_private uintptr
  1411. } /* pthread_types.h:73:1 */
  1412. type X__pthread_barrierattr_st = struct {
  1413. Fptba_magic uint32
  1414. F__ccgo_pad1 [4]byte
  1415. Fptba_private uintptr
  1416. } /* pthread_types.h:74:1 */
  1417. type Pthread_t = uintptr /* pthread_types.h:76:29 */
  1418. type Pthread_attr_t = X__pthread_attr_st /* pthread_types.h:77:34 */
  1419. type Pthread_mutex_t = X__pthread_mutex_st /* pthread_types.h:78:35 */
  1420. type Pthread_mutexattr_t = X__pthread_mutexattr_st /* pthread_types.h:79:39 */
  1421. type Pthread_cond_t = X__pthread_cond_st /* pthread_types.h:80:34 */
  1422. type Pthread_condattr_t = X__pthread_condattr_st /* pthread_types.h:81:38 */
  1423. type X__pthread_once_st = struct {
  1424. Fpto_mutex Pthread_mutex_t
  1425. Fpto_done int32
  1426. F__ccgo_pad1 [4]byte
  1427. } /* pthread_types.h:82:9 */
  1428. type Pthread_once_t = X__pthread_once_st /* pthread_types.h:82:34 */
  1429. type X__pthread_spinlock_st = struct {
  1430. Fpts_magic uint32
  1431. Fpts_spin X__pthread_spin_t
  1432. F__ccgo_pad1 [3]byte
  1433. Fpts_flags int32
  1434. } /* pthread_types.h:83:9 */
  1435. type Pthread_spinlock_t = X__pthread_spinlock_st /* pthread_types.h:83:38 */
  1436. type Pthread_rwlock_t = X__pthread_rwlock_st /* pthread_types.h:84:36 */
  1437. type Pthread_rwlockattr_t = X__pthread_rwlockattr_st /* pthread_types.h:85:40 */
  1438. type Pthread_barrier_t = X__pthread_barrier_st /* pthread_types.h:86:37 */
  1439. type Pthread_barrierattr_t = X__pthread_barrierattr_st /* pthread_types.h:87:41 */
  1440. type Pthread_key_t = int32 /* pthread_types.h:88:13 */
  1441. type Passwd = struct {
  1442. Fpw_name uintptr
  1443. Fpw_passwd uintptr
  1444. Fpw_uid X__uid_t
  1445. Fpw_gid X__gid_t
  1446. Fpw_change Time_t
  1447. Fpw_class uintptr
  1448. Fpw_gecos uintptr
  1449. Fpw_dir uintptr
  1450. Fpw_shell uintptr
  1451. Fpw_expire Time_t
  1452. } /* pwd.h:107:1 */
  1453. var _ int8 /* gen.c:2:13: */