34 #ifndef _NETINET_IN_H_ 35 #define _NETINET_IN_H_ 40 #ifndef _IN_ADDR_T_DECLARED 41 typedef uint32_t in_addr_t;
42 #define _IN_ADDR_T_DECLARED 47 #define IPPROTO_ICMP 1 49 #define IPPROTO_UDP 17 51 #define INADDR_ANY (u_int32_t)0x00000000 52 #define INADDR_BROADCAST (u_int32_t)0xffffffff 54 #ifndef _IN_PORT_T_DECLARED 55 typedef uint16_t in_port_t;
56 #define _IN_PORT_T_DECLARED 59 #ifndef _SA_FAMILY_T_DECLARED 60 typedef __sa_family_t sa_family_t;
61 #define _SA_FAMILY_T_DECLARED 65 #ifndef _STRUCT_IN_ADDR_DECLARED 69 #define _STRUCT_IN_ADDR_DECLARED 75 sa_family_t sin_family;
90 #define IPPROTO_HOPOPTS 0 91 #define IPPROTO_IGMP 2 93 #define IPPROTO_IPV4 4 94 #define IPPROTO_IPIP IPPROTO_IPV4 97 #define IPPROTO_PIGP 9 98 #define IPPROTO_RCCMON 10 99 #define IPPROTO_NVPII 11 100 #define IPPROTO_PUP 12 101 #define IPPROTO_ARGUS 13 102 #define IPPROTO_EMCON 14 103 #define IPPROTO_XNET 15 104 #define IPPROTO_CHAOS 16 105 #define IPPROTO_MUX 18 106 #define IPPROTO_MEAS 19 107 #define IPPROTO_HMP 20 108 #define IPPROTO_PRM 21 109 #define IPPROTO_IDP 22 110 #define IPPROTO_TRUNK1 23 111 #define IPPROTO_TRUNK2 24 112 #define IPPROTO_LEAF1 25 113 #define IPPROTO_LEAF2 26 114 #define IPPROTO_RDP 27 115 #define IPPROTO_IRTP 28 116 #define IPPROTO_TP 29 117 #define IPPROTO_BLT 30 118 #define IPPROTO_NSP 31 119 #define IPPROTO_INP 32 120 #define IPPROTO_SEP 33 121 #define IPPROTO_3PC 34 122 #define IPPROTO_IDPR 35 123 #define IPPROTO_XTP 36 124 #define IPPROTO_DDP 37 125 #define IPPROTO_CMTP 38 126 #define IPPROTO_TPXX 39 127 #define IPPROTO_IL 40 128 #define IPPROTO_IPV6 41 129 #define IPPROTO_SDRP 42 130 #define IPPROTO_ROUTING 43 131 #define IPPROTO_FRAGMENT 44 132 #define IPPROTO_IDRP 45 133 #define IPPROTO_RSVP 46 134 #define IPPROTO_GRE 47 135 #define IPPROTO_MHRP 48 136 #define IPPROTO_BHA 49 137 #define IPPROTO_ESP 50 138 #define IPPROTO_AH 51 139 #define IPPROTO_INLSP 52 140 #define IPPROTO_SWIPE 53 141 #define IPPROTO_NHRP 54 142 #define IPPROTO_MOBILE 55 143 #define IPPROTO_TLSP 56 144 #define IPPROTO_SKIP 57 145 #define IPPROTO_ICMPV6 58 146 #define IPPROTO_NONE 59 147 #define IPPROTO_DSTOPTS 60 148 #define IPPROTO_AHIP 61 149 #define IPPROTO_CFTP 62 150 #define IPPROTO_HELLO 63 151 #define IPPROTO_SATEXPAK 64 152 #define IPPROTO_KRYPTOLAN 65 153 #define IPPROTO_RVD 66 154 #define IPPROTO_IPPC 67 155 #define IPPROTO_ADFS 68 156 #define IPPROTO_SATMON 69 157 #define IPPROTO_VISA 70 158 #define IPPROTO_IPCV 71 159 #define IPPROTO_CPNX 72 160 #define IPPROTO_CPHB 73 161 #define IPPROTO_WSN 74 162 #define IPPROTO_PVP 75 163 #define IPPROTO_BRSATMON 76 164 #define IPPROTO_ND 77 165 #define IPPROTO_WBMON 78 166 #define IPPROTO_WBEXPAK 79 167 #define IPPROTO_EON 80 168 #define IPPROTO_VMTP 81 169 #define IPPROTO_SVMTP 82 170 #define IPPROTO_VINES 83 171 #define IPPROTO_TTP 84 172 #define IPPROTO_IGP 85 173 #define IPPROTO_DGP 86 174 #define IPPROTO_TCF 87 175 #define IPPROTO_IGRP 88 176 #define IPPROTO_OSPFIGP 89 177 #define IPPROTO_SRPC 90 178 #define IPPROTO_LARP 91 179 #define IPPROTO_MTP 92 180 #define IPPROTO_AX25 93 181 #define IPPROTO_IPEIP 94 182 #define IPPROTO_MICP 95 183 #define IPPROTO_SCCSP 96 184 #define IPPROTO_ETHERIP 97 185 #define IPPROTO_ENCAP 98 186 #define IPPROTO_APES 99 187 #define IPPROTO_GMTP 100 188 #define IPPROTO_IPCOMP 108 190 #define IPPROTO_PIM 103 191 #define IPPROTO_CARP 112 192 #define IPPROTO_PGM 113 193 #define IPPROTO_PFSYNC 240 196 #define IPPROTO_DIVERT 254 197 #define IPPROTO_RAW 255 198 #define IPPROTO_MAX 256 204 #define INET_ADDRSTRLEN 16 246 #define IPPORT_RESERVED 1024 247 #define IPPORT_USERRESERVED 5000 252 #define IPPORT_HIFIRSTAUTO 40000 253 #define IPPORT_HILASTAUTO 44999 261 #define IPPORT_RESERVEDSTART 600 267 #define IN_CLASSA(i) (((u_int32_t)(i) & 0x80000000) == 0) 268 #define IN_CLASSA_NET 0xff000000 269 #define IN_CLASSA_NSHIFT 24 270 #define IN_CLASSA_HOST 0x00ffffff 271 #define IN_CLASSA_MAX 128 273 #define IN_CLASSB(i) (((u_int32_t)(i) & 0xc0000000) == 0x80000000) 274 #define IN_CLASSB_NET 0xffff0000 275 #define IN_CLASSB_NSHIFT 16 276 #define IN_CLASSB_HOST 0x0000ffff 277 #define IN_CLASSB_MAX 65536 279 #define IN_CLASSC(i) (((u_int32_t)(i) & 0xe0000000) == 0xc0000000) 280 #define IN_CLASSC_NET 0xffffff00 281 #define IN_CLASSC_NSHIFT 8 282 #define IN_CLASSC_HOST 0x000000ff 284 #define IN_CLASSD(i) (((u_int32_t)(i) & 0xf0000000) == 0xe0000000) 285 #define IN_CLASSD_NET 0xf0000000 286 #define IN_CLASSD_NSHIFT 28 287 #define IN_CLASSD_HOST 0x0fffffff 288 #define IN_MULTICAST(i) IN_CLASSD(i) 290 #define IN_EXPERIMENTAL(i) (((u_int32_t)(i) & 0xf0000000) == 0xf0000000) 291 #define IN_BADCLASS(i) (((u_int32_t)(i) & 0xf0000000) == 0xf0000000) 293 #define INADDR_LOOPBACK (u_int32_t)0x7f000001 295 #define INADDR_NONE 0xffffffff 298 #define INADDR_UNSPEC_GROUP (u_int32_t)0xe0000000 299 #define INADDR_ALLHOSTS_GROUP (u_int32_t)0xe0000001 300 #define INADDR_ALLRTRS_GROUP (u_int32_t)0xe0000002 301 #define INADDR_MAX_LOCAL_GROUP (u_int32_t)0xe00000ff 303 #define IN_LOOPBACKNET (u_int32_t)127 313 #define IP_RECVOPTS 5 314 #define IP_RECVRETOPTS 6 315 #define IP_RECVDSTADDR 7 316 #define IP_SENDSRCADDR IP_RECVDSTADDR 318 #define IP_MULTICAST_IF 9 319 #define IP_MULTICAST_TTL 10 320 #define IP_MULTICAST_LOOP 11 321 #define IP_ADD_MEMBERSHIP 12 322 #define IP_DROP_MEMBERSHIP 13 323 #define IP_MULTICAST_VIF 14 324 #define IP_RSVP_ON 15 325 #define IP_RSVP_OFF 16 326 #define IP_RSVP_VIF_ON 17 327 #define IP_RSVP_VIF_OFF 18 328 #define IP_PORTRANGE 19 333 #define IP_FW_FLUSH 52 334 #define IP_FW_ZERO 53 341 #define IP_DEFAULT_MULTICAST_TTL 1 342 #define IP_DEFAULT_MULTICAST_LOOP 1 343 #define IP_MAX_MEMBERSHIPS 20 357 #define IP_PORTRANGE_DEFAULT 0 358 #define IP_PORTRANGE_HIGH 1 359 #define IP_PORTRANGE_LOW 2 367 #define IPPROTO_MAXID (IPPROTO_IDP + 1) 369 #define CTL_IPPROTO_NAMES { \ 370 { "ip", CTLTYPE_NODE }, \ 371 { "icmp", CTLTYPE_NODE }, \ 372 { "igmp", CTLTYPE_NODE }, \ 373 { "ggp", CTLTYPE_NODE }, \ 376 { "tcp", CTLTYPE_NODE }, \ 378 { "egp", CTLTYPE_NODE }, \ 382 { "pup", CTLTYPE_NODE }, \ 387 { "udp", CTLTYPE_NODE }, \ 392 { "idp", CTLTYPE_NODE }, \ 398 #define IPCTL_FORWARDING 1 399 #define IPCTL_SENDREDIRECTS 2 400 #define IPCTL_DEFTTL 3 402 #define IPCTL_DEFMTU 4 404 #define IPCTL_RTEXPIRE 5 405 #define IPCTL_RTMINEXPIRE 6 406 #define IPCTL_RTMAXCACHE 7 407 #define IPCTL_SOURCEROUTE 8 408 #define IPCTL_DIRECTEDBROADCAST 9 409 #define IPCTL_INTRQMAXLEN 10 410 #define IPCTL_INTRQDROPS 11 411 #define IPCTL_ACCEPTSOURCEROUTE 13 412 #define IPCTL_MAXID 13 414 #define IPCTL_NAMES { \ 416 { "forwarding", CTLTYPE_INT }, \ 417 { "redirect", CTLTYPE_INT }, \ 418 { "ttl", CTLTYPE_INT }, \ 419 { "mtu", CTLTYPE_INT }, \ 420 { "rtexpire", CTLTYPE_INT }, \ 421 { "rtminexpire", CTLTYPE_INT }, \ 422 { "rtmaxcache", CTLTYPE_INT }, \ 423 { "sourceroute", CTLTYPE_INT }, \ 424 { "directed-broadcast", CTLTYPE_INT }, \ 425 { "intr-queue-maxlen", CTLTYPE_INT }, \ 426 { "intr-queue-drops", CTLTYPE_INT }, \ 427 { "accept_sourceroute", CTLTYPE_INT }, \ 436 int in_canforward(
struct in_addr);
437 int in_cksum(
struct mbuf *,
int);
438 int in_localaddr(
struct in_addr);
439 char *inet_ntoa(
struct in_addr);
443 typedef int ip_fw_chk_t(
struct ip**,
int,
struct ifnet*,
int,
struct mbuf**);
444 typedef int ip_fw_ctl_t(
int,
struct mbuf**);
445 extern ip_fw_chk_t *ip_fw_chk_ptr;
446 extern ip_fw_ctl_t *ip_fw_ctl_ptr;
449 typedef int ip_nat_t(
struct ip**,
struct mbuf**,
struct ifnet*,
int);
450 typedef int ip_nat_ctl_t(
int,
struct mbuf**);
451 extern ip_nat_t *ip_nat_ptr;
452 extern ip_nat_ctl_t *ip_nat_ctl_ptr;
453 #define IP_NAT_IN 0x00000001 454 #define IP_NAT_OUT 0x00000002
This include file provides endian information about the target.