github.com/afumu/libc@v0.0.6/netinet/in/in_netbsd_arm.go (about) 1 // Code generated by 'ccgo netinet/in/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 netinet/in/in_netbsd_arm.go -pkgname in', DO NOT EDIT. 2 3 package in 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 AF_APPLETALK = 16 // socket.h:218:1: 19 AF_ARP = 28 // socket.h:237:1: 20 AF_BLUETOOTH = 31 // socket.h:243:1: 21 AF_CAN = 35 // socket.h:247:1: 22 AF_CCITT = 10 // socket.h:212:1: 23 AF_CHAOS = 5 // socket.h:206:1: 24 AF_CNT = 21 // socket.h:225:1: 25 AF_COIP = 20 // socket.h:224:1: 26 AF_DATAKIT = 9 // socket.h:211:1: 27 AF_DECnet = 12 // socket.h:214:1: 28 AF_DLI = 13 // socket.h:215:1: 29 AF_E164 = 26 // socket.h:235:1: 30 AF_ECMA = 8 // socket.h:210:1: 31 AF_ETHER = 36 // socket.h:248:1: 32 AF_HYLINK = 15 // socket.h:217:1: 33 AF_IEEE80211 = 32 // socket.h:244:1: 34 AF_IMPLINK = 3 // socket.h:204:1: 35 AF_INET = 2 // socket.h:203:1: 36 AF_INET6 = 24 // socket.h:230:1: 37 AF_IPX = 23 // socket.h:229:1: 38 AF_ISDN = 26 // socket.h:234:1: 39 AF_ISO = 7 // socket.h:208:1: 40 AF_LAT = 14 // socket.h:216:1: 41 AF_LINK = 18 // socket.h:220:1: 42 AF_LOCAL = 1 // socket.h:201:1: 43 AF_MAX = 37 // socket.h:249:1: 44 AF_MPLS = 33 // socket.h:245:1: 45 AF_NATM = 27 // socket.h:236:1: 46 AF_NS = 6 // socket.h:207:1: 47 AF_OROUTE = 17 // socket.h:219:1: 48 AF_OSI = 7 // socket.h:209:1: 49 AF_PUP = 4 // socket.h:205:1: 50 AF_ROUTE = 34 // socket.h:246:1: 51 AF_SNA = 11 // socket.h:213:1: 52 AF_UNIX = 1 // socket.h:202:1: 53 AF_UNSPEC = 0 // socket.h:200:1: 54 BIG_ENDIAN = 4321 // endian.h:101:1: 55 BYTE_ORDER = 1234 // endian.h:103:1: 56 CTL_IPPROTO_IPSEC = 258 // in.h:118:1: 57 FD_SETSIZE = 256 // fd_set.h:59:1: 58 ICMP6_FILTER = 18 // in6.h:393:1: 59 INET6_ADDRSTRLEN = 46 // in6.h:138:1: 60 INET6_IS_ADDR_LINKLOCAL = 1 // in6.h:678:1: 61 INET6_IS_ADDR_MC_LINKLOCAL = 2 // in6.h:679:1: 62 INET6_IS_ADDR_SITELOCAL = 4 // in6.h:680:1: 63 INET_ADDRSTRLEN = 16 // in.h:249:1: 64 INT16_MAX = 32767 // common_int_limits.h:53:1: 65 INT16_MIN = -32768 // common_int_limits.h:47:1: 66 INT32_MAX = 2147483647 // common_int_limits.h:54:1: 67 INT32_MIN = -2147483648 // common_int_limits.h:48:1: 68 INT64_MAX = 9223372036854775807 // common_int_limits.h:55:1: 69 INT64_MIN = -9223372036854775808 // common_int_limits.h:49:1: 70 INT8_MAX = 127 // common_int_limits.h:52:1: 71 INT8_MIN = -128 // common_int_limits.h:46:1: 72 INTMAX_MAX = 9223372036854775807 // common_int_limits.h:111:1: 73 INTMAX_MIN = -9223372036854775808 // common_int_limits.h:110:1: 74 INTPTR_MAX = 2147483647 // common_int_limits.h:105:1: 75 INTPTR_MIN = -2147483648 // common_int_limits.h:104:1: 76 INT_FAST16_MAX = 2147483647 // common_int_limits.h:93:1: 77 INT_FAST16_MIN = -2147483648 // common_int_limits.h:87:1: 78 INT_FAST32_MAX = 2147483647 // common_int_limits.h:94:1: 79 INT_FAST32_MIN = -2147483648 // common_int_limits.h:88:1: 80 INT_FAST64_MAX = 9223372036854775807 // common_int_limits.h:95:1: 81 INT_FAST64_MIN = -9223372036854775808 // common_int_limits.h:89:1: 82 INT_FAST8_MAX = 2147483647 // common_int_limits.h:92:1: 83 INT_FAST8_MIN = -2147483648 // common_int_limits.h:86:1: 84 INT_LEAST16_MAX = 32767 // common_int_limits.h:73:1: 85 INT_LEAST16_MIN = -32768 // common_int_limits.h:67:1: 86 INT_LEAST32_MAX = 2147483647 // common_int_limits.h:74:1: 87 INT_LEAST32_MIN = -2147483648 // common_int_limits.h:68:1: 88 INT_LEAST64_MAX = 9223372036854775807 // common_int_limits.h:75:1: 89 INT_LEAST64_MIN = -9223372036854775808 // common_int_limits.h:69:1: 90 INT_LEAST8_MAX = 127 // common_int_limits.h:72:1: 91 INT_LEAST8_MIN = -128 // common_int_limits.h:66:1: 92 IN_CLASSA_MAX = 128 // in.h:182:1: 93 IN_CLASSA_NSHIFT = 24 // in.h:180:1: 94 IN_CLASSB_MAX = 65536 // in.h:189:1: 95 IN_CLASSB_NSHIFT = 16 // in.h:187:1: 96 IN_CLASSC_NSHIFT = 8 // in.h:194:1: 97 IN_CLASSD_NSHIFT = 28 // in.h:201:1: 98 IN_LOOPBACKNET = 127 // in.h:236:1: 99 IPCTL_ALLOWSRCRT = 7 // in.h:348:1: 100 IPCTL_ANONPORTMAX = 11 // in.h:352:1: 101 IPCTL_ANONPORTMIN = 10 // in.h:351:1: 102 IPCTL_CHECKINTERFACE = 20 // in.h:361:1: 103 IPCTL_DAD_COUNT = 25 // in.h:366:1: 104 IPCTL_DEFTTL = 3 // in.h:344:1: 105 IPCTL_DIRECTEDBCAST = 6 // in.h:347:1: 106 IPCTL_FORWARDING = 1 // in.h:342:1: 107 IPCTL_FORWSRCRT = 5 // in.h:346:1: 108 IPCTL_GIF_TTL = 15 // in.h:356:1: 109 IPCTL_GRE_TTL = 19 // in.h:360:1: 110 IPCTL_HOSTZEROBROADCAST = 14 // in.h:355:1: 111 IPCTL_IFQ = 21 // in.h:362:1: 112 IPCTL_LOOPBACKCKSUM = 23 // in.h:364:1: 113 IPCTL_LOWPORTMAX = 17 // in.h:358:1: 114 IPCTL_LOWPORTMIN = 16 // in.h:357:1: 115 IPCTL_MAXFLOWS = 13 // in.h:354:1: 116 IPCTL_MAXFRAGPACKETS = 18 // in.h:359:1: 117 IPCTL_MTUDISC = 9 // in.h:350:1: 118 IPCTL_MTUDISCTIMEOUT = 12 // in.h:353:1: 119 IPCTL_RANDOMID = 22 // in.h:363:1: 120 IPCTL_SENDREDIRECTS = 2 // in.h:343:1: 121 IPCTL_STATS = 24 // in.h:365:1: 122 IPCTL_SUBNETSARELOCAL = 8 // in.h:349:1: 123 IPPORT_ANONMAX = 65535 // in.h:151:1: 124 IPPORT_ANONMIN = 49152 // in.h:150:1: 125 IPPORT_RESERVED = 1024 // in.h:149:1: 126 IPPORT_RESERVEDMAX = 1023 // in.h:153:1: 127 IPPORT_RESERVEDMIN = 600 // in.h:152:1: 128 IPPROTO_AH = 51 // in.h:95:1: 129 IPPROTO_CARP = 112 // in.h:107:1: 130 IPPROTO_DCCP = 33 // in.h:88:1: 131 IPPROTO_DONE = 257 // in.h:115:1: 132 IPPROTO_DSTOPTS = 60 // in.h:100:1: 133 IPPROTO_EGP = 8 // in.h:83:1: 134 IPPROTO_ENCAP = 98 // in.h:103:1: 135 IPPROTO_EON = 80 // in.h:101:1: 136 IPPROTO_ESP = 50 // in.h:94:1: 137 IPPROTO_ETHERIP = 97 // in.h:102:1: 138 IPPROTO_FRAGMENT = 44 // in.h:91:1: 139 IPPROTO_GGP = 3 // in.h:79:1: 140 IPPROTO_GRE = 47 // in.h:93:1: 141 IPPROTO_HOPOPTS = 0 // in.h:76:1: 142 IPPROTO_ICMP = 1 // in.h:77:1: 143 IPPROTO_ICMPV6 = 58 // in.h:98:1: 144 IPPROTO_IDP = 22 // in.h:86:1: 145 IPPROTO_IGMP = 2 // in.h:78:1: 146 IPPROTO_IP = 0 // in.h:75:1: 147 IPPROTO_IPCOMP = 108 // in.h:105:1: 148 IPPROTO_IPIP = 4 // in.h:81:1: 149 IPPROTO_IPV4 = 4 // in.h:80:1: 150 IPPROTO_IPV6 = 41 // in.h:89:1: 151 IPPROTO_IPV6_ICMP = 58 // in.h:97:1: 152 IPPROTO_L2TP = 115 // in.h:108:1: 153 IPPROTO_MAX = 256 // in.h:112:1: 154 IPPROTO_MOBILE = 55 // in.h:96:1: 155 IPPROTO_NONE = 59 // in.h:99:1: 156 IPPROTO_PFSYNC = 240 // in.h:110:1: 157 IPPROTO_PIM = 103 // in.h:104:1: 158 IPPROTO_PUP = 12 // in.h:84:1: 159 IPPROTO_RAW = 255 // in.h:111:1: 160 IPPROTO_ROUTING = 43 // in.h:90:1: 161 IPPROTO_RSVP = 46 // in.h:92:1: 162 IPPROTO_SCTP = 132 // in.h:109:1: 163 IPPROTO_TCP = 6 // in.h:82:1: 164 IPPROTO_TP = 29 // in.h:87:1: 165 IPPROTO_UDP = 17 // in.h:85:1: 166 IPPROTO_VRRP = 112 // in.h:106:1: 167 IPV6CTL_ACCEPT_RTADV = 12 // in6.h:509:1: 168 IPV6CTL_ADDRCTLPOLICY = 38 // in6.h:530:1: 169 IPV6CTL_ANONPORTMAX = 29 // in6.h:524:1: 170 IPV6CTL_ANONPORTMIN = 28 // in6.h:523:1: 171 IPV6CTL_AUTO_FLOWLABEL = 17 // in6.h:514:1: 172 IPV6CTL_AUTO_LINKLOCAL = 35 // in6.h:528:1: 173 IPV6CTL_DAD_COUNT = 16 // in6.h:513:1: 174 IPV6CTL_DEFHLIM = 3 // in6.h:500:1: 175 IPV6CTL_DEFMCASTHLIM = 18 // in6.h:515:1: 176 IPV6CTL_FORWARDING = 1 // in6.h:498:1: 177 IPV6CTL_FORWSRCRT = 5 // in6.h:502:1: 178 IPV6CTL_GIF_HLIM = 19 // in6.h:516:1: 179 IPV6CTL_HDRNESTLIMIT = 15 // in6.h:512:1: 180 IPV6CTL_IFQ = 42 // in6.h:534:1: 181 IPV6CTL_KAME_VERSION = 20 // in6.h:517:1: 182 IPV6CTL_KEEPFAITH = 13 // in6.h:510:1: 183 IPV6CTL_LOG_INTERVAL = 14 // in6.h:511:1: 184 IPV6CTL_LOWPORTMAX = 31 // in6.h:526:1: 185 IPV6CTL_LOWPORTMIN = 30 // in6.h:525:1: 186 IPV6CTL_MAXFRAGPACKETS = 9 // in6.h:506:1: 187 IPV6CTL_MAXFRAGS = 41 // in6.h:533:1: 188 IPV6CTL_MRTPROTO = 8 // in6.h:505:1: 189 IPV6CTL_MRTSTATS = 7 // in6.h:504:1: 190 IPV6CTL_RR_PRUNE = 22 // in6.h:519:1: 191 IPV6CTL_RTADV_MAXROUTES = 43 // in6.h:535:1: 192 IPV6CTL_RTADV_NUMROUTES = 44 // in6.h:537:1: 193 IPV6CTL_SENDREDIRECTS = 2 // in6.h:499:1: 194 IPV6CTL_SOURCECHECK = 10 // in6.h:507:1: 195 IPV6CTL_SOURCECHECK_LOGINT = 11 // in6.h:508:1: 196 IPV6CTL_STATS = 6 // in6.h:503:1: 197 IPV6CTL_USE_DEFAULTZONE = 39 // in6.h:531:1: 198 IPV6CTL_USE_DEPRECATED = 21 // in6.h:518:1: 199 IPV6CTL_V6ONLY = 24 // in6.h:521:1: 200 IPV6PORT_ANONMAX = 65535 // in6.h:115:1: 201 IPV6PORT_ANONMIN = 49152 // in6.h:114:1: 202 IPV6PORT_RESERVED = 1024 // in6.h:113:1: 203 IPV6PORT_RESERVEDMAX = 1023 // in6.h:117:1: 204 IPV6PORT_RESERVEDMIN = 600 // in6.h:116:1: 205 IPV6_CHECKSUM = 26 // in6.h:405:1: 206 IPV6_DEFAULT_MULTICAST_HOPS = 1 // in6.h:453:1: 207 IPV6_DEFAULT_MULTICAST_LOOP = 1 // in6.h:454:1: 208 IPV6_DONTFRAG = 62 // in6.h:441:1: 209 IPV6_DSTOPTS = 50 // in6.h:432:1: 210 IPV6_FAITH = 29 // in6.h:409:1: 211 IPV6_HOPLIMIT = 47 // in6.h:429:1: 212 IPV6_HOPOPTS = 49 // in6.h:431:1: 213 IPV6_IPSEC_POLICY = 28 // in6.h:408:1: 214 IPV6_JOIN_GROUP = 12 // in6.h:388:1: 215 IPV6_LEAVE_GROUP = 13 // in6.h:389:1: 216 IPV6_MULTICAST_HOPS = 10 // in6.h:385:1: 217 IPV6_MULTICAST_IF = 9 // in6.h:384:1: 218 IPV6_MULTICAST_LOOP = 11 // in6.h:386:1: 219 IPV6_NEXTHOP = 48 // in6.h:430:1: 220 IPV6_PATHMTU = 44 // in6.h:424:1: 221 IPV6_PKTINFO = 46 // in6.h:428:1: 222 IPV6_PORTALGO = 17 // in6.h:392:1: 223 IPV6_PORTRANGE = 14 // in6.h:390:1: 224 IPV6_PORTRANGE_DEFAULT = 0 // in6.h:484:1: 225 IPV6_PORTRANGE_HIGH = 1 // in6.h:485:1: 226 IPV6_PORTRANGE_LOW = 2 // in6.h:486:1: 227 IPV6_PREFER_TEMPADDR = 63 // in6.h:442:1: 228 IPV6_RECVDSTOPTS = 40 // in6.h:418:1: 229 IPV6_RECVHOPLIMIT = 37 // in6.h:415:1: 230 IPV6_RECVHOPOPTS = 39 // in6.h:417:1: 231 IPV6_RECVPATHMTU = 43 // in6.h:423:1: 232 IPV6_RECVPKTINFO = 36 // in6.h:414:1: 233 IPV6_RECVRTHDR = 38 // in6.h:416:1: 234 IPV6_RECVTCLASS = 57 // in6.h:435:1: 235 IPV6_RTHDR = 51 // in6.h:433:1: 236 IPV6_RTHDRDSTOPTS = 35 // in6.h:412:1: 237 IPV6_RTHDR_LOOSE = 0 // in6.h:446:1: 238 IPV6_RTHDR_STRICT = 1 // in6.h:447:1: 239 IPV6_RTHDR_TYPE_0 = 0 // in6.h:448:1: 240 IPV6_SOCKOPT_RESERVED1 = 3 // in6.h:382:1: 241 IPV6_TCLASS = 61 // in6.h:440:1: 242 IPV6_UNICAST_HOPS = 4 // in6.h:383:1: 243 IPV6_USE_MIN_MTU = 42 // in6.h:422:1: 244 IPV6_V6ONLY = 27 // in6.h:406:1: 245 IP_ADD_MEMBERSHIP = 12 // in.h:283:1: 246 IP_DEFAULT_MULTICAST_LOOP = 1 // in.h:312:1: 247 IP_DEFAULT_MULTICAST_TTL = 1 // in.h:311:1: 248 IP_DROP_MEMBERSHIP = 13 // in.h:284:1: 249 IP_ERRORMTU = 21 // in.h:288:1: 250 IP_HDRINCL = 2 // in.h:272:1: 251 IP_IPSEC_POLICY = 22 // in.h:289:1: 252 IP_MAX_MEMBERSHIPS = 20 // in.h:313:1: 253 IP_MINTTL = 24 // in.h:291:1: 254 IP_MULTICAST_IF = 9 // in.h:279:1: 255 IP_MULTICAST_LOOP = 11 // in.h:281:1: 256 IP_MULTICAST_TTL = 10 // in.h:280:1: 257 IP_OPTIONS = 1 // in.h:271:1: 258 IP_PKTINFO = 25 // in.h:292:1: 259 IP_PORTALGO = 18 // in.h:285:1: 260 IP_PORTRANGE = 19 // in.h:286:1: 261 IP_PORTRANGE_DEFAULT = 0 // in.h:327:1: 262 IP_PORTRANGE_HIGH = 1 // in.h:328:1: 263 IP_PORTRANGE_LOW = 2 // in.h:329:1: 264 IP_RECVDSTADDR = 7 // in.h:277:1: 265 IP_RECVIF = 20 // in.h:287:1: 266 IP_RECVOPTS = 5 // in.h:275:1: 267 IP_RECVPKTINFO = 26 // in.h:293:1: 268 IP_RECVRETOPTS = 6 // in.h:276:1: 269 IP_RECVTTL = 23 // in.h:290:1: 270 IP_RETOPTS = 8 // in.h:278:1: 271 IP_SENDSRCADDR = 7 // in.h:295:1: 272 IP_TOS = 3 // in.h:273:1: 273 IP_TTL = 4 // in.h:274:1: 274 LITTLE_ENDIAN = 1234 // endian.h:100:1: 275 MSG_BCAST = 0x0100 // socket.h:497:1: 276 MSG_CMSG_CLOEXEC = 0x0800 // socket.h:501:1: 277 MSG_CONTROLMBUF = 0x2000000 // socket.h:515:1: 278 MSG_CTRUNC = 0x0020 // socket.h:494:1: 279 MSG_DONTROUTE = 0x0004 // socket.h:491:1: 280 MSG_DONTWAIT = 0x0080 // socket.h:496:1: 281 MSG_EOR = 0x0008 // socket.h:492:1: 282 MSG_IOVUSRSPACE = 0x4000000 // socket.h:516:1: 283 MSG_LENUSRSPACE = 0x8000000 // socket.h:517:1: 284 MSG_MCAST = 0x0200 // socket.h:498:1: 285 MSG_NAMEMBUF = 0x1000000 // socket.h:514:1: 286 MSG_NBIO = 0x1000 // socket.h:502:1: 287 MSG_NOSIGNAL = 0x0400 // socket.h:499:1: 288 MSG_NOTIFICATION = 0x4000 // socket.h:504:1: 289 MSG_OOB = 0x0001 // socket.h:489:1: 290 MSG_PEEK = 0x0002 // socket.h:490:1: 291 MSG_TRUNC = 0x0010 // socket.h:493:1: 292 MSG_USERFLAGS = 0x0ffffff // socket.h:513:1: 293 MSG_WAITALL = 0x0040 // socket.h:495:1: 294 MSG_WAITFORONE = 0x2000 // socket.h:503:1: 295 NBBY = 8 // types.h:316:1: 296 NET_RT_DUMP = 1 // socket.h:457:1: 297 NET_RT_FLAGS = 2 // socket.h:458:1: 298 NET_RT_IFLIST = 6 // socket.h:462:1: 299 NET_RT_OIFLIST = 5 // socket.h:461:1: 300 NET_RT_OOIFLIST = 4 // socket.h:460:1: 301 NET_RT_OOOIFLIST = 3 // socket.h:459:1: 302 NFDBITS = 32 // fd_set.h:93:1: 303 NODEVMAJOR = -1 // types.h:258:1: 304 PCB_ALL = 0 // socket.h:444:1: 305 PCB_SLOP = 20 // socket.h:443:1: 306 PDP_ENDIAN = 3412 // endian.h:102:1: 307 PF_APPLETALK = 16 // socket.h:334:1: 308 PF_ARP = 28 // socket.h:351:1: 309 PF_BLUETOOTH = 31 // socket.h:355:1: 310 PF_CAN = 35 // socket.h:358:1: 311 PF_CCITT = 10 // socket.h:328:1: 312 PF_CHAOS = 5 // socket.h:322:1: 313 PF_CNT = 21 // socket.h:341:1: 314 PF_COIP = 20 // socket.h:340:1: 315 PF_DATAKIT = 9 // socket.h:327:1: 316 PF_DECnet = 12 // socket.h:330:1: 317 PF_DLI = 13 // socket.h:331:1: 318 PF_E164 = 26 // socket.h:349:1: 319 PF_ECMA = 8 // socket.h:326:1: 320 PF_ETHER = 36 // socket.h:359:1: 321 PF_HYLINK = 15 // socket.h:333:1: 322 PF_IMPLINK = 3 // socket.h:320:1: 323 PF_INET = 2 // socket.h:319:1: 324 PF_INET6 = 24 // socket.h:342:1: 325 PF_IPX = 23 // socket.h:343:1: 326 PF_ISDN = 26 // socket.h:348:1: 327 PF_ISO = 7 // socket.h:324:1: 328 PF_KEY = 29 // socket.h:353:1: 329 PF_LAT = 14 // socket.h:332:1: 330 PF_LINK = 18 // socket.h:336:1: 331 PF_LOCAL = 1 // socket.h:317:1: 332 PF_MAX = 37 // socket.h:361:1: 333 PF_MPLS = 33 // socket.h:356:1: 334 PF_NATM = 27 // socket.h:350:1: 335 PF_NS = 6 // socket.h:323:1: 336 PF_OROUTE = 17 // socket.h:335:1: 337 PF_OSI = 7 // socket.h:325:1: 338 PF_PIP = 25 // socket.h:346:1: 339 PF_PUP = 4 // socket.h:321:1: 340 PF_ROUTE = 34 // socket.h:357:1: 341 PF_RTIP = 22 // socket.h:345:1: 342 PF_SNA = 11 // socket.h:329:1: 343 PF_UNIX = 1 // socket.h:318:1: 344 PF_UNSPEC = 0 // socket.h:316:1: 345 PF_XTP = 19 // socket.h:338:1: 346 PTRDIFF_MAX = 2147483647 // common_int_limits.h:121:1: 347 PTRDIFF_MIN = -2147483648 // common_int_limits.h:120:1: 348 SCM_CREDS = 0x10 // socket.h:581:1: 349 SCM_RIGHTS = 0x01 // socket.h:576:1: 350 SCM_TIMESTAMP = 0x08 // socket.h:580:1: 351 SHUT_RD = 0 // socket.h:587:1: 352 SHUT_RDWR = 2 // socket.h:589:1: 353 SHUT_WR = 1 // socket.h:588:1: 354 SIG_ATOMIC_MAX = 2147483647 // common_int_limits.h:125:1: 355 SIG_ATOMIC_MIN = -2147483648 // common_int_limits.h:124:1: 356 SIN6_LEN = 0 // in6.h:144:1: 357 SIZE_MAX = 4294967295 // common_int_limits.h:128:1: 358 SOCK_CLOEXEC = 0x10000000 // socket.h:113:1: 359 SOCK_CONN_DGRAM = 6 // socket.h:110:1: 360 SOCK_DCCP = 6 // socket.h:111:1: 361 SOCK_DGRAM = 2 // socket.h:106:1: 362 SOCK_FLAGS_MASK = 0xf0000000 // socket.h:116:1: 363 SOCK_NONBLOCK = 0x20000000 // socket.h:114:1: 364 SOCK_NOSIGPIPE = 0x40000000 // socket.h:115:1: 365 SOCK_RAW = 3 // socket.h:107:1: 366 SOCK_RDM = 4 // socket.h:108:1: 367 SOCK_SEQPACKET = 5 // socket.h:109:1: 368 SOCK_STREAM = 1 // socket.h:105:1: 369 SOL_SOCKET = 0xffff // socket.h:195:1: 370 SOMAXCONN = 128 // socket.h:470:1: 371 SO_ACCEPTCONN = 0x0002 // socket.h:122:1: 372 SO_ACCEPTFILTER = 0x1000 // socket.h:133:1: 373 SO_BROADCAST = 0x0020 // socket.h:126:1: 374 SO_DEBUG = 0x0001 // socket.h:121:1: 375 SO_DEFOPTS = 27645 // socket.h:138:1: 376 SO_DONTROUTE = 0x0010 // socket.h:125:1: 377 SO_ERROR = 0x1007 // socket.h:169:1: 378 SO_KEEPALIVE = 0x0008 // socket.h:124:1: 379 SO_LINGER = 0x0080 // socket.h:128:1: 380 SO_NOHEADER = 0x100a // socket.h:173:1: 381 SO_NOSIGPIPE = 0x0800 // socket.h:132:1: 382 SO_OOBINLINE = 0x0100 // socket.h:129:1: 383 SO_OVERFLOWED = 0x1009 // socket.h:171:1: 384 SO_RCVBUF = 0x1002 // socket.h:164:1: 385 SO_RCVLOWAT = 0x1004 // socket.h:166:1: 386 SO_RCVTIMEO = 0x100c // socket.h:178:1: 387 SO_RERROR = 0x4000 // socket.h:135:1: 388 SO_REUSEADDR = 0x0004 // socket.h:123:1: 389 SO_REUSEPORT = 0x0200 // socket.h:130:1: 390 SO_SNDBUF = 0x1001 // socket.h:163:1: 391 SO_SNDLOWAT = 0x1003 // socket.h:165:1: 392 SO_SNDTIMEO = 0x100b // socket.h:177:1: 393 SO_TIMESTAMP = 0x2000 // socket.h:134:1: 394 SO_TYPE = 0x1008 // socket.h:170:1: 395 SO_USELOOPBACK = 0x0040 // socket.h:127:1: 396 UINT16_MAX = 65535 // common_int_limits.h:59:1: 397 UINT32_MAX = 4294967295 // common_int_limits.h:60:1: 398 UINT64_MAX = 18446744073709551615 // common_int_limits.h:61:1: 399 UINT8_MAX = 255 // common_int_limits.h:58:1: 400 UINTMAX_MAX = 18446744073709551615 // common_int_limits.h:112:1: 401 UINTPTR_MAX = 4294967295 // common_int_limits.h:106:1: 402 UINT_FAST16_MAX = 4294967295 // common_int_limits.h:99:1: 403 UINT_FAST32_MAX = 4294967295 // common_int_limits.h:100:1: 404 UINT_FAST64_MAX = 18446744073709551615 // common_int_limits.h:101:1: 405 UINT_FAST8_MAX = 4294967295 // common_int_limits.h:98:1: 406 UINT_LEAST16_MAX = 65535 // common_int_limits.h:79:1: 407 UINT_LEAST32_MAX = 4294967295 // common_int_limits.h:80:1: 408 UINT_LEAST64_MAX = 18446744073709551615 // common_int_limits.h:81:1: 409 UINT_LEAST8_MAX = 255 // common_int_limits.h:78:1: 410 UIO_MAXIOV = 1024 // uio.h:97:1: 411 WCHAR_MAX = 2147483647 // wchar_limits.h:50:1: 412 WCHAR_MIN = -2147483648 // wchar_limits.h:42:1: 413 WINT_MAX = 2147483647 // wchar_limits.h:68:1: 414 WINT_MIN = -2147483648 // wchar_limits.h:60:1: 415 X_ARM_ARCH_4T = 0 // cdefs.h:44:1: 416 X_ARM_ARCH_5 = 0 // cdefs.h:40:1: 417 X_ARM_ARCH_5T = 0 // cdefs.h:36:1: 418 X_ARM_ARCH_6 = 0 // cdefs.h:31:1: 419 X_ARM_ARCH_7 = 0 // cdefs.h:20:1: 420 X_ARM_ARCH_DWORD_OK = 0 // cdefs.h:51:1: 421 X_ARM_ARCH_T2 = 0 // cdefs.h:24:1: 422 X_ARM_BSWAP_H_ = 0 // bswap.h:4:1: 423 X_ARM_BYTE_SWAP_H_ = 0 // byte_swap.h:33:1: 424 X_ARM_CDEFS_H_ = 0 // cdefs.h:4:1: 425 X_ARM_INT_CONST_H_ = 0 // int_const.h:33:1: 426 X_ARM_INT_LIMITS_H_ = 0 // int_limits.h:33:1: 427 X_ARM_INT_MWGWTYPES_H_ = 0 // int_mwgwtypes.h:33:1: 428 X_ARM_INT_TYPES_H_ = 0 // int_types.h:33:1: 429 X_ARM_TYPES_H_ = 0 // types.h:35:1: 430 X_ARM_WCHAR_LIMITS_H_ = 0 // wchar_limits.h:33:1: 431 X_BIG_ENDIAN = 4321 // endian.h:44:1: 432 X_BSD_INT16_T_ = 0 // types.h:65:1: 433 X_BSD_INT32_T_ = 0 // types.h:75:1: 434 X_BSD_INT64_T_ = 0 // types.h:85:1: 435 X_BSD_INT8_T_ = 0 // types.h:55:1: 436 X_BSD_INTPTR_T_ = 0 // stdint.h:80:1: 437 X_BSD_UINT16_T_ = 0 // types.h:70:1: 438 X_BSD_UINT32_T_ = 0 // in.h:52:1: 439 X_BSD_UINT64_T_ = 0 // types.h:90:1: 440 X_BSD_UINT8_T_ = 0 // in.h:47:1: 441 X_BSD_UINTPTR_T_ = 0 // stdint.h:85:1: 442 X_BYTE_ORDER = 1234 // endian_machdep.h:7:1: 443 X_FILE_OFFSET_BITS = 64 // <builtin>:25:1: 444 X_LIB_PTHREAD_TYPES_H = 0 // pthread_types.h:33:1: 445 X_LITTLE_ENDIAN = 1234 // endian.h:43:1: 446 X_NETBSD_SOURCE = 1 // featuretest.h:70:1: 447 X_NETINET6_IN6_H_ = 0 // in6.h:65:1: 448 X_NETINET_IN_H_ = 0 // in.h:40:1: 449 X_PDP_ENDIAN = 3412 // endian.h:45:1: 450 X_PT_BARRIERATTR_DEAD = 0xDEAD0808 // pthread_types.h:278:1: 451 X_PT_BARRIERATTR_MAGIC = 0x88880808 // pthread_types.h:277:1: 452 X_PT_BARRIER_DEAD = 0xDEAD0008 // pthread_types.h:270:1: 453 X_PT_BARRIER_MAGIC = 0x88880008 // pthread_types.h:269:1: 454 X_PT_CONDATTR_DEAD = 0xDEAD0006 // pthread_types.h:197:1: 455 X_PT_CONDATTR_MAGIC = 0x66660006 // pthread_types.h:196:1: 456 X_PT_COND_DEAD = 0xDEAD0005 // pthread_types.h:182:1: 457 X_PT_COND_MAGIC = 0x55550005 // pthread_types.h:181:1: 458 X_PT_MUTEXATTR_DEAD = 0xDEAD0004 // pthread_types.h:167:1: 459 X_PT_MUTEXATTR_MAGIC = 0x44440004 // pthread_types.h:166:1: 460 X_PT_MUTEX_DEAD = 0xDEAD0003 // pthread_types.h:139:1: 461 X_PT_MUTEX_MAGIC = 0x33330003 // pthread_types.h:138:1: 462 X_PT_RWLOCKATTR_DEAD = 0xDEAD0909 // pthread_types.h:253:1: 463 X_PT_RWLOCKATTR_MAGIC = 0x99990909 // pthread_types.h:252:1: 464 X_PT_RWLOCK_DEAD = 0xDEAD0009 // pthread_types.h:236:1: 465 X_PT_RWLOCK_MAGIC = 0x99990009 // pthread_types.h:235:1: 466 X_PT_SPINLOCK_DEAD = 0xDEAD0007 // pthread_types.h:213:1: 467 X_PT_SPINLOCK_MAGIC = 0x77770007 // pthread_types.h:212:1: 468 X_PT_SPINLOCK_PSHARED = 0x00000001 // pthread_types.h:214:1: 469 X_QUAD_HIGHWORD = 1 // endian.h:84:1: 470 X_QUAD_LOWWORD = 0 // endian.h:85:1: 471 X_SS_MAXSIZE = 128 // socket.h:294:1: 472 X_SYS_ANSI_H_ = 0 // ansi.h:33:1: 473 X_SYS_BSWAP_H_ = 0 // bswap.h:6:1: 474 X_SYS_CDEFS_ELF_H_ = 0 // cdefs_elf.h:31:1: 475 X_SYS_CDEFS_H_ = 0 // cdefs.h:37:1: 476 X_SYS_COMMON_ANSI_H_ = 0 // common_ansi.h:33:1: 477 X_SYS_COMMON_INT_LIMITS_H_ = 0 // common_int_limits.h:33:1: 478 X_SYS_COMMON_INT_MWGWTYPES_H_ = 0 // common_int_mwgwtypes.h:33:1: 479 X_SYS_COMMON_INT_TYPES_H_ = 0 // common_int_types.h:33:1: 480 X_SYS_ENDIAN_H_ = 0 // endian.h:35:1: 481 X_SYS_FD_SET_H_ = 0 // fd_set.h:35:1: 482 X_SYS_SIGTYPES_H_ = 0 // sigtypes.h:40:1: 483 X_SYS_SOCKET_H_ = 0 // socket.h:64:1: 484 X_SYS_STDINT_H_ = 0 // stdint.h:33:1: 485 X_SYS_TYPES_H_ = 0 // types.h:40:1: 486 X_SYS_UIO_H_ = 0 // uio.h:35:1: 487 Pseudo_AF_HDRCMPLT = 30 // socket.h:240:1: 488 Pseudo_AF_KEY = 29 // socket.h:239:1: 489 Pseudo_AF_PIP = 25 // socket.h:232:1: 490 Pseudo_AF_RTIP = 22 // socket.h:227:1: 491 Pseudo_AF_XTP = 19 // socket.h:222:1: 492 ) 493 494 // file offset 495 496 const ( /* uio.h:69:1: */ 497 UIO_READ = 0 498 UIO_WRITE = 1 499 ) 500 501 // Segment flag values. 502 const ( /* uio.h:72:1: */ 503 UIO_USERSPACE = 0 // from user data space 504 UIO_SYSSPACE = 1 505 ) 506 507 type Ptrdiff_t = int32 /* <builtin>:3:26 */ 508 509 type Size_t = uint32 /* <builtin>:9:23 */ 510 511 type Wchar_t = int32 /* <builtin>:15:24 */ 512 513 type X__builtin_va_list = uintptr /* <builtin>:46:14 */ 514 type X__float128 = float64 /* <builtin>:47:21 */ 515 516 // $NetBSD: in.h,v 1.108 2018/11/09 11:46:28 maya Exp $ 517 518 // Copyright (c) 1982, 1986, 1990, 1993 519 // The Regents of the University of California. All rights reserved. 520 // 521 // Redistribution and use in source and binary forms, with or without 522 // modification, are permitted provided that the following conditions 523 // are met: 524 // 1. Redistributions of source code must retain the above copyright 525 // notice, this list of conditions and the following disclaimer. 526 // 2. Redistributions in binary form must reproduce the above copyright 527 // notice, this list of conditions and the following disclaimer in the 528 // documentation and/or other materials provided with the distribution. 529 // 3. Neither the name of the University nor the names of its contributors 530 // may be used to endorse or promote products derived from this software 531 // without specific prior written permission. 532 // 533 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 534 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 535 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 536 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 537 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 538 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 539 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 540 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 541 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 542 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 543 // SUCH DAMAGE. 544 // 545 // @(#)in.h 8.3 (Berkeley) 1/3/94 546 547 // Constants and structures defined by the internet system, 548 // Per RFC 790, September 1981, and numerous additions. 549 550 // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $ 551 552 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998. 553 // Public domain. 554 // 555 // NOTE: Do not protect this header against multiple inclusion. Doing 556 // so can have subtle side-effects due to header file inclusion order 557 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead, 558 // protect each CPP macro that we want to supply. 559 560 // Feature-test macros are defined by several standards, and allow an 561 // application to specify what symbols they want the system headers to 562 // expose, and hence what standard they want them to conform to. 563 // There are two classes of feature-test macros. The first class 564 // specify complete standards, and if one of these is defined, header 565 // files will try to conform to the relevant standard. They are: 566 // 567 // ANSI macros: 568 // _ANSI_SOURCE ANSI C89 569 // 570 // POSIX macros: 571 // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?) 572 // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990 573 // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992 574 // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993 575 // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996 576 // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001 577 // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008 578 // 579 // X/Open macros: 580 // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2 581 // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions 582 // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5 583 // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2 584 // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option 585 // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option 586 // 587 // NetBSD macros: 588 // _NETBSD_SOURCE == 1 Make all NetBSD features available. 589 // 590 // If more than one of these "major" feature-test macros is defined, 591 // then the set of facilities provided (and namespace used) is the 592 // union of that specified by the relevant standards, and in case of 593 // conflict, the earlier standard in the above list has precedence (so 594 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version 595 // of rename() that's used is the POSIX one). If none of the "major" 596 // feature-test macros is defined, _NETBSD_SOURCE is assumed. 597 // 598 // There are also "minor" feature-test macros, which enable extra 599 // functionality in addition to some base standard. They should be 600 // defined along with one of the "major" macros. The "minor" macros 601 // are: 602 // 603 // _REENTRANT 604 // _ISOC99_SOURCE 605 // _ISOC11_SOURCE 606 // _LARGEFILE_SOURCE Large File Support 607 // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html> 608 609 // $NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $ 610 611 // - 612 // Copyright (c) 2014 The NetBSD Foundation, Inc. 613 // All rights reserved. 614 // 615 // This code is derived from software contributed to The NetBSD Foundation 616 // by Matt Thomas of 3am Software Foundry. 617 // 618 // Redistribution and use in source and binary forms, with or without 619 // modification, are permitted provided that the following conditions 620 // are met: 621 // 1. Redistributions of source code must retain the above copyright 622 // notice, this list of conditions and the following disclaimer. 623 // 2. Redistributions in binary form must reproduce the above copyright 624 // notice, this list of conditions and the following disclaimer in the 625 // documentation and/or other materials provided with the distribution. 626 // 627 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 628 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 629 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 630 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 631 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 632 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 633 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 634 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 635 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 636 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 637 // POSSIBILITY OF SUCH DAMAGE. 638 639 // $NetBSD: common_int_types.h,v 1.1 2014/07/25 21:43:13 joerg Exp $ 640 641 // - 642 // Copyright (c) 2014 The NetBSD Foundation, Inc. 643 // All rights reserved. 644 // 645 // This code is derived from software contributed to The NetBSD Foundation 646 // by Joerg Sonnenberger. 647 // 648 // Redistribution and use in source and binary forms, with or without 649 // modification, are permitted provided that the following conditions 650 // are met: 651 // 1. Redistributions of source code must retain the above copyright 652 // notice, this list of conditions and the following disclaimer. 653 // 2. Redistributions in binary form must reproduce the above copyright 654 // notice, this list of conditions and the following disclaimer in the 655 // documentation and/or other materials provided with the distribution. 656 // 657 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 658 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 659 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 660 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 661 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 662 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 663 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 664 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 665 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 666 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 667 // POSSIBILITY OF SUCH DAMAGE. 668 669 // 7.18.1 Integer types 670 671 // 7.18.1.1 Exact-width integer types 672 673 type X__int8_t = int8 /* common_int_types.h:45:27 */ 674 type X__uint8_t = uint8 /* common_int_types.h:46:27 */ 675 type X__int16_t = int16 /* common_int_types.h:47:27 */ 676 type X__uint16_t = uint16 /* common_int_types.h:48:27 */ 677 type X__int32_t = int32 /* common_int_types.h:49:27 */ 678 type X__uint32_t = uint32 /* common_int_types.h:50:27 */ 679 type X__int64_t = int64 /* common_int_types.h:51:27 */ 680 type X__uint64_t = uint64 /* common_int_types.h:52:27 */ 681 682 // 7.18.1.4 Integer types capable of holding object pointers 683 684 type X__intptr_t = int32 /* common_int_types.h:58:27 */ 685 type X__uintptr_t = uint32 /* common_int_types.h:59:26 */ 686 687 type Uint8_t = X__uint8_t /* in.h:46:19 */ 688 689 type Uint32_t = X__uint32_t /* in.h:51:20 */ 690 691 // return true if value 'a' fits in type 't' 692 693 // $NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $ 694 695 // - 696 // Copyright (c) 2014 The NetBSD Foundation, Inc. 697 // All rights reserved. 698 // 699 // This code is derived from software contributed to The NetBSD Foundation 700 // by Matt Thomas of 3am Software Foundry. 701 // 702 // Redistribution and use in source and binary forms, with or without 703 // modification, are permitted provided that the following conditions 704 // are met: 705 // 1. Redistributions of source code must retain the above copyright 706 // notice, this list of conditions and the following disclaimer. 707 // 2. Redistributions in binary form must reproduce the above copyright 708 // notice, this list of conditions and the following disclaimer in the 709 // documentation and/or other materials provided with the distribution. 710 // 711 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 712 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 713 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 714 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 715 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 716 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 717 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 718 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 719 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 720 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 721 // POSSIBILITY OF SUCH DAMAGE. 722 723 // Types which are fundamental to the implementation and may appear in 724 // more than one standard header are defined here. Standard headers 725 // then use: 726 // #ifdef _BSD_SIZE_T_ 727 // typedef _BSD_SIZE_T_ size_t; 728 // #undef _BSD_SIZE_T_ 729 // #endif 730 731 type X__caddr_t = uintptr /* ansi.h:37:14 */ // core address 732 type X__gid_t = X__uint32_t /* ansi.h:38:20 */ // group id 733 type X__in_addr_t = X__uint32_t /* ansi.h:39:20 */ // IP(v4) address 734 type X__in_port_t = X__uint16_t /* ansi.h:40:20 */ // "Internet" port number 735 type X__mode_t = X__uint32_t /* ansi.h:41:20 */ // file permissions 736 type X__off_t = X__int64_t /* ansi.h:42:19 */ // file offset 737 type X__pid_t = X__int32_t /* ansi.h:43:19 */ // process id 738 type X__sa_family_t = X__uint8_t /* ansi.h:44:19 */ // socket address family 739 type X__socklen_t = uint32 /* ansi.h:45:22 */ // socket-related datum length 740 type X__uid_t = X__uint32_t /* ansi.h:46:20 */ // user id 741 type X__fsblkcnt_t = X__uint64_t /* ansi.h:47:20 */ // fs block count (statvfs) 742 type X__fsfilcnt_t = X__uint64_t /* ansi.h:48:20 */ 743 type X__wctrans_t = uintptr /* ansi.h:51:32 */ 744 type X__wctype_t = uintptr /* ansi.h:54:31 */ 745 746 // mbstate_t is an opaque object to keep conversion state, during multibyte 747 // stream conversions. The content must not be referenced by user programs. 748 type X__mbstate_t = struct { 749 F__mbstateL X__int64_t 750 F__ccgo_pad1 [120]byte 751 } /* ansi.h:63:3 */ 752 753 type X__va_list = X__builtin_va_list /* ansi.h:72:27 */ 754 755 type In_addr_t = X__in_addr_t /* in.h:58:21 */ 756 757 type In_port_t = X__in_port_t /* in.h:63:21 */ 758 759 type Sa_family_t = X__sa_family_t /* in.h:68:23 */ 760 761 // Protocols 762 763 // last return value of *_input(), meaning "all job for this pkt is done". 764 765 // sysctl placeholder for (FAST_)IPSEC 766 767 // Local port number conventions: 768 // 769 // Ports < IPPORT_RESERVED are reserved for privileged processes (e.g. root), 770 // unless a kernel is compiled with IPNOPRIVPORTS defined. 771 // 772 // When a user does a bind(2) or connect(2) with a port number of zero, 773 // a non-conflicting local port address is chosen. 774 // 775 // The default range is IPPORT_ANONMIN to IPPORT_ANONMAX, although 776 // that is settable by sysctl(3); net.inet.ip.anonportmin and 777 // net.inet.ip.anonportmax respectively. 778 // 779 // A user may set the IPPROTO_IP option IP_PORTRANGE to change this 780 // default assignment range. 781 // 782 // The value IP_PORTRANGE_DEFAULT causes the default behavior. 783 // 784 // The value IP_PORTRANGE_HIGH is the same as IP_PORTRANGE_DEFAULT, 785 // and exists only for FreeBSD compatibility purposes. 786 // 787 // The value IP_PORTRANGE_LOW changes the range to the "low" are 788 // that is (by convention) restricted to privileged processes. 789 // This convention is based on "vouchsafe" principles only. 790 // It is only secure if you trust the remote host to restrict these ports. 791 // The range is IPPORT_RESERVEDMIN to IPPORT_RESERVEDMAX. 792 793 // Internet address (a structure for historical reasons) 794 type In_addr = struct{ Fs_addr X__in_addr_t } /* in.h:158:1 */ 795 796 // Definitions of bits in internet address integers. 797 // On subnets, the decomposition of addresses to host and net parts 798 // is done according to subnet mask, not the masks here. 799 // 800 // By byte-swapping the constants, we avoid ever having to byte-swap IP 801 // addresses inside the kernel. Unfortunately, user-level programs rely 802 // on these macros not doing byte-swapping. 803 804 // These ones aren't really net and host fields, but routing needn't know. 805 806 // Socket address, internet style. 807 type Sockaddr_in = struct { 808 Fsin_len Uint8_t 809 Fsin_family X__sa_family_t 810 Fsin_port X__in_port_t 811 Fsin_addr struct{ Fs_addr X__in_addr_t } 812 Fsin_zero [8]X__int8_t 813 } /* in.h:241:1 */ 814 815 // Structure used to describe IP options. 816 // Used to store options internally, to pass them to a process, 817 // or to restore options retrieved earlier. 818 // The ip_dst is used for the first-hop gateway when using a source route 819 // (this gets put into the header proper). 820 type Ip_opts = struct { 821 Fip_dst struct{ Fs_addr X__in_addr_t } 822 Fip_opts [40]X__int8_t 823 } /* in.h:258:1 */ 824 825 // Options for use with [gs]etsockopt at the IP level. 826 // First word of comment is data type; bool is stored in int. 827 // The add and drop membership option numbers need to match with the v6 ones 828 829 // Information sent in the control message of a datagram socket for 830 // IP_PKTINFO and IP_RECVPKTINFO. 831 type In_pktinfo = struct { 832 Fipi_addr struct{ Fs_addr X__in_addr_t } 833 Fipi_ifindex uint32 834 } /* in.h:301:1 */ 835 836 // Defaults and limits for options 837 838 // Argument structure for IP_ADD_MEMBERSHIP and IP_DROP_MEMBERSHIP. 839 type Ip_mreq = struct { 840 Fimr_multiaddr struct{ Fs_addr X__in_addr_t } 841 Fimr_interface struct{ Fs_addr X__in_addr_t } 842 } /* in.h:318:1 */ 843 844 // Argument for IP_PORTRANGE: 845 // - which range to search when port is unspecified at bind() or connect() 846 847 // Definitions for inet sysctl operations. 848 // 849 // Third level is protocol number. 850 // Fourth level is desired variable within that protocol. 851 852 // Names for IP sysctl objects 853 // IPCTL_DEFMTU=4, never implemented 854 855 // INET6 stuff 856 // $NetBSD: in6.h,v 1.95.2.1 2019/09/06 19:43:00 martin Exp $ 857 // $KAME: in6.h,v 1.83 2001/03/29 02:55:07 jinmei Exp $ 858 859 // Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. 860 // All rights reserved. 861 // 862 // Redistribution and use in source and binary forms, with or without 863 // modification, are permitted provided that the following conditions 864 // are met: 865 // 1. Redistributions of source code must retain the above copyright 866 // notice, this list of conditions and the following disclaimer. 867 // 2. Redistributions in binary form must reproduce the above copyright 868 // notice, this list of conditions and the following disclaimer in the 869 // documentation and/or other materials provided with the distribution. 870 // 3. Neither the name of the project nor the names of its contributors 871 // may be used to endorse or promote products derived from this software 872 // without specific prior written permission. 873 // 874 // THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND 875 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 876 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 877 // ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE 878 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 879 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 880 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 881 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 882 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 883 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 884 // SUCH DAMAGE. 885 886 // Copyright (c) 1982, 1986, 1990, 1993 887 // The Regents of the University of California. All rights reserved. 888 // 889 // Redistribution and use in source and binary forms, with or without 890 // modification, are permitted provided that the following conditions 891 // are met: 892 // 1. Redistributions of source code must retain the above copyright 893 // notice, this list of conditions and the following disclaimer. 894 // 2. Redistributions in binary form must reproduce the above copyright 895 // notice, this list of conditions and the following disclaimer in the 896 // documentation and/or other materials provided with the distribution. 897 // 3. Neither the name of the University nor the names of its contributors 898 // may be used to endorse or promote products derived from this software 899 // without specific prior written permission. 900 // 901 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 902 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 903 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 904 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 905 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 906 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 907 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 908 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 909 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 910 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 911 // SUCH DAMAGE. 912 // 913 // @(#)in.h 8.3 (Berkeley) 1/3/94 914 915 // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $ 916 917 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998. 918 // Public domain. 919 // 920 // NOTE: Do not protect this header against multiple inclusion. Doing 921 // so can have subtle side-effects due to header file inclusion order 922 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead, 923 // protect each CPP macro that we want to supply. 924 925 // Feature-test macros are defined by several standards, and allow an 926 // application to specify what symbols they want the system headers to 927 // expose, and hence what standard they want them to conform to. 928 // There are two classes of feature-test macros. The first class 929 // specify complete standards, and if one of these is defined, header 930 // files will try to conform to the relevant standard. They are: 931 // 932 // ANSI macros: 933 // _ANSI_SOURCE ANSI C89 934 // 935 // POSIX macros: 936 // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?) 937 // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990 938 // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992 939 // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993 940 // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996 941 // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001 942 // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008 943 // 944 // X/Open macros: 945 // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2 946 // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions 947 // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5 948 // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2 949 // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option 950 // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option 951 // 952 // NetBSD macros: 953 // _NETBSD_SOURCE == 1 Make all NetBSD features available. 954 // 955 // If more than one of these "major" feature-test macros is defined, 956 // then the set of facilities provided (and namespace used) is the 957 // union of that specified by the relevant standards, and in case of 958 // conflict, the earlier standard in the above list has precedence (so 959 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version 960 // of rename() that's used is the POSIX one). If none of the "major" 961 // feature-test macros is defined, _NETBSD_SOURCE is assumed. 962 // 963 // There are also "minor" feature-test macros, which enable extra 964 // functionality in addition to some base standard. They should be 965 // defined along with one of the "major" macros. The "minor" macros 966 // are: 967 // 968 // _REENTRANT 969 // _ISOC99_SOURCE 970 // _ISOC11_SOURCE 971 // _LARGEFILE_SOURCE Large File Support 972 // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html> 973 974 // $NetBSD: socket.h,v 1.129 2018/11/04 16:30:29 christos Exp $ 975 976 // Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. 977 // All rights reserved. 978 // 979 // Redistribution and use in source and binary forms, with or without 980 // modification, are permitted provided that the following conditions 981 // are met: 982 // 1. Redistributions of source code must retain the above copyright 983 // notice, this list of conditions and the following disclaimer. 984 // 2. Redistributions in binary form must reproduce the above copyright 985 // notice, this list of conditions and the following disclaimer in the 986 // documentation and/or other materials provided with the distribution. 987 // 3. Neither the name of the project nor the names of its contributors 988 // may be used to endorse or promote products derived from this software 989 // without specific prior written permission. 990 // 991 // THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND 992 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 993 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 994 // ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE 995 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 996 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 997 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 998 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 999 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 1000 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1001 // SUCH DAMAGE. 1002 1003 // Copyright (c) 1982, 1985, 1986, 1988, 1993, 1994 1004 // The Regents of the University of California. All rights reserved. 1005 // 1006 // Redistribution and use in source and binary forms, with or without 1007 // modification, are permitted provided that the following conditions 1008 // are met: 1009 // 1. Redistributions of source code must retain the above copyright 1010 // notice, this list of conditions and the following disclaimer. 1011 // 2. Redistributions in binary form must reproduce the above copyright 1012 // notice, this list of conditions and the following disclaimer in the 1013 // documentation and/or other materials provided with the distribution. 1014 // 3. Neither the name of the University nor the names of its contributors 1015 // may be used to endorse or promote products derived from this software 1016 // without specific prior written permission. 1017 // 1018 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 1019 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1020 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1021 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 1022 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1023 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1024 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1025 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 1026 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 1027 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1028 // SUCH DAMAGE. 1029 // 1030 // @(#)socket.h 8.6 (Berkeley) 5/3/95 1031 1032 // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $ 1033 1034 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998. 1035 // Public domain. 1036 // 1037 // NOTE: Do not protect this header against multiple inclusion. Doing 1038 // so can have subtle side-effects due to header file inclusion order 1039 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead, 1040 // protect each CPP macro that we want to supply. 1041 1042 // Feature-test macros are defined by several standards, and allow an 1043 // application to specify what symbols they want the system headers to 1044 // expose, and hence what standard they want them to conform to. 1045 // There are two classes of feature-test macros. The first class 1046 // specify complete standards, and if one of these is defined, header 1047 // files will try to conform to the relevant standard. They are: 1048 // 1049 // ANSI macros: 1050 // _ANSI_SOURCE ANSI C89 1051 // 1052 // POSIX macros: 1053 // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?) 1054 // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990 1055 // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992 1056 // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993 1057 // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996 1058 // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001 1059 // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008 1060 // 1061 // X/Open macros: 1062 // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2 1063 // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions 1064 // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5 1065 // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2 1066 // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option 1067 // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option 1068 // 1069 // NetBSD macros: 1070 // _NETBSD_SOURCE == 1 Make all NetBSD features available. 1071 // 1072 // If more than one of these "major" feature-test macros is defined, 1073 // then the set of facilities provided (and namespace used) is the 1074 // union of that specified by the relevant standards, and in case of 1075 // conflict, the earlier standard in the above list has precedence (so 1076 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version 1077 // of rename() that's used is the POSIX one). If none of the "major" 1078 // feature-test macros is defined, _NETBSD_SOURCE is assumed. 1079 // 1080 // There are also "minor" feature-test macros, which enable extra 1081 // functionality in addition to some base standard. They should be 1082 // defined along with one of the "major" macros. The "minor" macros 1083 // are: 1084 // 1085 // _REENTRANT 1086 // _ISOC99_SOURCE 1087 // _ISOC11_SOURCE 1088 // _LARGEFILE_SOURCE Large File Support 1089 // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html> 1090 1091 // Definitions related to sockets: types, address families, options. 1092 1093 // Data types. 1094 // $NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $ 1095 1096 // - 1097 // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc. 1098 // All rights reserved. 1099 // 1100 // This code is derived from software contributed to The NetBSD Foundation 1101 // by Jun-ichiro itojun Hagino and by Klaus Klein. 1102 // 1103 // Redistribution and use in source and binary forms, with or without 1104 // modification, are permitted provided that the following conditions 1105 // are met: 1106 // 1. Redistributions of source code must retain the above copyright 1107 // notice, this list of conditions and the following disclaimer. 1108 // 2. Redistributions in binary form must reproduce the above copyright 1109 // notice, this list of conditions and the following disclaimer in the 1110 // documentation and/or other materials provided with the distribution. 1111 // 1112 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 1113 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 1114 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 1115 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 1116 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 1117 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 1118 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 1119 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 1120 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 1121 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 1122 // POSSIBILITY OF SUCH DAMAGE. 1123 1124 type Socklen_t = X__socklen_t /* socket.h:83:21 */ 1125 1126 type Ssize_t = int32 /* socket.h:95:23 */ 1127 1128 // $NetBSD: uio.h,v 1.36 2011/07/27 13:20:07 uebayasi Exp $ 1129 1130 // Copyright (c) 1982, 1986, 1993, 1994 1131 // The Regents of the University of California. All rights reserved. 1132 // 1133 // Redistribution and use in source and binary forms, with or without 1134 // modification, are permitted provided that the following conditions 1135 // are met: 1136 // 1. Redistributions of source code must retain the above copyright 1137 // notice, this list of conditions and the following disclaimer. 1138 // 2. Redistributions in binary form must reproduce the above copyright 1139 // notice, this list of conditions and the following disclaimer in the 1140 // documentation and/or other materials provided with the distribution. 1141 // 3. Neither the name of the University nor the names of its contributors 1142 // may be used to endorse or promote products derived from this software 1143 // without specific prior written permission. 1144 // 1145 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 1146 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1147 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1148 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 1149 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1150 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1151 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1152 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 1153 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 1154 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1155 // SUCH DAMAGE. 1156 // 1157 // @(#)uio.h 8.5 (Berkeley) 2/22/94 1158 1159 // $NetBSD: ansi.h,v 1.18 2019/05/07 03:49:26 kamil Exp $ 1160 1161 // $NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $ 1162 1163 // - 1164 // Copyright (c) 2014 The NetBSD Foundation, Inc. 1165 // All rights reserved. 1166 // 1167 // This code is derived from software contributed to The NetBSD Foundation 1168 // by Matt Thomas of 3am Software Foundry. 1169 // 1170 // Redistribution and use in source and binary forms, with or without 1171 // modification, are permitted provided that the following conditions 1172 // are met: 1173 // 1. Redistributions of source code must retain the above copyright 1174 // notice, this list of conditions and the following disclaimer. 1175 // 2. Redistributions in binary form must reproduce the above copyright 1176 // notice, this list of conditions and the following disclaimer in the 1177 // documentation and/or other materials provided with the distribution. 1178 // 1179 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 1180 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 1181 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 1182 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 1183 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 1184 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 1185 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 1186 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 1187 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 1188 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 1189 // POSSIBILITY OF SUCH DAMAGE. 1190 1191 // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $ 1192 1193 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998. 1194 // Public domain. 1195 // 1196 // NOTE: Do not protect this header against multiple inclusion. Doing 1197 // so can have subtle side-effects due to header file inclusion order 1198 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead, 1199 // protect each CPP macro that we want to supply. 1200 1201 // Feature-test macros are defined by several standards, and allow an 1202 // application to specify what symbols they want the system headers to 1203 // expose, and hence what standard they want them to conform to. 1204 // There are two classes of feature-test macros. The first class 1205 // specify complete standards, and if one of these is defined, header 1206 // files will try to conform to the relevant standard. They are: 1207 // 1208 // ANSI macros: 1209 // _ANSI_SOURCE ANSI C89 1210 // 1211 // POSIX macros: 1212 // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?) 1213 // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990 1214 // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992 1215 // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993 1216 // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996 1217 // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001 1218 // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008 1219 // 1220 // X/Open macros: 1221 // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2 1222 // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions 1223 // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5 1224 // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2 1225 // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option 1226 // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option 1227 // 1228 // NetBSD macros: 1229 // _NETBSD_SOURCE == 1 Make all NetBSD features available. 1230 // 1231 // If more than one of these "major" feature-test macros is defined, 1232 // then the set of facilities provided (and namespace used) is the 1233 // union of that specified by the relevant standards, and in case of 1234 // conflict, the earlier standard in the above list has precedence (so 1235 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version 1236 // of rename() that's used is the POSIX one). If none of the "major" 1237 // feature-test macros is defined, _NETBSD_SOURCE is assumed. 1238 // 1239 // There are also "minor" feature-test macros, which enable extra 1240 // functionality in addition to some base standard. They should be 1241 // defined along with one of the "major" macros. The "minor" macros 1242 // are: 1243 // 1244 // _REENTRANT 1245 // _ISOC99_SOURCE 1246 // _ISOC11_SOURCE 1247 // _LARGEFILE_SOURCE Large File Support 1248 // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html> 1249 1250 type Iovec = struct { 1251 Fiov_base uintptr 1252 Fiov_len Size_t 1253 } /* uio.h:56:1 */ 1254 1255 // $NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $ 1256 1257 // - 1258 // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc. 1259 // All rights reserved. 1260 // 1261 // This code is derived from software contributed to The NetBSD Foundation 1262 // by Jun-ichiro itojun Hagino and by Klaus Klein. 1263 // 1264 // Redistribution and use in source and binary forms, with or without 1265 // modification, are permitted provided that the following conditions 1266 // are met: 1267 // 1. Redistributions of source code must retain the above copyright 1268 // notice, this list of conditions and the following disclaimer. 1269 // 2. Redistributions in binary form must reproduce the above copyright 1270 // notice, this list of conditions and the following disclaimer in the 1271 // documentation and/or other materials provided with the distribution. 1272 // 1273 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 1274 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 1275 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 1276 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 1277 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 1278 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 1279 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 1280 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 1281 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 1282 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 1283 // POSSIBILITY OF SUCH DAMAGE. 1284 1285 type Off_t = X__off_t /* uio.h:65:18 */ 1286 1287 // $NetBSD: sigtypes.h,v 1.11 2017/01/12 18:29:14 christos Exp $ 1288 1289 // Copyright (c) 1982, 1986, 1989, 1991, 1993 1290 // The Regents of the University of California. All rights reserved. 1291 // (c) UNIX System Laboratories, Inc. 1292 // All or some portions of this file are derived from material licensed 1293 // to the University of California by American Telephone and Telegraph 1294 // Co. or Unix System Laboratories, Inc. and are reproduced herein with 1295 // the permission of UNIX System Laboratories, Inc. 1296 // 1297 // Redistribution and use in source and binary forms, with or without 1298 // modification, are permitted provided that the following conditions 1299 // are met: 1300 // 1. Redistributions of source code must retain the above copyright 1301 // notice, this list of conditions and the following disclaimer. 1302 // 2. Redistributions in binary form must reproduce the above copyright 1303 // notice, this list of conditions and the following disclaimer in the 1304 // documentation and/or other materials provided with the distribution. 1305 // 3. Neither the name of the University nor the names of its contributors 1306 // may be used to endorse or promote products derived from this software 1307 // without specific prior written permission. 1308 // 1309 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 1310 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1311 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1312 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 1313 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1314 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1315 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1316 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 1317 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 1318 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1319 // SUCH DAMAGE. 1320 // 1321 // @(#)signal.h 8.4 (Berkeley) 5/4/95 1322 1323 // This header file defines various signal-related types. We also keep 1324 // the macros to manipulate sigset_t here, to encapsulate knowledge of 1325 // its internals. 1326 1327 // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $ 1328 1329 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998. 1330 // Public domain. 1331 // 1332 // NOTE: Do not protect this header against multiple inclusion. Doing 1333 // so can have subtle side-effects due to header file inclusion order 1334 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead, 1335 // protect each CPP macro that we want to supply. 1336 1337 // Feature-test macros are defined by several standards, and allow an 1338 // application to specify what symbols they want the system headers to 1339 // expose, and hence what standard they want them to conform to. 1340 // There are two classes of feature-test macros. The first class 1341 // specify complete standards, and if one of these is defined, header 1342 // files will try to conform to the relevant standard. They are: 1343 // 1344 // ANSI macros: 1345 // _ANSI_SOURCE ANSI C89 1346 // 1347 // POSIX macros: 1348 // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?) 1349 // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990 1350 // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992 1351 // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993 1352 // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996 1353 // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001 1354 // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008 1355 // 1356 // X/Open macros: 1357 // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2 1358 // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions 1359 // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5 1360 // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2 1361 // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option 1362 // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option 1363 // 1364 // NetBSD macros: 1365 // _NETBSD_SOURCE == 1 Make all NetBSD features available. 1366 // 1367 // If more than one of these "major" feature-test macros is defined, 1368 // then the set of facilities provided (and namespace used) is the 1369 // union of that specified by the relevant standards, and in case of 1370 // conflict, the earlier standard in the above list has precedence (so 1371 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version 1372 // of rename() that's used is the POSIX one). If none of the "major" 1373 // feature-test macros is defined, _NETBSD_SOURCE is assumed. 1374 // 1375 // There are also "minor" feature-test macros, which enable extra 1376 // functionality in addition to some base standard. They should be 1377 // defined along with one of the "major" macros. The "minor" macros 1378 // are: 1379 // 1380 // _REENTRANT 1381 // _ISOC99_SOURCE 1382 // _ISOC11_SOURCE 1383 // _LARGEFILE_SOURCE Large File Support 1384 // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html> 1385 1386 // $NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $ 1387 1388 // - 1389 // Copyright (c) 2014 The NetBSD Foundation, Inc. 1390 // All rights reserved. 1391 // 1392 // This code is derived from software contributed to The NetBSD Foundation 1393 // by Matt Thomas of 3am Software Foundry. 1394 // 1395 // Redistribution and use in source and binary forms, with or without 1396 // modification, are permitted provided that the following conditions 1397 // are met: 1398 // 1. Redistributions of source code must retain the above copyright 1399 // notice, this list of conditions and the following disclaimer. 1400 // 2. Redistributions in binary form must reproduce the above copyright 1401 // notice, this list of conditions and the following disclaimer in the 1402 // documentation and/or other materials provided with the distribution. 1403 // 1404 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 1405 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 1406 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 1407 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 1408 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 1409 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 1410 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 1411 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 1412 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 1413 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 1414 // POSSIBILITY OF SUCH DAMAGE. 1415 1416 // $NetBSD: ansi.h,v 1.18 2019/05/07 03:49:26 kamil Exp $ 1417 1418 // $NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $ 1419 1420 // - 1421 // Copyright (c) 2014 The NetBSD Foundation, Inc. 1422 // All rights reserved. 1423 // 1424 // This code is derived from software contributed to The NetBSD Foundation 1425 // by Matt Thomas of 3am Software Foundry. 1426 // 1427 // Redistribution and use in source and binary forms, with or without 1428 // modification, are permitted provided that the following conditions 1429 // are met: 1430 // 1. Redistributions of source code must retain the above copyright 1431 // notice, this list of conditions and the following disclaimer. 1432 // 2. Redistributions in binary form must reproduce the above copyright 1433 // notice, this list of conditions and the following disclaimer in the 1434 // documentation and/or other materials provided with the distribution. 1435 // 1436 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 1437 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 1438 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 1439 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 1440 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 1441 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 1442 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 1443 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 1444 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 1445 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 1446 // POSSIBILITY OF SUCH DAMAGE. 1447 1448 type Sigset_t = struct{ F__bits [4]X__uint32_t } /* sigtypes.h:62:3 */ 1449 1450 // Macro for manipulating signal masks. 1451 1452 type Sigaltstack = struct { 1453 Fss_sp uintptr 1454 Fss_size Size_t 1455 Fss_flags int32 1456 } /* sigtypes.h:108:9 */ 1457 1458 // Macro for manipulating signal masks. 1459 1460 type Stack_t = Sigaltstack /* sigtypes.h:116:3 */ 1461 1462 // Socket types. 1463 1464 // Option flags per-socket. 1465 // SO_OTIMESTAMP 0x0400 1466 1467 // Allowed default option flags 1468 1469 // Additional options, not kept in so_options. 1470 // SO_OSNDTIMEO 0x1005 1471 // SO_ORCVTIMEO 0x1006 1472 1473 // Structure used for manipulating linger option. 1474 type Linger = struct { 1475 Fl_onoff int32 1476 Fl_linger int32 1477 } /* socket.h:182:1 */ 1478 1479 type Accept_filter_arg = struct { 1480 Faf_name [16]uint8 1481 Faf_arg [240]uint8 1482 } /* socket.h:187:1 */ 1483 1484 // Level number for (get/set)sockopt() to apply to socket itself. 1485 1486 // Address families. 1487 1488 // Structure used by kernel to store most 1489 // addresses. 1490 type Sockaddr = struct { 1491 Fsa_len X__uint8_t 1492 Fsa_family X__sa_family_t 1493 Fsa_data [14]uint8 1494 } /* socket.h:255:1 */ 1495 1496 // RFC 2553: protocol-independent placeholder for socket addresses 1497 1498 type Sockaddr_storage = struct { 1499 Fss_len X__uint8_t 1500 Fss_family X__sa_family_t 1501 F__ss_pad1 [6]uint8 1502 F__ss_align X__int64_t 1503 F__ss_pad2 [112]uint8 1504 } /* socket.h:301:1 */ 1505 1506 // Protocol families, same as address families for now. 1507 1508 type Pid_t = X__pid_t /* socket.h:366:18 */ // process id 1509 1510 type Gid_t = X__gid_t /* socket.h:371:18 */ // group id 1511 1512 type Uid_t = X__uid_t /* socket.h:376:18 */ // user id 1513 1514 // Socket credentials. 1515 type Sockcred = struct { 1516 Fsc_pid X__pid_t 1517 Fsc_uid X__uid_t 1518 Fsc_euid X__uid_t 1519 Fsc_gid X__gid_t 1520 Fsc_egid X__gid_t 1521 Fsc_ngroups int32 1522 Fsc_groups [1]X__gid_t 1523 } /* socket.h:383:1 */ 1524 1525 // Compute size of a sockcred structure with groups. 1526 1527 // Definition for CTL_NET PCB fetching sysctls 1528 type Kinfo_pcb = struct { 1529 Fki_pcbaddr X__uint64_t 1530 Fki_ppcbaddr X__uint64_t 1531 Fki_sockaddr X__uint64_t 1532 Fki_family X__uint32_t 1533 Fki_type X__uint32_t 1534 Fki_protocol X__uint32_t 1535 Fki_pflags X__uint32_t 1536 Fki_sostate X__uint32_t 1537 Fki_prstate X__uint32_t 1538 Fki_tstate X__int32_t 1539 Fki_tflags X__uint32_t 1540 Fki_rcvq X__uint64_t 1541 Fki_sndq X__uint64_t 1542 Fki_s struct { 1543 F_kis_src struct { 1544 Fsa_len X__uint8_t 1545 Fsa_family X__sa_family_t 1546 Fsa_data [14]uint8 1547 } 1548 F__ccgo_pad1 [248]byte 1549 } 1550 Fki_d struct { 1551 F_kid_dst struct { 1552 Fsa_len X__uint8_t 1553 Fsa_family X__sa_family_t 1554 Fsa_data [14]uint8 1555 } 1556 F__ccgo_pad1 [248]byte 1557 } 1558 Fki_inode X__uint64_t 1559 Fki_vnode X__uint64_t 1560 Fki_conn X__uint64_t 1561 Fki_refs X__uint64_t 1562 Fki_nextref X__uint64_t 1563 } /* socket.h:404:1 */ 1564 1565 // PF_ROUTE - Routing table 1566 // 1567 // Three additional levels are defined: 1568 // Fourth: address family, 0 is wildcard 1569 // Fifth: type of info, defined below 1570 // Sixth: flag(s) to mask with for NET_RT_FLAGS 1571 1572 // Maximum queue length specifiable by listen(2). 1573 1574 // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $ 1575 1576 // * Copyright (c) 1991, 1993 1577 // The Regents of the University of California. All rights reserved. 1578 // 1579 // This code is derived from software contributed to Berkeley by 1580 // Berkeley Software Design, Inc. 1581 // 1582 // Redistribution and use in source and binary forms, with or without 1583 // modification, are permitted provided that the following conditions 1584 // are met: 1585 // 1. Redistributions of source code must retain the above copyright 1586 // notice, this list of conditions and the following disclaimer. 1587 // 2. Redistributions in binary form must reproduce the above copyright 1588 // notice, this list of conditions and the following disclaimer in the 1589 // documentation and/or other materials provided with the distribution. 1590 // 3. Neither the name of the University nor the names of its contributors 1591 // may be used to endorse or promote products derived from this software 1592 // without specific prior written permission. 1593 // 1594 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 1595 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1596 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1597 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 1598 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1599 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1600 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1601 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 1602 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 1603 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1604 // SUCH DAMAGE. 1605 // 1606 // @(#)cdefs.h 8.8 (Berkeley) 1/9/95 1607 1608 // Message header for recvmsg and sendmsg calls. 1609 // Used value-result for recvmsg, value only for sendmsg. 1610 type Msghdr = struct { 1611 Fmsg_name uintptr 1612 Fmsg_namelen X__socklen_t 1613 Fmsg_iov uintptr 1614 Fmsg_iovlen int32 1615 Fmsg_control uintptr 1616 Fmsg_controllen X__socklen_t 1617 Fmsg_flags int32 1618 } /* socket.h:479:1 */ 1619 1620 type Mmsghdr = struct { 1621 Fmsg_hdr struct { 1622 Fmsg_name uintptr 1623 Fmsg_namelen X__socklen_t 1624 Fmsg_iov uintptr 1625 Fmsg_iovlen int32 1626 Fmsg_control uintptr 1627 Fmsg_controllen X__socklen_t 1628 Fmsg_flags int32 1629 } 1630 Fmsg_len uint32 1631 } /* socket.h:506:1 */ 1632 1633 // Extra flags used internally only 1634 1635 // Header for ancillary data objects in msg_control buffer. 1636 // Used for additional information with/about a datagram 1637 // not expressible by flags. The format is a sequence 1638 // of message elements headed by cmsghdr structures. 1639 type Cmsghdr = struct { 1640 Fcmsg_len X__socklen_t 1641 Fcmsg_level int32 1642 Fcmsg_type int32 1643 } /* socket.h:525:1 */ 1644 1645 // $NetBSD: endian.h,v 1.30 2016/02/27 21:37:35 christos Exp $ 1646 1647 // Copyright (c) 1987, 1991, 1993 1648 // The Regents of the University of California. All rights reserved. 1649 // 1650 // Redistribution and use in source and binary forms, with or without 1651 // modification, are permitted provided that the following conditions 1652 // are met: 1653 // 1. Redistributions of source code must retain the above copyright 1654 // notice, this list of conditions and the following disclaimer. 1655 // 2. Redistributions in binary form must reproduce the above copyright 1656 // notice, this list of conditions and the following disclaimer in the 1657 // documentation and/or other materials provided with the distribution. 1658 // 3. Neither the name of the University nor the names of its contributors 1659 // may be used to endorse or promote products derived from this software 1660 // without specific prior written permission. 1661 // 1662 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 1663 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1664 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1665 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 1666 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1667 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1668 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1669 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 1670 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 1671 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1672 // SUCH DAMAGE. 1673 // 1674 // @(#)endian.h 8.1 (Berkeley) 6/11/93 1675 1676 // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $ 1677 1678 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998. 1679 // Public domain. 1680 // 1681 // NOTE: Do not protect this header against multiple inclusion. Doing 1682 // so can have subtle side-effects due to header file inclusion order 1683 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead, 1684 // protect each CPP macro that we want to supply. 1685 1686 // Feature-test macros are defined by several standards, and allow an 1687 // application to specify what symbols they want the system headers to 1688 // expose, and hence what standard they want them to conform to. 1689 // There are two classes of feature-test macros. The first class 1690 // specify complete standards, and if one of these is defined, header 1691 // files will try to conform to the relevant standard. They are: 1692 // 1693 // ANSI macros: 1694 // _ANSI_SOURCE ANSI C89 1695 // 1696 // POSIX macros: 1697 // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?) 1698 // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990 1699 // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992 1700 // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993 1701 // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996 1702 // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001 1703 // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008 1704 // 1705 // X/Open macros: 1706 // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2 1707 // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions 1708 // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5 1709 // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2 1710 // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option 1711 // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option 1712 // 1713 // NetBSD macros: 1714 // _NETBSD_SOURCE == 1 Make all NetBSD features available. 1715 // 1716 // If more than one of these "major" feature-test macros is defined, 1717 // then the set of facilities provided (and namespace used) is the 1718 // union of that specified by the relevant standards, and in case of 1719 // conflict, the earlier standard in the above list has precedence (so 1720 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version 1721 // of rename() that's used is the POSIX one). If none of the "major" 1722 // feature-test macros is defined, _NETBSD_SOURCE is assumed. 1723 // 1724 // There are also "minor" feature-test macros, which enable extra 1725 // functionality in addition to some base standard. They should be 1726 // defined along with one of the "major" macros. The "minor" macros 1727 // are: 1728 // 1729 // _REENTRANT 1730 // _ISOC99_SOURCE 1731 // _ISOC11_SOURCE 1732 // _LARGEFILE_SOURCE Large File Support 1733 // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html> 1734 1735 // Definitions for byte order, according to byte significance from low 1736 // address to high. 1737 1738 // C-family endian-ness definitions 1739 1740 // $NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $ 1741 1742 // - 1743 // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc. 1744 // All rights reserved. 1745 // 1746 // This code is derived from software contributed to The NetBSD Foundation 1747 // by Jun-ichiro itojun Hagino and by Klaus Klein. 1748 // 1749 // Redistribution and use in source and binary forms, with or without 1750 // modification, are permitted provided that the following conditions 1751 // are met: 1752 // 1. Redistributions of source code must retain the above copyright 1753 // notice, this list of conditions and the following disclaimer. 1754 // 2. Redistributions in binary form must reproduce the above copyright 1755 // notice, this list of conditions and the following disclaimer in the 1756 // documentation and/or other materials provided with the distribution. 1757 // 1758 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 1759 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 1760 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 1761 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 1762 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 1763 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 1764 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 1765 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 1766 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 1767 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 1768 // POSSIBILITY OF SUCH DAMAGE. 1769 1770 // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $ 1771 1772 // * Copyright (c) 1991, 1993 1773 // The Regents of the University of California. All rights reserved. 1774 // 1775 // This code is derived from software contributed to Berkeley by 1776 // Berkeley Software Design, Inc. 1777 // 1778 // Redistribution and use in source and binary forms, with or without 1779 // modification, are permitted provided that the following conditions 1780 // are met: 1781 // 1. Redistributions of source code must retain the above copyright 1782 // notice, this list of conditions and the following disclaimer. 1783 // 2. Redistributions in binary form must reproduce the above copyright 1784 // notice, this list of conditions and the following disclaimer in the 1785 // documentation and/or other materials provided with the distribution. 1786 // 3. Neither the name of the University nor the names of its contributors 1787 // may be used to endorse or promote products derived from this software 1788 // without specific prior written permission. 1789 // 1790 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 1791 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1792 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1793 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 1794 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1795 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1796 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1797 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 1798 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 1799 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1800 // SUCH DAMAGE. 1801 // 1802 // @(#)cdefs.h 8.8 (Berkeley) 1/9/95 1803 1804 // $NetBSD: types.h,v 1.102 2018/11/06 16:26:44 maya Exp $ 1805 1806 // - 1807 // Copyright (c) 1982, 1986, 1991, 1993, 1994 1808 // The Regents of the University of California. All rights reserved. 1809 // (c) UNIX System Laboratories, Inc. 1810 // All or some portions of this file are derived from material licensed 1811 // to the University of California by American Telephone and Telegraph 1812 // Co. or Unix System Laboratories, Inc. and are reproduced herein with 1813 // the permission of UNIX System Laboratories, Inc. 1814 // 1815 // Redistribution and use in source and binary forms, with or without 1816 // modification, are permitted provided that the following conditions 1817 // are met: 1818 // 1. Redistributions of source code must retain the above copyright 1819 // notice, this list of conditions and the following disclaimer. 1820 // 2. Redistributions in binary form must reproduce the above copyright 1821 // notice, this list of conditions and the following disclaimer in the 1822 // documentation and/or other materials provided with the distribution. 1823 // 3. Neither the name of the University nor the names of its contributors 1824 // may be used to endorse or promote products derived from this software 1825 // without specific prior written permission. 1826 // 1827 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 1828 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1829 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1830 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 1831 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1832 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1833 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1834 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 1835 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 1836 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1837 // SUCH DAMAGE. 1838 // 1839 // @(#)types.h 8.4 (Berkeley) 1/21/94 1840 1841 // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $ 1842 1843 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998. 1844 // Public domain. 1845 // 1846 // NOTE: Do not protect this header against multiple inclusion. Doing 1847 // so can have subtle side-effects due to header file inclusion order 1848 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead, 1849 // protect each CPP macro that we want to supply. 1850 1851 // Feature-test macros are defined by several standards, and allow an 1852 // application to specify what symbols they want the system headers to 1853 // expose, and hence what standard they want them to conform to. 1854 // There are two classes of feature-test macros. The first class 1855 // specify complete standards, and if one of these is defined, header 1856 // files will try to conform to the relevant standard. They are: 1857 // 1858 // ANSI macros: 1859 // _ANSI_SOURCE ANSI C89 1860 // 1861 // POSIX macros: 1862 // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?) 1863 // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990 1864 // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992 1865 // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993 1866 // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996 1867 // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001 1868 // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008 1869 // 1870 // X/Open macros: 1871 // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2 1872 // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions 1873 // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5 1874 // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2 1875 // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option 1876 // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option 1877 // 1878 // NetBSD macros: 1879 // _NETBSD_SOURCE == 1 Make all NetBSD features available. 1880 // 1881 // If more than one of these "major" feature-test macros is defined, 1882 // then the set of facilities provided (and namespace used) is the 1883 // union of that specified by the relevant standards, and in case of 1884 // conflict, the earlier standard in the above list has precedence (so 1885 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version 1886 // of rename() that's used is the POSIX one). If none of the "major" 1887 // feature-test macros is defined, _NETBSD_SOURCE is assumed. 1888 // 1889 // There are also "minor" feature-test macros, which enable extra 1890 // functionality in addition to some base standard. They should be 1891 // defined along with one of the "major" macros. The "minor" macros 1892 // are: 1893 // 1894 // _REENTRANT 1895 // _ISOC99_SOURCE 1896 // _ISOC11_SOURCE 1897 // _LARGEFILE_SOURCE Large File Support 1898 // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html> 1899 1900 // Machine type dependent parameters. 1901 // $NetBSD: types.h,v 1.38 2019/04/06 03:06:25 thorpej Exp $ 1902 1903 // Copyright (c) 1990 The Regents of the University of California. 1904 // All rights reserved. 1905 // 1906 // Redistribution and use in source and binary forms, with or without 1907 // modification, are permitted provided that the following conditions 1908 // are met: 1909 // 1. Redistributions of source code must retain the above copyright 1910 // notice, this list of conditions and the following disclaimer. 1911 // 2. Redistributions in binary form must reproduce the above copyright 1912 // notice, this list of conditions and the following disclaimer in the 1913 // documentation and/or other materials provided with the distribution. 1914 // 3. Neither the name of the University nor the names of its contributors 1915 // may be used to endorse or promote products derived from this software 1916 // without specific prior written permission. 1917 // 1918 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 1919 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1920 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1921 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 1922 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1923 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1924 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1925 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 1926 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 1927 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1928 // SUCH DAMAGE. 1929 // 1930 // from: @(#)types.h 7.5 (Berkeley) 3/9/91 1931 1932 // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $ 1933 1934 // * Copyright (c) 1991, 1993 1935 // The Regents of the University of California. All rights reserved. 1936 // 1937 // This code is derived from software contributed to Berkeley by 1938 // Berkeley Software Design, Inc. 1939 // 1940 // Redistribution and use in source and binary forms, with or without 1941 // modification, are permitted provided that the following conditions 1942 // are met: 1943 // 1. Redistributions of source code must retain the above copyright 1944 // notice, this list of conditions and the following disclaimer. 1945 // 2. Redistributions in binary form must reproduce the above copyright 1946 // notice, this list of conditions and the following disclaimer in the 1947 // documentation and/or other materials provided with the distribution. 1948 // 3. Neither the name of the University nor the names of its contributors 1949 // may be used to endorse or promote products derived from this software 1950 // without specific prior written permission. 1951 // 1952 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 1953 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1954 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1955 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 1956 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1957 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1958 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 1959 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 1960 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 1961 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 1962 // SUCH DAMAGE. 1963 // 1964 // @(#)cdefs.h 8.8 (Berkeley) 1/9/95 1965 1966 // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $ 1967 1968 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998. 1969 // Public domain. 1970 // 1971 // NOTE: Do not protect this header against multiple inclusion. Doing 1972 // so can have subtle side-effects due to header file inclusion order 1973 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead, 1974 // protect each CPP macro that we want to supply. 1975 1976 // Feature-test macros are defined by several standards, and allow an 1977 // application to specify what symbols they want the system headers to 1978 // expose, and hence what standard they want them to conform to. 1979 // There are two classes of feature-test macros. The first class 1980 // specify complete standards, and if one of these is defined, header 1981 // files will try to conform to the relevant standard. They are: 1982 // 1983 // ANSI macros: 1984 // _ANSI_SOURCE ANSI C89 1985 // 1986 // POSIX macros: 1987 // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?) 1988 // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990 1989 // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992 1990 // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993 1991 // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996 1992 // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001 1993 // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008 1994 // 1995 // X/Open macros: 1996 // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2 1997 // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions 1998 // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5 1999 // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2 2000 // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option 2001 // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option 2002 // 2003 // NetBSD macros: 2004 // _NETBSD_SOURCE == 1 Make all NetBSD features available. 2005 // 2006 // If more than one of these "major" feature-test macros is defined, 2007 // then the set of facilities provided (and namespace used) is the 2008 // union of that specified by the relevant standards, and in case of 2009 // conflict, the earlier standard in the above list has precedence (so 2010 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version 2011 // of rename() that's used is the POSIX one). If none of the "major" 2012 // feature-test macros is defined, _NETBSD_SOURCE is assumed. 2013 // 2014 // There are also "minor" feature-test macros, which enable extra 2015 // functionality in addition to some base standard. They should be 2016 // defined along with one of the "major" macros. The "minor" macros 2017 // are: 2018 // 2019 // _REENTRANT 2020 // _ISOC99_SOURCE 2021 // _ISOC11_SOURCE 2022 // _LARGEFILE_SOURCE Large File Support 2023 // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html> 2024 2025 // $NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $ 2026 2027 // - 2028 // Copyright (c) 2014 The NetBSD Foundation, Inc. 2029 // All rights reserved. 2030 // 2031 // This code is derived from software contributed to The NetBSD Foundation 2032 // by Matt Thomas of 3am Software Foundry. 2033 // 2034 // Redistribution and use in source and binary forms, with or without 2035 // modification, are permitted provided that the following conditions 2036 // are met: 2037 // 1. Redistributions of source code must retain the above copyright 2038 // notice, this list of conditions and the following disclaimer. 2039 // 2. Redistributions in binary form must reproduce the above copyright 2040 // notice, this list of conditions and the following disclaimer in the 2041 // documentation and/or other materials provided with the distribution. 2042 // 2043 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 2044 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 2045 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2046 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 2047 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2048 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2049 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2050 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2051 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2052 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2053 // POSSIBILITY OF SUCH DAMAGE. 2054 2055 // This should have always been an 8-bit type, but since it's been exposed 2056 // to user-space, we don't want ABI breakage there. 2057 type X__cpu_simple_lock_nv_t = int32 /* types.h:75:14 */ 2058 type X__register_t = int32 /* types.h:77:14 */ 2059 2060 // $NetBSD: ansi.h,v 1.18 2019/05/07 03:49:26 kamil Exp $ 2061 2062 // $NetBSD: common_ansi.h,v 1.1 2014/08/19 07:27:31 matt Exp $ 2063 2064 // - 2065 // Copyright (c) 2014 The NetBSD Foundation, Inc. 2066 // All rights reserved. 2067 // 2068 // This code is derived from software contributed to The NetBSD Foundation 2069 // by Matt Thomas of 3am Software Foundry. 2070 // 2071 // Redistribution and use in source and binary forms, with or without 2072 // modification, are permitted provided that the following conditions 2073 // are met: 2074 // 1. Redistributions of source code must retain the above copyright 2075 // notice, this list of conditions and the following disclaimer. 2076 // 2. Redistributions in binary form must reproduce the above copyright 2077 // notice, this list of conditions and the following disclaimer in the 2078 // documentation and/or other materials provided with the distribution. 2079 // 2080 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 2081 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 2082 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2083 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 2084 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2085 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2086 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2087 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2088 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2089 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2090 // POSSIBILITY OF SUCH DAMAGE. 2091 2092 // $NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $ 2093 2094 // - 2095 // Copyright (c) 2014 The NetBSD Foundation, Inc. 2096 // All rights reserved. 2097 // 2098 // This code is derived from software contributed to The NetBSD Foundation 2099 // by Matt Thomas of 3am Software Foundry. 2100 // 2101 // Redistribution and use in source and binary forms, with or without 2102 // modification, are permitted provided that the following conditions 2103 // are met: 2104 // 1. Redistributions of source code must retain the above copyright 2105 // notice, this list of conditions and the following disclaimer. 2106 // 2. Redistributions in binary form must reproduce the above copyright 2107 // notice, this list of conditions and the following disclaimer in the 2108 // documentation and/or other materials provided with the distribution. 2109 // 2110 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 2111 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 2112 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2113 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 2114 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2115 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2116 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2117 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2118 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2119 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2120 // POSSIBILITY OF SUCH DAMAGE. 2121 2122 // $NetBSD: ansi.h,v 1.14 2011/07/17 20:54:54 joerg Exp $ 2123 2124 // - 2125 // Copyright (c) 2000, 2001, 2002 The NetBSD Foundation, Inc. 2126 // All rights reserved. 2127 // 2128 // This code is derived from software contributed to The NetBSD Foundation 2129 // by Jun-ichiro itojun Hagino and by Klaus Klein. 2130 // 2131 // Redistribution and use in source and binary forms, with or without 2132 // modification, are permitted provided that the following conditions 2133 // are met: 2134 // 1. Redistributions of source code must retain the above copyright 2135 // notice, this list of conditions and the following disclaimer. 2136 // 2. Redistributions in binary form must reproduce the above copyright 2137 // notice, this list of conditions and the following disclaimer in the 2138 // documentation and/or other materials provided with the distribution. 2139 // 2140 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 2141 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 2142 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2143 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 2144 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2145 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2146 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2147 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2148 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2149 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2150 // POSSIBILITY OF SUCH DAMAGE. 2151 2152 type Int8_t = X__int8_t /* types.h:54:18 */ 2153 2154 type Int16_t = X__int16_t /* types.h:64:19 */ 2155 2156 type Uint16_t = X__uint16_t /* types.h:69:20 */ 2157 2158 type Int32_t = X__int32_t /* types.h:74:19 */ 2159 2160 type Int64_t = X__int64_t /* types.h:84:19 */ 2161 2162 type Uint64_t = X__uint64_t /* types.h:89:20 */ 2163 2164 type U_int8_t = Uint8_t /* types.h:93:18 */ 2165 type U_int16_t = Uint16_t /* types.h:94:18 */ 2166 type U_int32_t = Uint32_t /* types.h:95:18 */ 2167 type U_int64_t = Uint64_t /* types.h:96:18 */ 2168 2169 // $NetBSD: endian.h,v 1.3 2001/06/23 12:20:27 bjh21 Exp $ 2170 2171 // $NetBSD: endian.h,v 1.30 2016/02/27 21:37:35 christos Exp $ 2172 2173 // Copyright (c) 1987, 1991, 1993 2174 // The Regents of the University of California. All rights reserved. 2175 // 2176 // Redistribution and use in source and binary forms, with or without 2177 // modification, are permitted provided that the following conditions 2178 // are met: 2179 // 1. Redistributions of source code must retain the above copyright 2180 // notice, this list of conditions and the following disclaimer. 2181 // 2. Redistributions in binary form must reproduce the above copyright 2182 // notice, this list of conditions and the following disclaimer in the 2183 // documentation and/or other materials provided with the distribution. 2184 // 3. Neither the name of the University nor the names of its contributors 2185 // may be used to endorse or promote products derived from this software 2186 // without specific prior written permission. 2187 // 2188 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 2189 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2190 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2191 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 2192 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2193 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2194 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2195 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2196 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2197 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2198 // SUCH DAMAGE. 2199 // 2200 // @(#)endian.h 8.1 (Berkeley) 6/11/93 2201 2202 type U_char = uint8 /* types.h:101:23 */ 2203 type U_short = uint16 /* types.h:102:24 */ 2204 type U_int = uint32 /* types.h:103:22 */ 2205 type U_long = uint32 /* types.h:104:23 */ 2206 2207 type Unchar = uint8 /* types.h:106:23 */ // Sys V compatibility 2208 type Ushort = uint16 /* types.h:107:24 */ // Sys V compatibility 2209 type Uint = uint32 /* types.h:108:22 */ // Sys V compatibility 2210 type Ulong = uint32 /* types.h:109:23 */ // Sys V compatibility 2211 2212 type U_quad_t = Uint64_t /* types.h:112:18 */ // quads 2213 type Quad_t = Int64_t /* types.h:113:18 */ 2214 type Qaddr_t = uintptr /* types.h:114:16 */ 2215 2216 // The types longlong_t and u_longlong_t exist for use with the 2217 // Sun-derived XDR routines involving these types, and their usage 2218 // in other contexts is discouraged. Further note that these types 2219 // may not be equivalent to "long long" and "unsigned long long", 2220 // they are only guaranteed to be signed and unsigned 64-bit types 2221 // respectively. Portable programs that need 64-bit types should use 2222 // the C99 types int64_t and uint64_t instead. 2223 2224 type Longlong_t = Int64_t /* types.h:126:18 */ // for XDR 2225 type U_longlong_t = Uint64_t /* types.h:127:18 */ // for XDR 2226 2227 type Blkcnt_t = Int64_t /* types.h:129:18 */ // fs block count 2228 type Blksize_t = Int32_t /* types.h:130:18 */ // fs optimal block size 2229 2230 type Fsblkcnt_t = X__fsblkcnt_t /* types.h:133:22 */ // fs block count (statvfs) 2231 2232 type Fsfilcnt_t = X__fsfilcnt_t /* types.h:138:22 */ // fs file count 2233 2234 // We don't and shouldn't use caddr_t in the kernel anymore 2235 type Caddr_t = X__caddr_t /* types.h:145:19 */ // core address 2236 2237 type Daddr_t = Int64_t /* types.h:154:18 */ // disk address 2238 2239 type Dev_t = Uint64_t /* types.h:157:18 */ // device number 2240 type Fixpt_t = Uint32_t /* types.h:158:18 */ // fixed point number 2241 2242 type Id_t = Uint32_t /* types.h:165:18 */ // group id, process id or user id 2243 type Ino_t = Uint64_t /* types.h:166:18 */ // inode number 2244 type Key_t = int32 /* types.h:167:15 */ // IPC key (for Sys V IPC) 2245 2246 type Mode_t = X__mode_t /* types.h:170:18 */ // permissions 2247 2248 type Nlink_t = Uint32_t /* types.h:174:18 */ // link count 2249 2250 type Lwpid_t = Int32_t /* types.h:185:18 */ // LWP id 2251 type Rlim_t = Uint64_t /* types.h:186:18 */ // resource limit 2252 type Segsz_t = Int32_t /* types.h:187:18 */ // segment size 2253 type Swblk_t = Int32_t /* types.h:188:18 */ // swap offset 2254 2255 type Mqd_t = int32 /* types.h:195:14 */ 2256 2257 type Cpuid_t = uint32 /* types.h:197:23 */ 2258 2259 type Psetid_t = int32 /* types.h:199:14 */ 2260 2261 type X__cpu_simple_lock_t = X__cpu_simple_lock_nv_t /* types.h:201:41 */ 2262 2263 // Major, minor numbers, dev_t's. 2264 type X__devmajor_t = Int32_t /* types.h:255:17 */ 2265 type X__devminor_t = Int32_t /* types.h:255:31 */ 2266 2267 type Clock_t = uint32 /* types.h:268:24 */ 2268 2269 type Time_t = X__int64_t /* types.h:289:23 */ 2270 2271 type Clockid_t = int32 /* types.h:294:26 */ 2272 2273 type Timer_t = int32 /* types.h:299:24 */ 2274 2275 type Suseconds_t = int32 /* types.h:304:27 */ 2276 2277 type Useconds_t = uint32 /* types.h:309:26 */ 2278 2279 // $NetBSD: fd_set.h,v 1.7 2018/06/24 12:05:40 kamil Exp $ 2280 2281 // - 2282 // Copyright (c) 1992, 1993 2283 // The Regents of the University of California. All rights reserved. 2284 // 2285 // Redistribution and use in source and binary forms, with or without 2286 // modification, are permitted provided that the following conditions 2287 // are met: 2288 // 1. Redistributions of source code must retain the above copyright 2289 // notice, this list of conditions and the following disclaimer. 2290 // 2. Redistributions in binary form must reproduce the above copyright 2291 // notice, this list of conditions and the following disclaimer in the 2292 // documentation and/or other materials provided with the distribution. 2293 // 3. Neither the name of the University nor the names of its contributors 2294 // may be used to endorse or promote products derived from this software 2295 // without specific prior written permission. 2296 // 2297 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 2298 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2299 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2300 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 2301 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2302 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2303 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2304 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2305 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2306 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2307 // SUCH DAMAGE. 2308 // 2309 // from: @(#)types.h 8.4 (Berkeley) 1/21/94 2310 2311 // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $ 2312 2313 // * Copyright (c) 1991, 1993 2314 // The Regents of the University of California. All rights reserved. 2315 // 2316 // This code is derived from software contributed to Berkeley by 2317 // Berkeley Software Design, Inc. 2318 // 2319 // Redistribution and use in source and binary forms, with or without 2320 // modification, are permitted provided that the following conditions 2321 // are met: 2322 // 1. Redistributions of source code must retain the above copyright 2323 // notice, this list of conditions and the following disclaimer. 2324 // 2. Redistributions in binary form must reproduce the above copyright 2325 // notice, this list of conditions and the following disclaimer in the 2326 // documentation and/or other materials provided with the distribution. 2327 // 3. Neither the name of the University nor the names of its contributors 2328 // may be used to endorse or promote products derived from this software 2329 // without specific prior written permission. 2330 // 2331 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 2332 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2333 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2334 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 2335 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2336 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2337 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2338 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2339 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2340 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2341 // SUCH DAMAGE. 2342 // 2343 // @(#)cdefs.h 8.8 (Berkeley) 1/9/95 2344 2345 // $NetBSD: featuretest.h,v 1.10 2013/04/26 18:29:06 christos Exp $ 2346 2347 // Written by Klaus Klein <kleink@NetBSD.org>, February 2, 1998. 2348 // Public domain. 2349 // 2350 // NOTE: Do not protect this header against multiple inclusion. Doing 2351 // so can have subtle side-effects due to header file inclusion order 2352 // and testing of e.g. _POSIX_SOURCE vs. _POSIX_C_SOURCE. Instead, 2353 // protect each CPP macro that we want to supply. 2354 2355 // Feature-test macros are defined by several standards, and allow an 2356 // application to specify what symbols they want the system headers to 2357 // expose, and hence what standard they want them to conform to. 2358 // There are two classes of feature-test macros. The first class 2359 // specify complete standards, and if one of these is defined, header 2360 // files will try to conform to the relevant standard. They are: 2361 // 2362 // ANSI macros: 2363 // _ANSI_SOURCE ANSI C89 2364 // 2365 // POSIX macros: 2366 // _POSIX_SOURCE == 1 IEEE Std 1003.1 (version?) 2367 // _POSIX_C_SOURCE == 1 IEEE Std 1003.1-1990 2368 // _POSIX_C_SOURCE == 2 IEEE Std 1003.2-1992 2369 // _POSIX_C_SOURCE == 199309L IEEE Std 1003.1b-1993 2370 // _POSIX_C_SOURCE == 199506L ISO/IEC 9945-1:1996 2371 // _POSIX_C_SOURCE == 200112L IEEE Std 1003.1-2001 2372 // _POSIX_C_SOURCE == 200809L IEEE Std 1003.1-2008 2373 // 2374 // X/Open macros: 2375 // _XOPEN_SOURCE System Interfaces and Headers, Issue 4, Ver 2 2376 // _XOPEN_SOURCE_EXTENDED == 1 XSH4.2 UNIX extensions 2377 // _XOPEN_SOURCE == 500 System Interfaces and Headers, Issue 5 2378 // _XOPEN_SOURCE == 520 Networking Services (XNS), Issue 5.2 2379 // _XOPEN_SOURCE == 600 IEEE Std 1003.1-2001, XSI option 2380 // _XOPEN_SOURCE == 700 IEEE Std 1003.1-2008, XSI option 2381 // 2382 // NetBSD macros: 2383 // _NETBSD_SOURCE == 1 Make all NetBSD features available. 2384 // 2385 // If more than one of these "major" feature-test macros is defined, 2386 // then the set of facilities provided (and namespace used) is the 2387 // union of that specified by the relevant standards, and in case of 2388 // conflict, the earlier standard in the above list has precedence (so 2389 // if both _POSIX_C_SOURCE and _NETBSD_SOURCE are defined, the version 2390 // of rename() that's used is the POSIX one). If none of the "major" 2391 // feature-test macros is defined, _NETBSD_SOURCE is assumed. 2392 // 2393 // There are also "minor" feature-test macros, which enable extra 2394 // functionality in addition to some base standard. They should be 2395 // defined along with one of the "major" macros. The "minor" macros 2396 // are: 2397 // 2398 // _REENTRANT 2399 // _ISOC99_SOURCE 2400 // _ISOC11_SOURCE 2401 // _LARGEFILE_SOURCE Large File Support 2402 // <http://ftp.sas.com/standards/large.file/x_open.20Mar96.html> 2403 2404 // $NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $ 2405 2406 // - 2407 // Copyright (c) 2014 The NetBSD Foundation, Inc. 2408 // All rights reserved. 2409 // 2410 // This code is derived from software contributed to The NetBSD Foundation 2411 // by Matt Thomas of 3am Software Foundry. 2412 // 2413 // Redistribution and use in source and binary forms, with or without 2414 // modification, are permitted provided that the following conditions 2415 // are met: 2416 // 1. Redistributions of source code must retain the above copyright 2417 // notice, this list of conditions and the following disclaimer. 2418 // 2. Redistributions in binary form must reproduce the above copyright 2419 // notice, this list of conditions and the following disclaimer in the 2420 // documentation and/or other materials provided with the distribution. 2421 // 2422 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 2423 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 2424 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2425 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 2426 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2427 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2428 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2429 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2430 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2431 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2432 // POSSIBILITY OF SUCH DAMAGE. 2433 2434 // Implementation dependent defines, hidden from user space. 2435 // POSIX does not specify them. 2436 2437 type X__fd_mask = X__uint32_t /* fd_set.h:46:20 */ 2438 2439 // 32 = 2 ^ 5 2440 2441 // Select uses bit fields of file descriptors. These macros manipulate 2442 // such bit fields. Note: FD_SETSIZE may be defined by the user. 2443 2444 type Fd_set1 = struct{ Ffds_bits [8]X__fd_mask } /* fd_set.h:66:9 */ 2445 2446 // 32 = 2 ^ 5 2447 2448 // Select uses bit fields of file descriptors. These macros manipulate 2449 // such bit fields. Note: FD_SETSIZE may be defined by the user. 2450 2451 type Fd_set = Fd_set1 /* fd_set.h:68:3 */ 2452 2453 // Expose our internals if we are not required to hide them. 2454 2455 type Kauth_cred_t = uintptr /* types.h:318:27 */ 2456 2457 type Pri_t = int32 /* types.h:320:13 */ 2458 2459 // $NetBSD: pthread_types.h,v 1.23 2017/09/09 23:21:45 kamil Exp $ 2460 2461 // - 2462 // Copyright (c) 2001, 2008 The NetBSD Foundation, Inc. 2463 // All rights reserved. 2464 // 2465 // This code is derived from software contributed to The NetBSD Foundation 2466 // by Nathan J. Williams. 2467 // 2468 // Redistribution and use in source and binary forms, with or without 2469 // modification, are permitted provided that the following conditions 2470 // are met: 2471 // 1. Redistributions of source code must retain the above copyright 2472 // notice, this list of conditions and the following disclaimer. 2473 // 2. Redistributions in binary form must reproduce the above copyright 2474 // notice, this list of conditions and the following disclaimer in the 2475 // documentation and/or other materials provided with the distribution. 2476 // 2477 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 2478 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 2479 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2480 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 2481 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2482 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2483 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2484 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2485 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2486 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2487 // POSSIBILITY OF SUCH DAMAGE. 2488 2489 // We use the "pthread_spin_t" name internally; "pthread_spinlock_t" is the 2490 // POSIX spinlock object. 2491 // 2492 // C++ expects to be using PTHREAD_FOO_INITIALIZER as a member initializer. 2493 // This does not work for volatile types. Since C++ does not touch the guts 2494 // of those types, we do not include volatile in the C++ definitions. 2495 type Pthread_spin_t = X__cpu_simple_lock_t /* pthread_types.h:43:29 */ 2496 type X__pthread_spin_t = Pthread_spin_t /* pthread_types.h:48:24 */ 2497 2498 // Copied from PTQ_HEAD in pthread_queue.h 2499 2500 type Pthread_queue_struct_t = struct { 2501 Fptqh_first uintptr 2502 Fptqh_last uintptr 2503 } /* pthread_types.h:61:1 */ 2504 2505 type Pthread_queue_t = Pthread_queue_struct_t /* pthread_types.h:62:39 */ 2506 type X__pthread_attr_st = struct { 2507 Fpta_magic uint32 2508 Fpta_flags int32 2509 Fpta_private uintptr 2510 } /* pthread_types.h:65:1 */ 2511 2512 type X__pthread_mutex_st = struct { 2513 Fptm_magic uint32 2514 Fptm_errorcheck X__pthread_spin_t 2515 F__8 struct { 2516 F__ccgo_pad1 [0]uint32 2517 Fptm_ceiling uint8 2518 F__ccgo_pad2 [3]byte 2519 } 2520 Fptm_owner Pthread_t 2521 Fptm_waiters uintptr 2522 Fptm_recursed uint32 2523 Fptm_spare2 uintptr 2524 } /* pthread_types.h:66:1 */ 2525 2526 type X__pthread_mutexattr_st = struct { 2527 Fptma_magic uint32 2528 Fptma_private uintptr 2529 } /* pthread_types.h:67:1 */ 2530 2531 type X__pthread_cond_st = struct { 2532 Fptc_magic uint32 2533 Fptc_lock X__pthread_spin_t 2534 Fptc_waiters Pthread_queue_t 2535 Fptc_mutex uintptr 2536 Fptc_private uintptr 2537 } /* pthread_types.h:68:1 */ 2538 2539 type X__pthread_condattr_st = struct { 2540 Fptca_magic uint32 2541 Fptca_private uintptr 2542 } /* pthread_types.h:69:1 */ 2543 2544 type X__pthread_rwlock_st = struct { 2545 Fptr_magic uint32 2546 Fptr_interlock X__pthread_spin_t 2547 Fptr_rblocked Pthread_queue_t 2548 Fptr_wblocked Pthread_queue_t 2549 Fptr_nreaders uint32 2550 Fptr_owner Pthread_t 2551 Fptr_private uintptr 2552 } /* pthread_types.h:71:1 */ 2553 2554 type X__pthread_rwlockattr_st = struct { 2555 Fptra_magic uint32 2556 Fptra_private uintptr 2557 } /* pthread_types.h:72:1 */ 2558 2559 type X__pthread_barrier_st = struct { 2560 Fptb_magic uint32 2561 Fptb_lock Pthread_spin_t 2562 Fptb_waiters Pthread_queue_t 2563 Fptb_initcount uint32 2564 Fptb_curcount uint32 2565 Fptb_generation uint32 2566 Fptb_private uintptr 2567 } /* pthread_types.h:73:1 */ 2568 2569 type X__pthread_barrierattr_st = struct { 2570 Fptba_magic uint32 2571 Fptba_private uintptr 2572 } /* pthread_types.h:74:1 */ 2573 2574 type Pthread_t = uintptr /* pthread_types.h:76:29 */ 2575 type Pthread_attr_t = X__pthread_attr_st /* pthread_types.h:77:34 */ 2576 type Pthread_mutex_t = X__pthread_mutex_st /* pthread_types.h:78:35 */ 2577 type Pthread_mutexattr_t = X__pthread_mutexattr_st /* pthread_types.h:79:39 */ 2578 type Pthread_cond_t = X__pthread_cond_st /* pthread_types.h:80:34 */ 2579 type Pthread_condattr_t = X__pthread_condattr_st /* pthread_types.h:81:38 */ 2580 type X__pthread_once_st = struct { 2581 Fpto_mutex Pthread_mutex_t 2582 Fpto_done int32 2583 } /* pthread_types.h:82:9 */ 2584 2585 type Pthread_once_t = X__pthread_once_st /* pthread_types.h:82:34 */ 2586 type X__pthread_spinlock_st = struct { 2587 Fpts_magic uint32 2588 Fpts_spin X__pthread_spin_t 2589 Fpts_flags int32 2590 } /* pthread_types.h:83:9 */ 2591 2592 type Pthread_spinlock_t = X__pthread_spinlock_st /* pthread_types.h:83:38 */ 2593 type Pthread_rwlock_t = X__pthread_rwlock_st /* pthread_types.h:84:36 */ 2594 type Pthread_rwlockattr_t = X__pthread_rwlockattr_st /* pthread_types.h:85:40 */ 2595 type Pthread_barrier_t = X__pthread_barrier_st /* pthread_types.h:86:37 */ 2596 type Pthread_barrierattr_t = X__pthread_barrierattr_st /* pthread_types.h:87:41 */ 2597 type Pthread_key_t = int32 /* pthread_types.h:88:13 */ 2598 2599 // $NetBSD: bswap.h,v 1.19 2015/03/12 15:28:16 christos Exp $ 2600 2601 // Written by Manuel Bouyer. Public domain 2602 2603 // $NetBSD: stdint.h,v 1.8 2018/11/06 16:26:44 maya Exp $ 2604 2605 // - 2606 // Copyright (c) 2001, 2004 The NetBSD Foundation, Inc. 2607 // All rights reserved. 2608 // 2609 // This code is derived from software contributed to The NetBSD Foundation 2610 // by Klaus Klein. 2611 // 2612 // Redistribution and use in source and binary forms, with or without 2613 // modification, are permitted provided that the following conditions 2614 // are met: 2615 // 1. Redistributions of source code must retain the above copyright 2616 // notice, this list of conditions and the following disclaimer. 2617 // 2. Redistributions in binary form must reproduce the above copyright 2618 // notice, this list of conditions and the following disclaimer in the 2619 // documentation and/or other materials provided with the distribution. 2620 // 2621 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 2622 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 2623 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2624 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 2625 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2626 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2627 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2628 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2629 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2630 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2631 // POSSIBILITY OF SUCH DAMAGE. 2632 2633 // $NetBSD: cdefs.h,v 1.141 2019/02/21 21:34:05 christos Exp $ 2634 2635 // * Copyright (c) 1991, 1993 2636 // The Regents of the University of California. All rights reserved. 2637 // 2638 // This code is derived from software contributed to Berkeley by 2639 // Berkeley Software Design, Inc. 2640 // 2641 // Redistribution and use in source and binary forms, with or without 2642 // modification, are permitted provided that the following conditions 2643 // are met: 2644 // 1. Redistributions of source code must retain the above copyright 2645 // notice, this list of conditions and the following disclaimer. 2646 // 2. Redistributions in binary form must reproduce the above copyright 2647 // notice, this list of conditions and the following disclaimer in the 2648 // documentation and/or other materials provided with the distribution. 2649 // 3. Neither the name of the University nor the names of its contributors 2650 // may be used to endorse or promote products derived from this software 2651 // without specific prior written permission. 2652 // 2653 // THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 2654 // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2655 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2656 // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 2657 // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2658 // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2659 // OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2660 // HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2661 // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2662 // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2663 // SUCH DAMAGE. 2664 // 2665 // @(#)cdefs.h 8.8 (Berkeley) 1/9/95 2666 2667 // $NetBSD: int_types.h,v 1.17 2014/07/25 21:43:13 joerg Exp $ 2668 2669 // - 2670 // Copyright (c) 2014 The NetBSD Foundation, Inc. 2671 // All rights reserved. 2672 // 2673 // This code is derived from software contributed to The NetBSD Foundation 2674 // by Matt Thomas of 3am Software Foundry. 2675 // 2676 // Redistribution and use in source and binary forms, with or without 2677 // modification, are permitted provided that the following conditions 2678 // are met: 2679 // 1. Redistributions of source code must retain the above copyright 2680 // notice, this list of conditions and the following disclaimer. 2681 // 2. Redistributions in binary form must reproduce the above copyright 2682 // notice, this list of conditions and the following disclaimer in the 2683 // documentation and/or other materials provided with the distribution. 2684 // 2685 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 2686 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 2687 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2688 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 2689 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2690 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2691 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2692 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2693 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2694 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2695 // POSSIBILITY OF SUCH DAMAGE. 2696 2697 type Intptr_t = X__intptr_t /* stdint.h:79:20 */ 2698 2699 type Uintptr_t = X__uintptr_t /* stdint.h:84:21 */ 2700 2701 // $NetBSD: int_mwgwtypes.h,v 1.7 2014/07/25 21:43:13 joerg Exp $ 2702 2703 // - 2704 // Copyright (c) 2014 The NetBSD Foundation, Inc. 2705 // All rights reserved. 2706 // 2707 // This code is derived from software contributed to The NetBSD Foundation 2708 // by Matt Thomas of 3am Software Foundry. 2709 // 2710 // Redistribution and use in source and binary forms, with or without 2711 // modification, are permitted provided that the following conditions 2712 // are met: 2713 // 1. Redistributions of source code must retain the above copyright 2714 // notice, this list of conditions and the following disclaimer. 2715 // 2. Redistributions in binary form must reproduce the above copyright 2716 // notice, this list of conditions and the following disclaimer in the 2717 // documentation and/or other materials provided with the distribution. 2718 // 2719 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 2720 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 2721 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2722 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 2723 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2724 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2725 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2726 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2727 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2728 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2729 // POSSIBILITY OF SUCH DAMAGE. 2730 2731 // $NetBSD: common_int_mwgwtypes.h,v 1.1 2014/07/25 21:43:13 joerg Exp $ 2732 2733 // - 2734 // Copyright (c) 2014 The NetBSD Foundation, Inc. 2735 // All rights reserved. 2736 // 2737 // This code is derived from software contributed to The NetBSD Foundation 2738 // by Joerg Sonnenberger. 2739 // 2740 // Redistribution and use in source and binary forms, with or without 2741 // modification, are permitted provided that the following conditions 2742 // are met: 2743 // 1. Redistributions of source code must retain the above copyright 2744 // notice, this list of conditions and the following disclaimer. 2745 // 2. Redistributions in binary form must reproduce the above copyright 2746 // notice, this list of conditions and the following disclaimer in the 2747 // documentation and/or other materials provided with the distribution. 2748 // 2749 // THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 2750 // ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 2751 // TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 2752 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 2753 // BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2754 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2755 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2756 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2757 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2758 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 2759 // POSSIBILITY OF SUCH DAMAGE. 2760 2761 // 7.18.1 Integer types 2762 2763 // 7.18.1.2 Minimum-width integer types 2764 2765 type Int_least8_t = int8 /* common_int_mwgwtypes.h:45:32 */ 2766 type Uint_least8_t = uint8 /* common_int_mwgwtypes.h:46:32 */ 2767 type Int_least16_t = int16 /* common_int_mwgwtypes.h:47:32 */ 2768 type Uint_least16_t = uint16 /* common_int_mwgwtypes.h:48:32 */ 2769 type Int_least32_t = int32 /* common_int_mwgwtypes.h:49:32 */ 2770 type Uint_least32_t = uint32 /* common_int_mwgwtypes.h:50:32 */ 2771 type Int_least64_t = int64 /* common_int_mwgwtypes.h:51:32 */ 2772 type Uint_least64_t = uint64 /* common_int_mwgwtypes.h:52:32 */ 2773 2774 // 7.18.1.3 Fastest minimum-width integer types 2775 type Int_fast8_t = int32 /* common_int_mwgwtypes.h:55:32 */ 2776 type Uint_fast8_t = uint32 /* common_int_mwgwtypes.h:56:32 */ 2777 type Int_fast16_t = int32 /* common_int_mwgwtypes.h:57:32 */ 2778 type Uint_fast16_t = uint32 /* common_int_mwgwtypes.h:58:32 */ 2779 type Int_fast32_t = int32 /* common_int_mwgwtypes.h:59:32 */ 2780 type Uint_fast32_t = uint32 /* common_int_mwgwtypes.h:60:32 */ 2781 type Int_fast64_t = int64 /* common_int_mwgwtypes.h:61:32 */ 2782 type Uint_fast64_t = uint64 /* common_int_mwgwtypes.h:62:32 */ 2783 2784 // 7.18.1.5 Greatest-width integer types 2785 2786 type Intmax_t = int64 /* common_int_mwgwtypes.h:66:33 */ 2787 type Uintmax_t = uint64 /* common_int_mwgwtypes.h:67:32 */ 2788 2789 // Identification of the network protocol stack 2790 // for *BSD-current/release: http://www.kame.net/dev/cvsweb.cgi/kame/COVERAGE 2791 // has the table of implementation/integration differences. 2792 2793 // Local port number conventions: 2794 // 2795 // Ports < IPPORT_RESERVED are reserved for privileged processes (e.g. root), 2796 // unless a kernel is compiled with IPNOPRIVPORTS defined. 2797 // 2798 // When a user does a bind(2) or connect(2) with a port number of zero, 2799 // a non-conflicting local port address is chosen. 2800 // 2801 // The default range is IPPORT_ANONMIN to IPPORT_ANONMAX, although 2802 // that is settable by sysctl(3); net.inet.ip.anonportmin and 2803 // net.inet.ip.anonportmax respectively. 2804 // 2805 // A user may set the IPPROTO_IP option IP_PORTRANGE to change this 2806 // default assignment range. 2807 // 2808 // The value IP_PORTRANGE_DEFAULT causes the default behavior. 2809 // 2810 // The value IP_PORTRANGE_HIGH is the same as IP_PORTRANGE_DEFAULT, 2811 // and exists only for FreeBSD compatibility purposes. 2812 // 2813 // The value IP_PORTRANGE_LOW changes the range to the "low" are 2814 // that is (by convention) restricted to privileged processes. 2815 // This convention is based on "vouchsafe" principles only. 2816 // It is only secure if you trust the remote host to restrict these ports. 2817 // The range is IPPORT_RESERVEDMIN to IPPORT_RESERVEDMAX. 2818 2819 // IPv6 address 2820 type In6_addr = struct { 2821 F__u6_addr struct { 2822 F__ccgo_pad1 [0]uint32 2823 F__u6_addr8 [16]X__uint8_t 2824 } 2825 } /* in6.h:123:1 */ 2826 2827 // Socket address for IPv6 2828 type Sockaddr_in6 = struct { 2829 Fsin6_len Uint8_t 2830 Fsin6_family X__sa_family_t 2831 Fsin6_port X__in_port_t 2832 Fsin6_flowinfo Uint32_t 2833 Fsin6_addr struct { 2834 F__u6_addr struct { 2835 F__ccgo_pad1 [0]uint32 2836 F__u6_addr8 [16]X__uint8_t 2837 } 2838 } 2839 Fsin6_scope_id Uint32_t 2840 } /* in6.h:146:1 */ 2841 2842 // Unspecified 2843 2844 // Loopback 2845 2846 // IPv4 compatible 2847 2848 // Mapped 2849 2850 // KAME Scope Values 2851 2852 // Unicast Scope 2853 // Note that we must check topmost 10 bits only, not 16 bits (see RFC2373). 2854 2855 // Multicast 2856 2857 // Multicast Scope 2858 2859 // Options for use with [gs]etsockopt at the IPV6 level. 2860 // First word of comment is data type; bool is stored in int. 2861 // no hdrincl 2862 // The join and leave membership option numbers need to match with the v4 ones 2863 // RFC2292 options 2864 2865 // new socket options introduced in RFC3542 2866 2867 // more new socket options introduced in RFC3542 2868 2869 // to define items, should talk with KAME guys first, for *BSD compatibility 2870 2871 // Defaults and limits for options 2872 2873 // Argument structure for IPV6_JOIN_GROUP and IPV6_LEAVE_GROUP. 2874 type Ipv6_mreq = struct { 2875 Fipv6mr_multiaddr struct { 2876 F__u6_addr struct { 2877 F__ccgo_pad1 [0]uint32 2878 F__u6_addr8 [16]X__uint8_t 2879 } 2880 } 2881 Fipv6mr_interface uint32 2882 } /* in6.h:459:1 */ 2883 2884 // IPV6_PKTINFO: Packet information(RFC2292 sec 5) 2885 type In6_pktinfo = struct { 2886 Fipi6_addr struct { 2887 F__u6_addr struct { 2888 F__ccgo_pad1 [0]uint32 2889 F__u6_addr8 [16]X__uint8_t 2890 } 2891 } 2892 Fipi6_ifindex uint32 2893 } /* in6.h:467:1 */ 2894 2895 // Control structure for IPV6_RECVPATHMTU socket option. 2896 type Ip6_mtuinfo = struct { 2897 Fip6m_addr struct { 2898 Fsin6_len Uint8_t 2899 Fsin6_family X__sa_family_t 2900 Fsin6_port X__in_port_t 2901 Fsin6_flowinfo Uint32_t 2902 Fsin6_addr struct { 2903 F__u6_addr struct { 2904 F__ccgo_pad1 [0]uint32 2905 F__u6_addr8 [16]X__uint8_t 2906 } 2907 } 2908 Fsin6_scope_id Uint32_t 2909 } 2910 Fip6m_mtu Uint32_t 2911 } /* in6.h:475:1 */ 2912 2913 var _ uint8 /* gen.c:2:13: */