os/ossrv/genericopenlibs/openenvcore/include/netinet6/in6.dosc
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 /** @file ../include/netinet6/in6.h
     2 @internalComponent
     3 */
     4 
     5 /** @struct in6_addr
     6 
     7 IPv6 address
     8 
     9 @publishedAll
    10 @externallyDefinedApi
    11 */
    12 
    13 /** @var in6_addr::__u6_addr
    14 128-bit IP6 address
    15 */
    16 
    17 /** @def  s6_addr
    18 
    19 __u6_addr.__u6_addr8
    20 
    21 @publishedAll
    22 @externallyDefinedApi
    23 */
    24 
    25 /** @def  INET6_ADDRSTRLEN
    26 
    27 INTET6 address length
    28 
    29 @publishedAll
    30 @externallyDefinedApi
    31 */
    32 
    33 /** @struct sockaddr_in6
    34 
    35 Socket address for IPv6
    36 
    37 @publishedAll
    38 @externallyDefinedApi
    39 */
    40 
    41 /** @var sockaddr_in6::sin6_family
    42 AF_INET6
    43 */
    44 
    45 /** @var sockaddr_in6::sin6_port
    46 Transport layer port X
    47 */
    48 
    49 /** @var sockaddr_in6::sin6_addr
    50 IP6 address 
    51 */
    52 
    53 /** @var sockaddr_in6::sin6_flowinfo
    54 IP6 flow information
    55 */
    56 
    57 /** @var sockaddr_in6::sin6_scope_id
    58 scope zone index 
    59 */
    60 
    61 /** @var sockaddr_in6::sin6_len
    62 length of this struct
    63 */
    64 
    65 
    66 /** @def IN6ADDR_ANY_INIT
    67 
    68 To handle IP6 addresses
    69 
    70 @publishedAll
    71 @released
    72 */
    73 
    74 
    75 /** @def IN6ADDR_LOOPBACK_INIT
    76 
    77 To handle IP6 addresses
    78 
    79 @publishedAll
    80 @released
    81 */
    82 
    83 
    84 /** @def IN6ADDR_NODELOCAL_ALLNODES_INIT 
    85 
    86 To handle IP6 addresses
    87 
    88 @publishedAll
    89 @released
    90 */
    91 
    92 
    93 /** @def IN6ADDR_INTFACELOCAL_ALLNODES_INIT 
    94 
    95 To handle IP6 addresses
    96 
    97 @publishedAll
    98 @released
    99 */
   100 
   101 
   102 /** @def IN6ADDR_LINKLOCAL_ALLNODES_INIT 
   103 
   104 To handle IP6 addresses
   105 
   106 @publishedAll
   107 @released
   108 */
   109 
   110 
   111 /** @def IN6ADDR_LINKLOCAL_ALLROUTERS_INIT 
   112 
   113 To handle IP6 addresses
   114 
   115 @publishedAll
   116 @released
   117 */
   118 
   119 
   120 /** @def IN6_ARE_ADDR_EQUAL(a, b)
   121 
   122 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.
   123 
   124 @publishedAll
   125 @released
   126 */
   127 
   128 
   129 /** @def IN6_IS_ADDR_UNSPECIFIED(a)
   130 
   131 Unspecified
   132 
   133 @publishedAll
   134 @released
   135 */
   136 
   137 
   138 /** @def IN6_IS_ADDR_LOOPBACK(a)	
   139 
   140 Loopback
   141 
   142 @publishedAll
   143 @released
   144 */
   145 
   146 
   147 /** @def IN6_IS_ADDR_V4COMPAT(a)
   148 
   149 IPv4 compatible
   150 
   151 @publishedAll
   152 @released
   153 */
   154 
   155 
   156 /** @def IN6_IS_ADDR_V4MAPPED(a)	
   157 
   158 Mapped
   159 
   160 @publishedAll
   161 @released
   162 */
   163 
   164 
   165 
   166 /** @def IN6_IS_ADDR_LINKLOCAL(a)
   167 
   168 Unicast Scope. Note that we must check topmost 10 bits only, not 16 bits (see RFC2373).
   169 
   170 @publishedAll
   171 @released
   172 */
   173 
   174 
   175 /** @def IN6_IS_ADDR_MC_NODELOCAL(a)
   176 
   177 Multicast Scope
   178 
   179 @publishedAll
   180 @released
   181 */
   182 
   183 
   184 /** @def IN6_IS_ADDR_MC_LINKLOCAL(a) 
   185 
   186 Multicast Scope
   187 
   188 @publishedAll
   189 @released
   190 */
   191 
   192 
   193 /** @def IN6_IS_ADDR_MC_SITELOCAL(a)
   194 
   195 Multicast Scope
   196 
   197 @publishedAll
   198 @released
   199 */
   200 
   201 
   202 /** @def IN6_IS_ADDR_MC_ORGLOCAL(a)
   203 
   204 Multicast Scope
   205 
   206 @publishedAll
   207 @released
   208 */
   209 
   210 /** @def IN6_IS_ADDR_MC_GLOBAL(a)
   211 
   212 Multicast Scope
   213 
   214 @publishedAll
   215 @released
   216 */
   217 
   218 
   219 
   220 /** @def  IPV6_UNICAST_HOPS
   221 
   222 int; IP6 hops
   223 	
   224 @publishedAll
   225 @externallyDefinedApi
   226 */
   227 
   228 
   229 /** @def  IPV6_MULTICAST_IF	
   230 
   231 u_int; set or get IP6 multicast if
   232 
   233 @publishedAll
   234 @externallyDefinedApi
   235 */
   236 
   237 
   238 /** @def  IPV6_MULTICAST_HOPS	
   239 
   240 int; set or get IP6 multicast hops 
   241 
   242 @publishedAll
   243 @externallyDefinedApi
   244 */
   245 
   246 
   247 /** @def  IPV6_MULTICAST_LOOP	
   248 
   249 u_int; set or get IP6 multicast loopback
   250 
   251 @publishedAll
   252 @externallyDefinedApi
   253 */
   254 
   255 
   256 
   257 /** @struct ipv6_mreq	
   258 
   259 Argument structure for IPV6_JOIN_GROUP and IPV6_LEAVE_GROUP.
   260 
   261 @publishedAll
   262 @externallyDefinedApi
   263 */
   264 
   265 
   266 /** @def IPV6_SOCKOPT_RESERVED1	
   267 
   268 reserved for future use
   269 
   270 @publishedAll
   271 @released
   272 */
   273 
   274 /** @def IPV6_JOIN_GROUP	
   275 
   276 ip6_mreq; join a group membership
   277 	
   278 @publishedAll
   279 @released
   280 */
   281 
   282 
   283 /** @def IPV6_LEAVE_GROUP	
   284 
   285 ip6_mreq; leave a group membership 
   286 
   287 @publishedAll
   288 @released
   289 */
   290 
   291 
   292 /** @def IPV6_PORTRANGE		
   293 
   294 int; range to choose for unspec port
   295 
   296 @publishedAll
   297 @released
   298 */
   299 
   300 
   301 /** @def ICMP6_FILTER		
   302 
   303 icmp6_filter; icmp6 filter
   304 
   305 @publishedAll
   306 @released
   307 */
   308 
   309 
   310 
   311 /** @def IPV6_RTHDRDSTOPTS	
   312 
   313 ip6_dest; send dst option before rthdr
   314 
   315 @publishedAll
   316 @released
   317 */
   318 
   319 
   320 /** @def IPV6_RECVPKTINFO	
   321 
   322 bool; recv if, dst addr 
   323 
   324 @publishedAll
   325 @released
   326 */
   327 
   328 
   329 
   330 /** @def IPV6_RECVHOPLIMIT	
   331 
   332 bool; recv hop limit
   333 
   334 @publishedAll
   335 @released
   336 */
   337 
   338 
   339 /** @def IPV6_RECVRTHDR		
   340 
   341 bool; recv routing header
   342 
   343 @publishedAll
   344 @released
   345 */
   346 
   347 
   348 
   349 /** @def IPV6_RECVHOPOPTS	
   350 
   351 bool; recv hop-by-hop option
   352 
   353 @publishedAll
   354 @released
   355 */
   356 
   357 
   358 /** @def IPV6_RECVPKTINFO	
   359 
   360 bool; recv if, dst addr
   361 
   362 @publishedAll
   363 @released
   364 */
   365 
   366 
   367 /** @def IPV6_RECVHOPLIMIT	
   368 
   369 bool; recv hop limit
   370 
   371 @publishedAll
   372 @released
   373 */
   374 
   375 /** @def IPV6_RECVRTHDR		
   376 
   377 bool; recv routing header 
   378 
   379 @publishedAll
   380 @released
   381 */
   382 
   383 /** @def IPV6_RECVHOPOPTS	
   384 
   385 bool; recv hop-by-hop option
   386 
   387 @publishedAll
   388 @released
   389 */
   390 
   391 
   392 /** @def IPV6_RECVDSTOPTS	
   393 
   394 bool; recv dst option after rthdr
   395 
   396 @publishedAll
   397 @released
   398 */
   399 
   400 
   401 /** @def IPV6_USE_MIN_MTU	
   402 
   403 bool; send packets at the minimum MTU
   404 
   405 @publishedAll
   406 @released
   407 */
   408 
   409 
   410 
   411 /** @def IPV6_RECVPATHMTU	
   412 
   413 bool; notify an according MTU
   414 
   415 @publishedAll
   416 @released
   417 */
   418 
   419 
   420 
   421 /** @def IPV6_PATHMTU		
   422 
   423 mtuinfo; get the current path MTU (sopt), 4 bytes int; MTU notification (cmsg)
   424 @publishedAll
   425 @released
   426 */
   427 
   428 
   429 /** @def IPV6_PKTINFO		
   430 
   431 in6_pktinfo; send if, src addr
   432 
   433 @publishedAll
   434 @released
   435 */
   436 
   437 /** @def IPV6_HOPLIMIT	
   438 
   439 int; send hop limit
   440 
   441 @publishedAll
   442 @released
   443 */
   444 
   445 
   446 /** @def IPV6_NEXTHOP		
   447 
   448 sockaddr; next hop addr 
   449 
   450 @publishedAll
   451 @released
   452 */
   453 
   454 /** @def IPV6_DSTOPTS		
   455 
   456 ip6_dest; send dst option befor rthdr
   457 
   458 @publishedAll
   459 @released
   460 */
   461 
   462 
   463 /** @def IPV6_RTHDR		
   464 
   465 new socket options introduced in RFC3542. ip6_dest; send dst option before rthdr
   466 
   467 @publishedAll
   468 @released
   469 */
   470 
   471 
   472 /** @def IPV6_PORTRANGE_DEFAULT	
   473 
   474 Argument for IPV6_PORTRANGE: - which range to search when port is unspecified at bind() or connect(). default range.
   475 
   476 @publishedAll
   477 @released
   478 */
   479 
   480 
   481 /** @def IPV6_PORTRANGE_HIGH	
   482 
   483 Argument for IPV6_PORTRANGE: - which range to search when port is unspecified at bind() or connect()."high" - request firewall bypass
   484 
   485 @publishedAll
   486 @released
   487 */
   488 
   489 
   490 /** @def IPV6_PORTRANGE_LOW	
   491 
   492 Argument for IPV6_PORTRANGE: - which range to search when port is unspecified at bind() or connect(). "low" - vouchsafe security
   493 
   494 @publishedAll
   495 @released
   496 */
   497 
   498 
   499 /** @def IPV6PROTO_MAXID	
   500 
   501 Definitions for inet6 sysctl operations.
   502 
   503 @publishedAll
   504 @released
   505 */
   506 
   507 
   508 /** @def  IPV6CTL_FORWARDING	
   509 
   510 Names for IP sysctl objects. act as router.
   511 
   512 @publishedAll
   513 @externallyDefinedApi
   514 */
   515 
   516 
   517 /** @def  IPV6CTL_RTEXPIRE	
   518 
   519 cloned route expiration time
   520 
   521 @publishedAll
   522 @externallyDefinedApi
   523 */
   524 
   525 
   526 /** @def  IPV6CTL_RTMINEXPIRE	
   527 
   528 min value for expiration time
   529 
   530 @publishedAll
   531 @externallyDefinedApi
   532 */
   533 
   534 /** @def  IPV6CTL_RTMAXCACHE	
   535 
   536 trigger level for dynamic expire 
   537 
   538 @publishedAll
   539 @externallyDefinedApi
   540 */
   541 
   542 
   543 /** @def  IPV6CTL_RR_PRUNE	
   544 
   545 Names for IP sysctl objects. walk timer for router renumbering.
   546 
   547 @publishedAll
   548 @externallyDefinedApi
   549 */
   550 
   551 
   552 /** @def  IPV6CTL_USE_DEPRECATED	
   553 
   554 Names for IP sysctl objects. use deprecated addr (RFC2462 5.5.4)
   555 
   556 @publishedAll
   557 @externallyDefinedApi
   558 */
   559 
   560 /** @def  IPV6CTL_KAME_VERSION	
   561 
   562 Names for IP sysctl objects. 
   563 
   564 @publishedAll
   565 @externallyDefinedApi
   566 */
   567 
   568 
   569 /** @def  IPV6CTL_GIF_HLIM	
   570 
   571 Names for IP sysctl objects. default HLIM for gif encap packet.
   572 
   573 @publishedAll
   574 @externallyDefinedApi
   575 */
   576 
   577 /** @def  IPV6CTL_DEFMCASTHLIM		
   578 
   579 Names for IP sysctl objects. 
   580 
   581 @publishedAll
   582 @externallyDefinedApi
   583 */
   584 
   585 
   586 /** @def  IPV6CTL_DAD_COUNT	
   587 
   588 Names for IP sysctl objects. 
   589 
   590 @publishedAll
   591 @externallyDefinedApi
   592 */
   593 
   594 /** @def  IPV6CTL_AUTO_FLOWLABEL
   595 
   596 Names for IP sysctl objects. 
   597 	
   598 @publishedAll
   599 @externallyDefinedApi
   600 */
   601 
   602 
   603 /** @def  IPV6CTL_KEEPFAITH	
   604 
   605 Names for IP sysctl objects. 
   606 
   607 @publishedAll
   608 @externallyDefinedApi
   609 */
   610 
   611 
   612 /** @def  IPV6CTL_LOG_INTERVAL	
   613 
   614 Names for IP sysctl objects. 
   615 
   616 @publishedAll
   617 @externallyDefinedApi
   618 */
   619 
   620 
   621 /** @def  IPV6CTL_HDRNESTLIMIT	
   622 
   623 Names for IP sysctl objects. 
   624 
   625 @publishedAll
   626 @externallyDefinedApi
   627 */
   628 
   629 
   630 /** @def  IPV6CTL_SENDREDIRECTS	
   631 
   632 Names for IP sysctl objects. may send redirects when forwarding.
   633 
   634 @publishedAll
   635 @externallyDefinedApi
   636 */
   637 
   638 /** @def  IPV6CTL_DEFHLIM	
   639 
   640 Names for IP sysctl objects. default Hop-Limit.
   641 	
   642 @publishedAll
   643 @externallyDefinedApi
   644 */
   645 
   646 
   647 /** @def  IPV6CTL_MAXFRAGPACKETS	
   648 
   649 max packets reassembly queue
   650 
   651 @publishedAll
   652 @externallyDefinedApi
   653 */
   654 
   655 
   656 /** @def  IPV6CTL_ACCEPT_RTADV	
   657 
   658 Names for IP sysctl objects
   659 
   660 @publishedAll
   661 @externallyDefinedApi
   662 */
   663 
   664 
   665 /** @def IPV6CTL_FORWSRCRT	
   666 
   667 forward source-routed dgrams
   668 
   669 @publishedAll
   670 @released
   671 */
   672 
   673 
   674 /** @def IPV6CTL_STATS		
   675 
   676 stats
   677 
   678 @publishedAll
   679 @released
   680 */
   681 
   682 /** @def IPV6CTL_MRTSTATS	
   683 
   684 multicast forwarding stats
   685 
   686 @publishedAll
   687 @released
   688 */
   689 
   690 
   691 /** @def IPV6CTL_MRTPROTO	
   692 
   693 multicast routing protocol
   694 
   695 @publishedAll
   696 @released
   697 */
   698 
   699 
   700 
   701 /** @def IPV6CTL_SOURCECHECK	
   702 
   703 verify source route and intf 
   704 
   705 @publishedAll
   706 @released
   707 */
   708 
   709 
   710 /** @def IPV6CTL_SOURCECHECK_LOGINT 
   711 
   712 minimume logging interval
   713 
   714 @publishedAll
   715 @released
   716 */
   717 
   718 
   719 /** @def IPV6CTL_V6ONLY		
   720 
   721 cloned route expiration time 
   722 
   723 @publishedAll
   724 @released
   725 */
   726 
   727 /** @def IPV6CTL_USETEMPADDR	
   728 
   729 use temporary addresses (RFC3041)
   730 
   731 @publishedAll
   732 @released
   733 */
   734 
   735 
   736 /** @def IPV6CTL_TEMPPLTIME	
   737 
   738 preferred lifetime for tmpaddrs
   739 
   740 @publishedAll
   741 @released
   742 */
   743 
   744 
   745 /** @def IPV6CTL_TEMPVLTIME	
   746 
   747 valid lifetime for tmpaddrs
   748 
   749 @publishedAll
   750 @released
   751 */
   752 
   753 
   754 /** @def IPV6CTL_AUTO_LINKLOCAL	
   755 
   756 automatic link-local addr assign
   757 
   758 @publishedAll
   759 @released
   760 */
   761 
   762 
   763 /** @def IPV6CTL_RIP6STATS	
   764 
   765 raw_ip6 stats
   766 
   767 @publishedAll
   768 @released
   769 */
   770 
   771 
   772 /** @def IPV6CTL_PREFER_TEMPADDR	
   773 
   774 prefer temporary addr as src
   775 
   776 @publishedAll
   777 @released
   778 */
   779 
   780 
   781 /** @def IPV6CTL_ADDRCTLPOLICY	
   782 
   783 get or set address selection policy
   784 
   785 @publishedAll
   786 @released
   787 */
   788 
   789 
   790 /** @def IPV6CTL_MAXFRAGS	
   791 
   792 max fragments
   793 
   794 @publishedAll
   795 @released
   796 */
   797 
   798 
   799 /** @def IPV6CTL_STEALTH	
   800 
   801 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 	
   802 
   803 @publishedAll
   804 @released
   805 */
   806 
   807 
   808 
   809 /** @def IPV6CTL_MAXID		
   810 
   811 MAXID
   812 
   813 @publishedAll
   814 @released
   815 */
   816 
   817 
   818 
   819 
   820