| ... | @@ -586,6 +586,92 @@ pub const IP_DEFAULT_MULTICAST_TTL = 1; | ... | @@ -586,6 +586,92 @@ pub const IP_DEFAULT_MULTICAST_TTL = 1; |
| 586 | pub const IP_DEFAULT_MULTICAST_LOOP = 1; | 586 | pub const IP_DEFAULT_MULTICAST_LOOP = 1; |
| 587 | pub const IP_MAX_MEMBERSHIPS = 20; | 587 | pub const IP_MAX_MEMBERSHIPS = 20; |
| 588 | | 588 | |
| | 589 | // IPv6 socket options |
| | 590 | |
| | 591 | pub const IPV6_ADDRFORM = 1; |
| | 592 | pub const IPV6_2292PKTINFO = 2; |
| | 593 | pub const IPV6_2292HOPOPTS = 3; |
| | 594 | pub const IPV6_2292DSTOPTS = 4; |
| | 595 | pub const IPV6_2292RTHDR = 5; |
| | 596 | pub const IPV6_2292PKTOPTIONS = 6; |
| | 597 | pub const IPV6_CHECKSUM = 7; |
| | 598 | pub const IPV6_2292HOPLIMIT = 8; |
| | 599 | pub const IPV6_NEXTHOP = 9; |
| | 600 | pub const IPV6_AUTHHDR = 10; |
| | 601 | pub const IPV6_FLOWINFO = 11; |
| | 602 | |
| | 603 | pub const IPV6_UNICAST_HOPS = 16; |
| | 604 | pub const IPV6_MULTICAST_IF = 17; |
| | 605 | pub const IPV6_MULTICAST_HOPS = 18; |
| | 606 | pub const IPV6_MULTICAST_LOOP = 19; |
| | 607 | pub const IPV6_ADD_MEMBERSHIP = 20; |
| | 608 | pub const IPV6_DROP_MEMBERSHIP = 21; |
| | 609 | pub const IPV6_ROUTER_ALERT = 22; |
| | 610 | pub const IPV6_MTU_DISCOVER = 23; |
| | 611 | pub const IPV6_MTU = 24; |
| | 612 | pub const IPV6_RECVERR = 25; |
| | 613 | pub const IPV6_V6ONLY = 26; |
| | 614 | pub const IPV6_JOIN_ANYCAST = 27; |
| | 615 | pub const IPV6_LEAVE_ANYCAST = 28; |
| | 616 | |
| | 617 | // IPV6_MTU_DISCOVER values |
| | 618 | pub const IPV6_PMTUDISC_DONT = 0; |
| | 619 | pub const IPV6_PMTUDISC_WANT = 1; |
| | 620 | pub const IPV6_PMTUDISC_DO = 2; |
| | 621 | pub const IPV6_PMTUDISC_PROBE = 3; |
| | 622 | pub const IPV6_PMTUDISC_INTERFACE = 4; |
| | 623 | pub const IPV6_PMTUDISC_OMIT = 5; |
| | 624 | |
| | 625 | // Flowlabel |
| | 626 | pub const IPV6_FLOWLABEL_MGR = 32; |
| | 627 | pub const IPV6_FLOWINFO_SEND = 33; |
| | 628 | pub const IPV6_IPSEC_POLICY = 34; |
| | 629 | pub const IPV6_XFRM_POLICY = 35; |
| | 630 | pub const IPV6_HDRINCL = 36; |
| | 631 | |
| | 632 | // Advanced API (RFC3542) (1) |
| | 633 | pub const IPV6_RECVPKTINFO = 49; |
| | 634 | pub const IPV6_PKTINFO = 50; |
| | 635 | pub const IPV6_RECVHOPLIMIT = 51; |
| | 636 | pub const IPV6_HOPLIMIT = 52; |
| | 637 | pub const IPV6_RECVHOPOPTS = 53; |
| | 638 | pub const IPV6_HOPOPTS = 54; |
| | 639 | pub const IPV6_RTHDRDSTOPTS = 55; |
| | 640 | pub const IPV6_RECVRTHDR = 56; |
| | 641 | pub const IPV6_RTHDR = 57; |
| | 642 | pub const IPV6_RECVDSTOPTS = 58; |
| | 643 | pub const IPV6_DSTOPTS = 59; |
| | 644 | pub const IPV6_RECVPATHMTU = 60; |
| | 645 | pub const IPV6_PATHMTU = 61; |
| | 646 | pub const IPV6_DONTFRAG = 62; |
| | 647 | |
| | 648 | // Advanced API (RFC3542) (2) |
| | 649 | pub const IPV6_RECVTCLASS = 66; |
| | 650 | pub const IPV6_TCLASS = 67; |
| | 651 | |
| | 652 | pub const IPV6_AUTOFLOWLABEL = 70; |
| | 653 | |
| | 654 | // RFC5014: Source address selection |
| | 655 | pub const IPV6_ADDR_PREFERENCES = 72; |
| | 656 | |
| | 657 | pub const IPV6_PREFER_SRC_TMP = 0x0001; |
| | 658 | pub const IPV6_PREFER_SRC_PUBLIC = 0x0002; |
| | 659 | pub const IPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x0100; |
| | 660 | pub const IPV6_PREFER_SRC_COA = 0x0004; |
| | 661 | pub const IPV6_PREFER_SRC_HOME = 0x0400; |
| | 662 | pub const IPV6_PREFER_SRC_CGA = 0x0008; |
| | 663 | pub const IPV6_PREFER_SRC_NONCGA = 0x0800; |
| | 664 | |
| | 665 | // RFC5082: Generalized Ttl Security Mechanism |
| | 666 | pub const IPV6_MINHOPCOUNT = 73; |
| | 667 | |
| | 668 | pub const IPV6_ORIGDSTADDR = 74; |
| | 669 | pub const IPV6_RECVORIGDSTADDR = IPV6_ORIGDSTADDR; |
| | 670 | pub const IPV6_TRANSPARENT = 75; |
| | 671 | pub const IPV6_UNICAST_IF = 76; |
| | 672 | pub const IPV6_RECVFRAGSIZE = 77; |
| | 673 | pub const IPV6_FREEBIND = 78; |
| | 674 | |
| 589 | pub const MSG_OOB = 0x0001; | 675 | pub const MSG_OOB = 0x0001; |
| 590 | pub const MSG_PEEK = 0x0002; | 676 | pub const MSG_PEEK = 0x0002; |
| 591 | pub const MSG_DONTROUTE = 0x0004; | 677 | pub const MSG_DONTROUTE = 0x0004; |