1*958f4928SGeorge V. Neville-Neil /* 2*958f4928SGeorge V. Neville-Neil * Copyright (c) 2017 George V. Neville-Neil 3*958f4928SGeorge V. Neville-Neil * All rights reserved. 4*958f4928SGeorge V. Neville-Neil * 5*958f4928SGeorge V. Neville-Neil * Redistribution and use in source and binary forms, with or without 6*958f4928SGeorge V. Neville-Neil * modification, are permitted provided that the following conditions 7*958f4928SGeorge V. Neville-Neil * are met: 8*958f4928SGeorge V. Neville-Neil * 1. Redistributions of source code must retain the above copyright 9*958f4928SGeorge V. Neville-Neil * notice, this list of conditions and the following disclaimer. 10*958f4928SGeorge V. Neville-Neil * 2. Redistributions in binary form must reproduce the above copyright 11*958f4928SGeorge V. Neville-Neil * notice, this list of conditions and the following disclaimer in the 12*958f4928SGeorge V. Neville-Neil * documentation and/or other materials provided with the distribution. 13*958f4928SGeorge V. Neville-Neil * 14*958f4928SGeorge V. Neville-Neil * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15*958f4928SGeorge V. Neville-Neil * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16*958f4928SGeorge V. Neville-Neil * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17*958f4928SGeorge V. Neville-Neil * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18*958f4928SGeorge V. Neville-Neil * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19*958f4928SGeorge V. Neville-Neil * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20*958f4928SGeorge V. Neville-Neil * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21*958f4928SGeorge V. Neville-Neil * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22*958f4928SGeorge V. Neville-Neil * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23*958f4928SGeorge V. Neville-Neil * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24*958f4928SGeorge V. Neville-Neil * SUCH DAMAGE. 25*958f4928SGeorge V. Neville-Neil * 26*958f4928SGeorge V. Neville-Neil * $FreeBSD$ 27*958f4928SGeorge V. Neville-Neil * 28*958f4928SGeorge V. Neville-Neil * Translators and flags for the socket structure. FreeBSD specific code. 29*958f4928SGeorge V. Neville-Neil */ 30*958f4928SGeorge V. Neville-Neil 31*958f4928SGeorge V. Neville-Neil #pragma D depends_on module kernel 32*958f4928SGeorge V. Neville-Neil 33*958f4928SGeorge V. Neville-Neil /* 34*958f4928SGeorge V. Neville-Neil * Option flags per-socket. 35*958f4928SGeorge V. Neville-Neil */ 36*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_DEBUG 37*958f4928SGeorge V. Neville-Neil inline int SO_DEBUG = 0x0001; /* turn on debugging info recording */ 38*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_ACCEPTCONN 39*958f4928SGeorge V. Neville-Neil inline int SO_ACCEPTCONN = 0x0002; /* socket has had listen() */ 40*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_REUSEADDR 41*958f4928SGeorge V. Neville-Neil inline int SO_REUSEADDR = 0x0004; /* allow local address reuse */ 42*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_KEEPALIVE 43*958f4928SGeorge V. Neville-Neil inline int SO_KEEPALIVE = 0x0008; /* keep connections alive */ 44*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_DONTROUTE 45*958f4928SGeorge V. Neville-Neil inline int SO_DONTROUTE = 0x0010; /* just use interface addresses */ 46*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_BROADCAST 47*958f4928SGeorge V. Neville-Neil inline int SO_BROADCAST = 0x0020; /* permit sending of broadcast msgs */ 48*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_USELOOPBACK 49*958f4928SGeorge V. Neville-Neil inline int SO_USELOOPBACK = 0x0040; /* bypass hardware when possible */ 50*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_LINGER 51*958f4928SGeorge V. Neville-Neil inline int SO_LINGER = 0x0080; /* linger on close if data present */ 52*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_OOBINLINE 53*958f4928SGeorge V. Neville-Neil inline int SO_OOBINLINE = 0x0100; /* leave received OOB data in line */ 54*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_REUSEPORT 55*958f4928SGeorge V. Neville-Neil inline int SO_REUSEPORT = 0x0200; /* allow local address & port reuse */ 56*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_TIMESTAMP 57*958f4928SGeorge V. Neville-Neil inline int SO_TIMESTAMP = 0x0400; /* timestamp received dgram traffic */ 58*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_NOSIGPIPE 59*958f4928SGeorge V. Neville-Neil inline int SO_NOSIGPIPE = 0x0800; /* no SIGPIPE from EPIPE */ 60*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_ACCEPTFILTER 61*958f4928SGeorge V. Neville-Neil inline int SO_ACCEPTFILTER = 0x1000; /* there is an accept filter */ 62*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_BINTIME 63*958f4928SGeorge V. Neville-Neil inline int SO_BINTIME = 0x2000; /* timestamp received dgram traffic */ 64*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_NO_OFFLOAD 65*958f4928SGeorge V. Neville-Neil inline int SO_NO_OFFLOAD = 0x4000; /* socket cannot be offloaded */ 66*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_NO_DDP 67*958f4928SGeorge V. Neville-Neil inline int SO_NO_DDP = 0x8000; /* disable direct data placement */ 68*958f4928SGeorge V. Neville-Neil 69*958f4928SGeorge V. Neville-Neil /* 70*958f4928SGeorge V. Neville-Neil * Additional options, not kept in so_options. 71*958f4928SGeorge V. Neville-Neil */ 72*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_SNDBUF 73*958f4928SGeorge V. Neville-Neil inline int SO_SNDBUF = 0x1001; /* send buffer size */ 74*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_RCVBUF 75*958f4928SGeorge V. Neville-Neil inline int SO_RCVBUF = 0x1002; /* receive buffer size */ 76*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_SNDLOWAT 77*958f4928SGeorge V. Neville-Neil inline int SO_SNDLOWAT = 0x1003; /* send low-water mark */ 78*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_RCVLOWAT 79*958f4928SGeorge V. Neville-Neil inline int SO_RCVLOWAT = 0x1004; /* receive low-water mark */ 80*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_SNDTIMEO 81*958f4928SGeorge V. Neville-Neil inline int SO_SNDTIMEO = 0x1005; /* send timeout */ 82*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_RCVTIMEO 83*958f4928SGeorge V. Neville-Neil inline int SO_RCVTIMEO = 0x1006; /* receive timeout */ 84*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_ERROR 85*958f4928SGeorge V. Neville-Neil inline int SO_ERROR = 0x1007; /* get error status and clear */ 86*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_TYPE 87*958f4928SGeorge V. Neville-Neil inline int SO_TYPE = 0x1008; /* get socket type */ 88*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_LABEL 89*958f4928SGeorge V. Neville-Neil inline int SO_LABEL = 0x1009; /* socket's MAC label */ 90*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_PEERLABEL 91*958f4928SGeorge V. Neville-Neil inline int SO_PEERLABEL = 0x1010; /* socket's peer's MAC label */ 92*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_LISTENQLIMIT 93*958f4928SGeorge V. Neville-Neil inline int SO_LISTENQLIMIT = 0x1011; /* socket's backlog limit */ 94*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_LISTENQLEN 95*958f4928SGeorge V. Neville-Neil inline int SO_LISTENQLEN = 0x1012; /* socket's complete queue length */ 96*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_LISTENINCQLEN 97*958f4928SGeorge V. Neville-Neil inline int SO_LISTENINCQLEN = 0x1013; /* socket's incomplete queue length */ 98*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_SETFIB 99*958f4928SGeorge V. Neville-Neil inline int SO_SETFIB = 0x1014; /* use this FIB to route */ 100*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_USER_COOKIE 101*958f4928SGeorge V. Neville-Neil inline int SO_USER_COOKIE = 0x1015; /* user cookie (dummynet etc.) */ 102*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_PROTOCOL 103*958f4928SGeorge V. Neville-Neil inline int SO_PROTOCOL = 0x1016; /* get socket protocol (Linux name) */ 104*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_PROTOTYPE 105*958f4928SGeorge V. Neville-Neil inline int SO_PROTOTYPE = SO_PROTOCOL; /* alias for SO_PROTOCOL (SunOS name) */ 106*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_TS_CLOCK 107*958f4928SGeorge V. Neville-Neil inline int SO_TS_CLOCK = 0x1017; /* clock type used for SO_TIMESTAMP */ 108*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_MAX_PACING_RATE 109*958f4928SGeorge V. Neville-Neil inline int SO_MAX_PACING_RATE = 0x1018; /* socket's max TX pacing rate (Linux name) */ 110*958f4928SGeorge V. Neville-Neil 111*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_TS_REALTIME_MICRO 112*958f4928SGeorge V. Neville-Neil inline int SO_TS_REALTIME_MICRO = 0; /* microsecond resolution, realtime */ 113*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_TS_BINTIME 114*958f4928SGeorge V. Neville-Neil inline int SO_TS_BINTIME = 1; /* sub-nanosecond resolution, realtime */ 115*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_TS_REALTIME 116*958f4928SGeorge V. Neville-Neil inline int SO_TS_REALTIME = 2; /* nanosecond resolution, realtime */ 117*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_TS_MONOTONIC 118*958f4928SGeorge V. Neville-Neil inline int SO_TS_MONOTONIC = 3; /* nanosecond resolution, monotonic */ 119*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_TS_DEFAULT 120*958f4928SGeorge V. Neville-Neil inline int SO_TS_DEFAULT = SO_TS_REALTIME_MICRO; 121*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" SO_TS_CLOCK_MAX 122*958f4928SGeorge V. Neville-Neil inline int SO_TS_CLOCK_MAX = SO_TS_MONOTONIC; 123*958f4928SGeorge V. Neville-Neil 124*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_UNSPEC 125*958f4928SGeorge V. Neville-Neil inline int AF_UNSPEC = 0; /* unspecified */ 126*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_UNIX 127*958f4928SGeorge V. Neville-Neil inline int AF_UNIX = 1; /* standardized name for AF_LOCAL */ 128*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_LOCAL 129*958f4928SGeorge V. Neville-Neil inline int AF_LOCAL = AF_UNIX; /* local to host (pipes, portals) */ 130*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_INET 131*958f4928SGeorge V. Neville-Neil inline int AF_INET = 2; /* internetwork: UDP, TCP, etc. */ 132*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_IMPLINK 133*958f4928SGeorge V. Neville-Neil inline int AF_IMPLINK = 3; /* arpanet imp addresses */ 134*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_PUP 135*958f4928SGeorge V. Neville-Neil inline int AF_PUP = 4; /* pup protocols: e.g. BSP */ 136*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_CHAOS 137*958f4928SGeorge V. Neville-Neil inline int AF_CHAOS = 5; /* mit CHAOS protocols */ 138*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_NETBIOS 139*958f4928SGeorge V. Neville-Neil inline int AF_NETBIOS = 6; /* SMB protocols */ 140*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_ISO 141*958f4928SGeorge V. Neville-Neil inline int AF_ISO = 7; /* ISO protocols */ 142*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_OSI 143*958f4928SGeorge V. Neville-Neil inline int AF_OSI = AF_ISO; 144*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_ECMA 145*958f4928SGeorge V. Neville-Neil inline int AF_ECMA = 8; /* European computer manufacturers */ 146*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_DATAKIT 147*958f4928SGeorge V. Neville-Neil inline int AF_DATAKIT = 9; /* datakit protocols */ 148*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_CCITT 149*958f4928SGeorge V. Neville-Neil inline int AF_CCITT = 10; /* CCITT protocols, X.25 etc */ 150*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_SNA 151*958f4928SGeorge V. Neville-Neil inline int AF_SNA = 11; /* IBM SNA */ 152*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_DECnet 153*958f4928SGeorge V. Neville-Neil inline int AF_DECnet = 12; /* DECnet */ 154*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_DLI 155*958f4928SGeorge V. Neville-Neil inline int AF_DLI = 13; /* DEC Direct data link interface */ 156*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_LAT 157*958f4928SGeorge V. Neville-Neil inline int AF_LAT = 14; /* LAT */ 158*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_HYLINK 159*958f4928SGeorge V. Neville-Neil inline int AF_HYLINK = 15; /* NSC Hyperchannel */ 160*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_APPLETALK 161*958f4928SGeorge V. Neville-Neil inline int AF_APPLETALK = 16; /* Apple Talk */ 162*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_ROUTE 163*958f4928SGeorge V. Neville-Neil inline int AF_ROUTE = 17; /* Internal Routing Protocol */ 164*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_LINK 165*958f4928SGeorge V. Neville-Neil inline int AF_LINK = 18; /* Link layer interface */ 166*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" pseudo_AF_XTP 167*958f4928SGeorge V. Neville-Neil inline int pseudo_AF_XTP = 19; /* eXpress Transfer Protocol (no AF) */ 168*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_COIP 169*958f4928SGeorge V. Neville-Neil inline int AF_COIP = 20; /* connection-oriented IP, aka ST II */ 170*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_CNT 171*958f4928SGeorge V. Neville-Neil inline int AF_CNT = 21; /* Computer Network Technology */ 172*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" pseudo_AF_RTIP 173*958f4928SGeorge V. Neville-Neil inline int pseudo_AF_RTIP = 22; /* Help Identify RTIP packets */ 174*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_IPX 175*958f4928SGeorge V. Neville-Neil inline int AF_IPX = 23; /* Novell Internet Protocol */ 176*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_SIP 177*958f4928SGeorge V. Neville-Neil inline int AF_SIP = 24; /* Simple Internet Protocol */ 178*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" pseudo_AF_PIP 179*958f4928SGeorge V. Neville-Neil inline int pseudo_AF_PIP = 25; /* Help Identify PIP packets */ 180*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_ISDN 181*958f4928SGeorge V. Neville-Neil inline int AF_ISDN = 26; /* Integrated Services Digital Network*/ 182*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_E164 183*958f4928SGeorge V. Neville-Neil inline int AF_E164 = AF_ISDN; /* CCITT E.164 recommendation */ 184*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" pseudo_AF_KEY 185*958f4928SGeorge V. Neville-Neil inline int pseudo_AF_KEY = 27; /* Internal key-management function */ 186*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_INET6 187*958f4928SGeorge V. Neville-Neil inline int AF_INET6 = 28; /* IPv6 */ 188*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_NATM 189*958f4928SGeorge V. Neville-Neil inline int AF_NATM = 29; /* native ATM access */ 190*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_ATM 191*958f4928SGeorge V. Neville-Neil inline int AF_ATM = 30; /* ATM */ 192*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" pseudo_AF_HDRCMPLT 193*958f4928SGeorge V. Neville-Neil inline int pseudo_AF_HDRCMPLT = 31; /* Used by BPF to not rewrite headers 194*958f4928SGeorge V. Neville-Neil * in interface output routine 195*958f4928SGeorge V. Neville-Neil */ 196*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_NETGRAPH 197*958f4928SGeorge V. Neville-Neil inline int AF_NETGRAPH = 32; /* Netgraph sockets */ 198*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_SLOW 199*958f4928SGeorge V. Neville-Neil inline int AF_SLOW = 33; /* 802.3ad slow protocol */ 200*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_SCLUSTER 201*958f4928SGeorge V. Neville-Neil inline int AF_SCLUSTER = 34; /* Sitara cluster protocol */ 202*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_ARP 203*958f4928SGeorge V. Neville-Neil inline int AF_ARP = 35; /* Address Resolution Protocol */ 204*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_BLUETOOTH 205*958f4928SGeorge V. Neville-Neil inline int AF_BLUETOOTH = 36; /* Bluetooth sockets */ 206*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_IEEE80211 207*958f4928SGeorge V. Neville-Neil inline int AF_IEEE80211 = 37; /* IEEE 802.11 protocol */ 208*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_INET_SDP 209*958f4928SGeorge V. Neville-Neil inline int AF_INET_SDP = 40; /* OFED Socket Direct Protocol ipv4 */ 210*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_INET6_SDP 211*958f4928SGeorge V. Neville-Neil inline int AF_INET6_SDP = 42; /* OFED Socket Direct Protocol ipv6 */ 212*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" AF_MAX 213*958f4928SGeorge V. Neville-Neil inline int AF_MAX = 42; 214*958f4928SGeorge V. Neville-Neil 215*958f4928SGeorge V. Neville-Neil /* 216*958f4928SGeorge V. Neville-Neil * Protocol families, same as address families for now. 217*958f4928SGeorge V. Neville-Neil */ 218*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_UNSPEC 219*958f4928SGeorge V. Neville-Neil inline int PF_UNSPEC = AF_UNSPEC; 220*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_LOCAL 221*958f4928SGeorge V. Neville-Neil inline int PF_LOCAL = AF_LOCAL; 222*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_UNIX 223*958f4928SGeorge V. Neville-Neil inline int PF_UNIX = PF_LOCAL; /* backward compatibility */ 224*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_INET 225*958f4928SGeorge V. Neville-Neil inline int PF_INET = AF_INET; 226*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_IMPLINK 227*958f4928SGeorge V. Neville-Neil inline int PF_IMPLINK = AF_IMPLINK; 228*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_PUP 229*958f4928SGeorge V. Neville-Neil inline int PF_PUP = AF_PUP; 230*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_CHAOS 231*958f4928SGeorge V. Neville-Neil inline int PF_CHAOS = AF_CHAOS; 232*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_NETBIOS 233*958f4928SGeorge V. Neville-Neil inline int PF_NETBIOS = AF_NETBIOS; 234*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_ISO 235*958f4928SGeorge V. Neville-Neil inline int PF_ISO = AF_ISO; 236*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_OSI 237*958f4928SGeorge V. Neville-Neil inline int PF_OSI = AF_ISO; 238*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_ECMA 239*958f4928SGeorge V. Neville-Neil inline int PF_ECMA = AF_ECMA; 240*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_DATAKIT 241*958f4928SGeorge V. Neville-Neil inline int PF_DATAKIT = AF_DATAKIT; 242*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_CCITT 243*958f4928SGeorge V. Neville-Neil inline int PF_CCITT = AF_CCITT; 244*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_SNA 245*958f4928SGeorge V. Neville-Neil inline int PF_SNA = AF_SNA; 246*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_DECnet 247*958f4928SGeorge V. Neville-Neil inline int PF_DECnet = AF_DECnet; 248*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_DLI 249*958f4928SGeorge V. Neville-Neil inline int PF_DLI = AF_DLI; 250*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_LAT 251*958f4928SGeorge V. Neville-Neil inline int PF_LAT = AF_LAT; 252*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_HYLINK 253*958f4928SGeorge V. Neville-Neil inline int PF_HYLINK = AF_HYLINK; 254*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_APPLETALK 255*958f4928SGeorge V. Neville-Neil inline int PF_APPLETALK = AF_APPLETALK; 256*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_ROUTE 257*958f4928SGeorge V. Neville-Neil inline int PF_ROUTE = AF_ROUTE; 258*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_LINK 259*958f4928SGeorge V. Neville-Neil inline int PF_LINK = AF_LINK; 260*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_XTP 261*958f4928SGeorge V. Neville-Neil inline int PF_XTP = pseudo_AF_XTP; /* really just proto family, no AF */ 262*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_COIP 263*958f4928SGeorge V. Neville-Neil inline int PF_COIP = AF_COIP; 264*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_CNT 265*958f4928SGeorge V. Neville-Neil inline int PF_CNT = AF_CNT; 266*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_SIP 267*958f4928SGeorge V. Neville-Neil inline int PF_SIP = AF_SIP; 268*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_IPX 269*958f4928SGeorge V. Neville-Neil inline int PF_IPX = AF_IPX; 270*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_RTIP 271*958f4928SGeorge V. Neville-Neil inline int PF_RTIP = pseudo_AF_RTIP; /* same format as AF_INET */ 272*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_PIP 273*958f4928SGeorge V. Neville-Neil inline int PF_PIP = pseudo_AF_PIP; 274*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_ISDN 275*958f4928SGeorge V. Neville-Neil inline int PF_ISDN = AF_ISDN; 276*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_KEY 277*958f4928SGeorge V. Neville-Neil inline int PF_KEY = pseudo_AF_KEY; 278*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_INET6 279*958f4928SGeorge V. Neville-Neil inline int PF_INET6 = AF_INET6; 280*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_NATM 281*958f4928SGeorge V. Neville-Neil inline int PF_NATM = AF_NATM; 282*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_ATM 283*958f4928SGeorge V. Neville-Neil inline int PF_ATM = AF_ATM; 284*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_NETGRAPH 285*958f4928SGeorge V. Neville-Neil inline int PF_NETGRAPH = AF_NETGRAPH; 286*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_SLOW 287*958f4928SGeorge V. Neville-Neil inline int PF_SLOW = AF_SLOW; 288*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_SCLUSTER 289*958f4928SGeorge V. Neville-Neil inline int PF_SCLUSTER = AF_SCLUSTER; 290*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_ARP 291*958f4928SGeorge V. Neville-Neil inline int PF_ARP = AF_ARP; 292*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_BLUETOOTH 293*958f4928SGeorge V. Neville-Neil inline int PF_BLUETOOTH = AF_BLUETOOTH; 294*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_IEEE80211 295*958f4928SGeorge V. Neville-Neil inline int PF_IEEE80211 = AF_IEEE80211; 296*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_INET_SDP 297*958f4928SGeorge V. Neville-Neil inline int PF_INET_SDP= AF_INET_SDP; 298*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_INET6_SDP 299*958f4928SGeorge V. Neville-Neil inline int PF_INET6_SDP= AF_INET6_SDP; 300*958f4928SGeorge V. Neville-Neil #pragma D binding "1.13" PF_MAX 301*958f4928SGeorge V. Neville-Neil inline int PF_MAX = AF_MAX; 302