| ... | ... | @@ -586,6 +586,92 @@ pub const IP_DEFAULT_MULTICAST_TTL = 1; |
| 586 | 586 | pub const IP_DEFAULT_MULTICAST_LOOP = 1; |
| 587 | 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 | 675 | pub const MSG_OOB = 0x0001; |
| 590 | 676 | pub const MSG_PEEK = 0x0002; |
| 591 | 677 | pub const MSG_DONTROUTE = 0x0004; |