1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/os/ossrv/genericopenlibs/openenvcore/include/netinet6/in6.dosc Fri Jun 15 03:10:57 2012 +0200
1.3 @@ -0,0 +1,820 @@
1.4 +/** @file ../include/netinet6/in6.h
1.5 +@internalComponent
1.6 +*/
1.7 +
1.8 +/** @struct in6_addr
1.9 +
1.10 +IPv6 address
1.11 +
1.12 +@publishedAll
1.13 +@externallyDefinedApi
1.14 +*/
1.15 +
1.16 +/** @var in6_addr::__u6_addr
1.17 +128-bit IP6 address
1.18 +*/
1.19 +
1.20 +/** @def s6_addr
1.21 +
1.22 +__u6_addr.__u6_addr8
1.23 +
1.24 +@publishedAll
1.25 +@externallyDefinedApi
1.26 +*/
1.27 +
1.28 +/** @def INET6_ADDRSTRLEN
1.29 +
1.30 +INTET6 address length
1.31 +
1.32 +@publishedAll
1.33 +@externallyDefinedApi
1.34 +*/
1.35 +
1.36 +/** @struct sockaddr_in6
1.37 +
1.38 +Socket address for IPv6
1.39 +
1.40 +@publishedAll
1.41 +@externallyDefinedApi
1.42 +*/
1.43 +
1.44 +/** @var sockaddr_in6::sin6_family
1.45 +AF_INET6
1.46 +*/
1.47 +
1.48 +/** @var sockaddr_in6::sin6_port
1.49 +Transport layer port X
1.50 +*/
1.51 +
1.52 +/** @var sockaddr_in6::sin6_addr
1.53 +IP6 address
1.54 +*/
1.55 +
1.56 +/** @var sockaddr_in6::sin6_flowinfo
1.57 +IP6 flow information
1.58 +*/
1.59 +
1.60 +/** @var sockaddr_in6::sin6_scope_id
1.61 +scope zone index
1.62 +*/
1.63 +
1.64 +/** @var sockaddr_in6::sin6_len
1.65 +length of this struct
1.66 +*/
1.67 +
1.68 +
1.69 +/** @def IN6ADDR_ANY_INIT
1.70 +
1.71 +To handle IP6 addresses
1.72 +
1.73 +@publishedAll
1.74 +@released
1.75 +*/
1.76 +
1.77 +
1.78 +/** @def IN6ADDR_LOOPBACK_INIT
1.79 +
1.80 +To handle IP6 addresses
1.81 +
1.82 +@publishedAll
1.83 +@released
1.84 +*/
1.85 +
1.86 +
1.87 +/** @def IN6ADDR_NODELOCAL_ALLNODES_INIT
1.88 +
1.89 +To handle IP6 addresses
1.90 +
1.91 +@publishedAll
1.92 +@released
1.93 +*/
1.94 +
1.95 +
1.96 +/** @def IN6ADDR_INTFACELOCAL_ALLNODES_INIT
1.97 +
1.98 +To handle IP6 addresses
1.99 +
1.100 +@publishedAll
1.101 +@released
1.102 +*/
1.103 +
1.104 +
1.105 +/** @def IN6ADDR_LINKLOCAL_ALLNODES_INIT
1.106 +
1.107 +To handle IP6 addresses
1.108 +
1.109 +@publishedAll
1.110 +@released
1.111 +*/
1.112 +
1.113 +
1.114 +/** @def IN6ADDR_LINKLOCAL_ALLROUTERS_INIT
1.115 +
1.116 +To handle IP6 addresses
1.117 +
1.118 +@publishedAll
1.119 +@released
1.120 +*/
1.121 +
1.122 +
1.123 +/** @def IN6_ARE_ADDR_EQUAL(a, b)
1.124 +
1.125 +Equality. NOTE: Some of kernel programming environment (for example, openbsd or sparc) does not supply memcmp(). For userland memcmp() is preferred as it is in ANSI standard.
1.126 +
1.127 +@publishedAll
1.128 +@released
1.129 +*/
1.130 +
1.131 +
1.132 +/** @def IN6_IS_ADDR_UNSPECIFIED(a)
1.133 +
1.134 +Unspecified
1.135 +
1.136 +@publishedAll
1.137 +@released
1.138 +*/
1.139 +
1.140 +
1.141 +/** @def IN6_IS_ADDR_LOOPBACK(a)
1.142 +
1.143 +Loopback
1.144 +
1.145 +@publishedAll
1.146 +@released
1.147 +*/
1.148 +
1.149 +
1.150 +/** @def IN6_IS_ADDR_V4COMPAT(a)
1.151 +
1.152 +IPv4 compatible
1.153 +
1.154 +@publishedAll
1.155 +@released
1.156 +*/
1.157 +
1.158 +
1.159 +/** @def IN6_IS_ADDR_V4MAPPED(a)
1.160 +
1.161 +Mapped
1.162 +
1.163 +@publishedAll
1.164 +@released
1.165 +*/
1.166 +
1.167 +
1.168 +
1.169 +/** @def IN6_IS_ADDR_LINKLOCAL(a)
1.170 +
1.171 +Unicast Scope. Note that we must check topmost 10 bits only, not 16 bits (see RFC2373).
1.172 +
1.173 +@publishedAll
1.174 +@released
1.175 +*/
1.176 +
1.177 +
1.178 +/** @def IN6_IS_ADDR_MC_NODELOCAL(a)
1.179 +
1.180 +Multicast Scope
1.181 +
1.182 +@publishedAll
1.183 +@released
1.184 +*/
1.185 +
1.186 +
1.187 +/** @def IN6_IS_ADDR_MC_LINKLOCAL(a)
1.188 +
1.189 +Multicast Scope
1.190 +
1.191 +@publishedAll
1.192 +@released
1.193 +*/
1.194 +
1.195 +
1.196 +/** @def IN6_IS_ADDR_MC_SITELOCAL(a)
1.197 +
1.198 +Multicast Scope
1.199 +
1.200 +@publishedAll
1.201 +@released
1.202 +*/
1.203 +
1.204 +
1.205 +/** @def IN6_IS_ADDR_MC_ORGLOCAL(a)
1.206 +
1.207 +Multicast Scope
1.208 +
1.209 +@publishedAll
1.210 +@released
1.211 +*/
1.212 +
1.213 +/** @def IN6_IS_ADDR_MC_GLOBAL(a)
1.214 +
1.215 +Multicast Scope
1.216 +
1.217 +@publishedAll
1.218 +@released
1.219 +*/
1.220 +
1.221 +
1.222 +
1.223 +/** @def IPV6_UNICAST_HOPS
1.224 +
1.225 +int; IP6 hops
1.226 +
1.227 +@publishedAll
1.228 +@externallyDefinedApi
1.229 +*/
1.230 +
1.231 +
1.232 +/** @def IPV6_MULTICAST_IF
1.233 +
1.234 +u_int; set or get IP6 multicast if
1.235 +
1.236 +@publishedAll
1.237 +@externallyDefinedApi
1.238 +*/
1.239 +
1.240 +
1.241 +/** @def IPV6_MULTICAST_HOPS
1.242 +
1.243 +int; set or get IP6 multicast hops
1.244 +
1.245 +@publishedAll
1.246 +@externallyDefinedApi
1.247 +*/
1.248 +
1.249 +
1.250 +/** @def IPV6_MULTICAST_LOOP
1.251 +
1.252 +u_int; set or get IP6 multicast loopback
1.253 +
1.254 +@publishedAll
1.255 +@externallyDefinedApi
1.256 +*/
1.257 +
1.258 +
1.259 +
1.260 +/** @struct ipv6_mreq
1.261 +
1.262 +Argument structure for IPV6_JOIN_GROUP and IPV6_LEAVE_GROUP.
1.263 +
1.264 +@publishedAll
1.265 +@externallyDefinedApi
1.266 +*/
1.267 +
1.268 +
1.269 +/** @def IPV6_SOCKOPT_RESERVED1
1.270 +
1.271 +reserved for future use
1.272 +
1.273 +@publishedAll
1.274 +@released
1.275 +*/
1.276 +
1.277 +/** @def IPV6_JOIN_GROUP
1.278 +
1.279 +ip6_mreq; join a group membership
1.280 +
1.281 +@publishedAll
1.282 +@released
1.283 +*/
1.284 +
1.285 +
1.286 +/** @def IPV6_LEAVE_GROUP
1.287 +
1.288 +ip6_mreq; leave a group membership
1.289 +
1.290 +@publishedAll
1.291 +@released
1.292 +*/
1.293 +
1.294 +
1.295 +/** @def IPV6_PORTRANGE
1.296 +
1.297 +int; range to choose for unspec port
1.298 +
1.299 +@publishedAll
1.300 +@released
1.301 +*/
1.302 +
1.303 +
1.304 +/** @def ICMP6_FILTER
1.305 +
1.306 +icmp6_filter; icmp6 filter
1.307 +
1.308 +@publishedAll
1.309 +@released
1.310 +*/
1.311 +
1.312 +
1.313 +
1.314 +/** @def IPV6_RTHDRDSTOPTS
1.315 +
1.316 +ip6_dest; send dst option before rthdr
1.317 +
1.318 +@publishedAll
1.319 +@released
1.320 +*/
1.321 +
1.322 +
1.323 +/** @def IPV6_RECVPKTINFO
1.324 +
1.325 +bool; recv if, dst addr
1.326 +
1.327 +@publishedAll
1.328 +@released
1.329 +*/
1.330 +
1.331 +
1.332 +
1.333 +/** @def IPV6_RECVHOPLIMIT
1.334 +
1.335 +bool; recv hop limit
1.336 +
1.337 +@publishedAll
1.338 +@released
1.339 +*/
1.340 +
1.341 +
1.342 +/** @def IPV6_RECVRTHDR
1.343 +
1.344 +bool; recv routing header
1.345 +
1.346 +@publishedAll
1.347 +@released
1.348 +*/
1.349 +
1.350 +
1.351 +
1.352 +/** @def IPV6_RECVHOPOPTS
1.353 +
1.354 +bool; recv hop-by-hop option
1.355 +
1.356 +@publishedAll
1.357 +@released
1.358 +*/
1.359 +
1.360 +
1.361 +/** @def IPV6_RECVPKTINFO
1.362 +
1.363 +bool; recv if, dst addr
1.364 +
1.365 +@publishedAll
1.366 +@released
1.367 +*/
1.368 +
1.369 +
1.370 +/** @def IPV6_RECVHOPLIMIT
1.371 +
1.372 +bool; recv hop limit
1.373 +
1.374 +@publishedAll
1.375 +@released
1.376 +*/
1.377 +
1.378 +/** @def IPV6_RECVRTHDR
1.379 +
1.380 +bool; recv routing header
1.381 +
1.382 +@publishedAll
1.383 +@released
1.384 +*/
1.385 +
1.386 +/** @def IPV6_RECVHOPOPTS
1.387 +
1.388 +bool; recv hop-by-hop option
1.389 +
1.390 +@publishedAll
1.391 +@released
1.392 +*/
1.393 +
1.394 +
1.395 +/** @def IPV6_RECVDSTOPTS
1.396 +
1.397 +bool; recv dst option after rthdr
1.398 +
1.399 +@publishedAll
1.400 +@released
1.401 +*/
1.402 +
1.403 +
1.404 +/** @def IPV6_USE_MIN_MTU
1.405 +
1.406 +bool; send packets at the minimum MTU
1.407 +
1.408 +@publishedAll
1.409 +@released
1.410 +*/
1.411 +
1.412 +
1.413 +
1.414 +/** @def IPV6_RECVPATHMTU
1.415 +
1.416 +bool; notify an according MTU
1.417 +
1.418 +@publishedAll
1.419 +@released
1.420 +*/
1.421 +
1.422 +
1.423 +
1.424 +/** @def IPV6_PATHMTU
1.425 +
1.426 +mtuinfo; get the current path MTU (sopt), 4 bytes int; MTU notification (cmsg)
1.427 +@publishedAll
1.428 +@released
1.429 +*/
1.430 +
1.431 +
1.432 +/** @def IPV6_PKTINFO
1.433 +
1.434 +in6_pktinfo; send if, src addr
1.435 +
1.436 +@publishedAll
1.437 +@released
1.438 +*/
1.439 +
1.440 +/** @def IPV6_HOPLIMIT
1.441 +
1.442 +int; send hop limit
1.443 +
1.444 +@publishedAll
1.445 +@released
1.446 +*/
1.447 +
1.448 +
1.449 +/** @def IPV6_NEXTHOP
1.450 +
1.451 +sockaddr; next hop addr
1.452 +
1.453 +@publishedAll
1.454 +@released
1.455 +*/
1.456 +
1.457 +/** @def IPV6_DSTOPTS
1.458 +
1.459 +ip6_dest; send dst option befor rthdr
1.460 +
1.461 +@publishedAll
1.462 +@released
1.463 +*/
1.464 +
1.465 +
1.466 +/** @def IPV6_RTHDR
1.467 +
1.468 +new socket options introduced in RFC3542. ip6_dest; send dst option before rthdr
1.469 +
1.470 +@publishedAll
1.471 +@released
1.472 +*/
1.473 +
1.474 +
1.475 +/** @def IPV6_PORTRANGE_DEFAULT
1.476 +
1.477 +Argument for IPV6_PORTRANGE: - which range to search when port is unspecified at bind() or connect(). default range.
1.478 +
1.479 +@publishedAll
1.480 +@released
1.481 +*/
1.482 +
1.483 +
1.484 +/** @def IPV6_PORTRANGE_HIGH
1.485 +
1.486 +Argument for IPV6_PORTRANGE: - which range to search when port is unspecified at bind() or connect()."high" - request firewall bypass
1.487 +
1.488 +@publishedAll
1.489 +@released
1.490 +*/
1.491 +
1.492 +
1.493 +/** @def IPV6_PORTRANGE_LOW
1.494 +
1.495 +Argument for IPV6_PORTRANGE: - which range to search when port is unspecified at bind() or connect(). "low" - vouchsafe security
1.496 +
1.497 +@publishedAll
1.498 +@released
1.499 +*/
1.500 +
1.501 +
1.502 +/** @def IPV6PROTO_MAXID
1.503 +
1.504 +Definitions for inet6 sysctl operations.
1.505 +
1.506 +@publishedAll
1.507 +@released
1.508 +*/
1.509 +
1.510 +
1.511 +/** @def IPV6CTL_FORWARDING
1.512 +
1.513 +Names for IP sysctl objects. act as router.
1.514 +
1.515 +@publishedAll
1.516 +@externallyDefinedApi
1.517 +*/
1.518 +
1.519 +
1.520 +/** @def IPV6CTL_RTEXPIRE
1.521 +
1.522 +cloned route expiration time
1.523 +
1.524 +@publishedAll
1.525 +@externallyDefinedApi
1.526 +*/
1.527 +
1.528 +
1.529 +/** @def IPV6CTL_RTMINEXPIRE
1.530 +
1.531 +min value for expiration time
1.532 +
1.533 +@publishedAll
1.534 +@externallyDefinedApi
1.535 +*/
1.536 +
1.537 +/** @def IPV6CTL_RTMAXCACHE
1.538 +
1.539 +trigger level for dynamic expire
1.540 +
1.541 +@publishedAll
1.542 +@externallyDefinedApi
1.543 +*/
1.544 +
1.545 +
1.546 +/** @def IPV6CTL_RR_PRUNE
1.547 +
1.548 +Names for IP sysctl objects. walk timer for router renumbering.
1.549 +
1.550 +@publishedAll
1.551 +@externallyDefinedApi
1.552 +*/
1.553 +
1.554 +
1.555 +/** @def IPV6CTL_USE_DEPRECATED
1.556 +
1.557 +Names for IP sysctl objects. use deprecated addr (RFC2462 5.5.4)
1.558 +
1.559 +@publishedAll
1.560 +@externallyDefinedApi
1.561 +*/
1.562 +
1.563 +/** @def IPV6CTL_KAME_VERSION
1.564 +
1.565 +Names for IP sysctl objects.
1.566 +
1.567 +@publishedAll
1.568 +@externallyDefinedApi
1.569 +*/
1.570 +
1.571 +
1.572 +/** @def IPV6CTL_GIF_HLIM
1.573 +
1.574 +Names for IP sysctl objects. default HLIM for gif encap packet.
1.575 +
1.576 +@publishedAll
1.577 +@externallyDefinedApi
1.578 +*/
1.579 +
1.580 +/** @def IPV6CTL_DEFMCASTHLIM
1.581 +
1.582 +Names for IP sysctl objects.
1.583 +
1.584 +@publishedAll
1.585 +@externallyDefinedApi
1.586 +*/
1.587 +
1.588 +
1.589 +/** @def IPV6CTL_DAD_COUNT
1.590 +
1.591 +Names for IP sysctl objects.
1.592 +
1.593 +@publishedAll
1.594 +@externallyDefinedApi
1.595 +*/
1.596 +
1.597 +/** @def IPV6CTL_AUTO_FLOWLABEL
1.598 +
1.599 +Names for IP sysctl objects.
1.600 +
1.601 +@publishedAll
1.602 +@externallyDefinedApi
1.603 +*/
1.604 +
1.605 +
1.606 +/** @def IPV6CTL_KEEPFAITH
1.607 +
1.608 +Names for IP sysctl objects.
1.609 +
1.610 +@publishedAll
1.611 +@externallyDefinedApi
1.612 +*/
1.613 +
1.614 +
1.615 +/** @def IPV6CTL_LOG_INTERVAL
1.616 +
1.617 +Names for IP sysctl objects.
1.618 +
1.619 +@publishedAll
1.620 +@externallyDefinedApi
1.621 +*/
1.622 +
1.623 +
1.624 +/** @def IPV6CTL_HDRNESTLIMIT
1.625 +
1.626 +Names for IP sysctl objects.
1.627 +
1.628 +@publishedAll
1.629 +@externallyDefinedApi
1.630 +*/
1.631 +
1.632 +
1.633 +/** @def IPV6CTL_SENDREDIRECTS
1.634 +
1.635 +Names for IP sysctl objects. may send redirects when forwarding.
1.636 +
1.637 +@publishedAll
1.638 +@externallyDefinedApi
1.639 +*/
1.640 +
1.641 +/** @def IPV6CTL_DEFHLIM
1.642 +
1.643 +Names for IP sysctl objects. default Hop-Limit.
1.644 +
1.645 +@publishedAll
1.646 +@externallyDefinedApi
1.647 +*/
1.648 +
1.649 +
1.650 +/** @def IPV6CTL_MAXFRAGPACKETS
1.651 +
1.652 +max packets reassembly queue
1.653 +
1.654 +@publishedAll
1.655 +@externallyDefinedApi
1.656 +*/
1.657 +
1.658 +
1.659 +/** @def IPV6CTL_ACCEPT_RTADV
1.660 +
1.661 +Names for IP sysctl objects
1.662 +
1.663 +@publishedAll
1.664 +@externallyDefinedApi
1.665 +*/
1.666 +
1.667 +
1.668 +/** @def IPV6CTL_FORWSRCRT
1.669 +
1.670 +forward source-routed dgrams
1.671 +
1.672 +@publishedAll
1.673 +@released
1.674 +*/
1.675 +
1.676 +
1.677 +/** @def IPV6CTL_STATS
1.678 +
1.679 +stats
1.680 +
1.681 +@publishedAll
1.682 +@released
1.683 +*/
1.684 +
1.685 +/** @def IPV6CTL_MRTSTATS
1.686 +
1.687 +multicast forwarding stats
1.688 +
1.689 +@publishedAll
1.690 +@released
1.691 +*/
1.692 +
1.693 +
1.694 +/** @def IPV6CTL_MRTPROTO
1.695 +
1.696 +multicast routing protocol
1.697 +
1.698 +@publishedAll
1.699 +@released
1.700 +*/
1.701 +
1.702 +
1.703 +
1.704 +/** @def IPV6CTL_SOURCECHECK
1.705 +
1.706 +verify source route and intf
1.707 +
1.708 +@publishedAll
1.709 +@released
1.710 +*/
1.711 +
1.712 +
1.713 +/** @def IPV6CTL_SOURCECHECK_LOGINT
1.714 +
1.715 +minimume logging interval
1.716 +
1.717 +@publishedAll
1.718 +@released
1.719 +*/
1.720 +
1.721 +
1.722 +/** @def IPV6CTL_V6ONLY
1.723 +
1.724 +cloned route expiration time
1.725 +
1.726 +@publishedAll
1.727 +@released
1.728 +*/
1.729 +
1.730 +/** @def IPV6CTL_USETEMPADDR
1.731 +
1.732 +use temporary addresses (RFC3041)
1.733 +
1.734 +@publishedAll
1.735 +@released
1.736 +*/
1.737 +
1.738 +
1.739 +/** @def IPV6CTL_TEMPPLTIME
1.740 +
1.741 +preferred lifetime for tmpaddrs
1.742 +
1.743 +@publishedAll
1.744 +@released
1.745 +*/
1.746 +
1.747 +
1.748 +/** @def IPV6CTL_TEMPVLTIME
1.749 +
1.750 +valid lifetime for tmpaddrs
1.751 +
1.752 +@publishedAll
1.753 +@released
1.754 +*/
1.755 +
1.756 +
1.757 +/** @def IPV6CTL_AUTO_LINKLOCAL
1.758 +
1.759 +automatic link-local addr assign
1.760 +
1.761 +@publishedAll
1.762 +@released
1.763 +*/
1.764 +
1.765 +
1.766 +/** @def IPV6CTL_RIP6STATS
1.767 +
1.768 +raw_ip6 stats
1.769 +
1.770 +@publishedAll
1.771 +@released
1.772 +*/
1.773 +
1.774 +
1.775 +/** @def IPV6CTL_PREFER_TEMPADDR
1.776 +
1.777 +prefer temporary addr as src
1.778 +
1.779 +@publishedAll
1.780 +@released
1.781 +*/
1.782 +
1.783 +
1.784 +/** @def IPV6CTL_ADDRCTLPOLICY
1.785 +
1.786 +get or set address selection policy
1.787 +
1.788 +@publishedAll
1.789 +@released
1.790 +*/
1.791 +
1.792 +
1.793 +/** @def IPV6CTL_MAXFRAGS
1.794 +
1.795 +max fragments
1.796 +
1.797 +@publishedAll
1.798 +@released
1.799 +*/
1.800 +
1.801 +
1.802 +/** @def IPV6CTL_STEALTH
1.803 +
1.804 +New entries should be added here from current IPV6CTL_MAXID value. to define items, should talk with KAME guys first, for BSD compatibility 42-44 is already used in KAME
1.805 +
1.806 +@publishedAll
1.807 +@released
1.808 +*/
1.809 +
1.810 +
1.811 +
1.812 +/** @def IPV6CTL_MAXID
1.813 +
1.814 +MAXID
1.815 +
1.816 +@publishedAll
1.817 +@released
1.818 +*/
1.819 +
1.820 +
1.821 +
1.822 +
1.823 +