@@ -768,22 +768,119 @@ pub const SCM_TIMESTAMP: ::c_int = SO_TIMESTAMP;
768
768
769
769
pub const SOCK_RAW : :: c_int = 3 ;
770
770
pub const SOCK_RDM : :: c_int = 4 ;
771
- pub const IP_MULTICAST_IF : :: c_int = 32 ;
772
- pub const IP_MULTICAST_TTL : :: c_int = 33 ;
773
- pub const IP_MULTICAST_LOOP : :: c_int = 34 ;
774
771
pub const IP_TOS : :: c_int = 1 ;
775
772
pub const IP_TTL : :: c_int = 2 ;
776
773
pub const IP_HDRINCL : :: c_int = 3 ;
774
+ pub const IP_OPTIONS : :: c_int = 4 ;
775
+ pub const IP_ROUTER_ALERT : :: c_int = 5 ;
776
+ pub const IP_RECVOPTS : :: c_int = 6 ;
777
+ pub const IP_RETOPTS : :: c_int = 7 ;
777
778
pub const IP_PKTINFO : :: c_int = 8 ;
779
+ pub const IP_PKTOPTIONS : :: c_int = 9 ;
778
780
pub const IP_MTU_DISCOVER : :: c_int = 10 ;
779
- pub const IP_RECVTOS : :: c_int = 13 ;
780
781
pub const IP_RECVERR : :: c_int = 11 ;
782
+ pub const IP_RECVTTL : :: c_int = 12 ;
783
+ pub const IP_RECVTOS : :: c_int = 13 ;
784
+ pub const IP_MTU : :: c_int = 14 ;
781
785
pub const IP_FREEBIND : :: c_int = 15 ;
786
+ pub const IP_IPSEC_POLICY : :: c_int = 16 ;
787
+ pub const IP_XFRM_POLICY : :: c_int = 17 ;
788
+ pub const IP_PASSSEC : :: c_int = 18 ;
789
+ pub const IP_TRANSPARENT : :: c_int = 19 ;
790
+ pub const IP_ORIGDSTADDR : :: c_int = 20 ;
791
+ pub const IP_RECVORIGDSTADDR : :: c_int = IP_ORIGDSTADDR ;
792
+ pub const IP_MINTTL : :: c_int = 21 ;
793
+ pub const IP_NODEFRAG : :: c_int = 22 ;
794
+ pub const IP_CHECKSUM : :: c_int = 23 ;
795
+ pub const IP_BIND_ADDRESS_NO_PORT : :: c_int = 24 ;
796
+ pub const IP_MULTICAST_IF : :: c_int = 32 ;
797
+ pub const IP_MULTICAST_TTL : :: c_int = 33 ;
798
+ pub const IP_MULTICAST_LOOP : :: c_int = 34 ;
782
799
pub const IP_ADD_MEMBERSHIP : :: c_int = 35 ;
783
800
pub const IP_DROP_MEMBERSHIP : :: c_int = 36 ;
801
+ pub const IP_UNBLOCK_SOURCE : :: c_int = 37 ;
802
+ pub const IP_BLOCK_SOURCE : :: c_int = 38 ;
784
803
pub const IP_ADD_SOURCE_MEMBERSHIP : :: c_int = 39 ;
785
804
pub const IP_DROP_SOURCE_MEMBERSHIP : :: c_int = 40 ;
786
- pub const IP_TRANSPARENT : :: c_int = 19 ;
805
+ pub const IP_MSFILTER : :: c_int = 41 ;
806
+ pub const IP_MULTICAST_ALL : :: c_int = 49 ;
807
+ pub const IP_UNICAST_IF : :: c_int = 50 ;
808
+
809
+ pub const IP_DEFAULT_MULTICAST_TTL : :: c_int = 1 ;
810
+ pub const IP_DEFAULT_MULTICAST_LOOP : :: c_int = 1 ;
811
+
812
+ pub const IP_PMTUDISC_DONT : :: c_int = 0 ;
813
+ pub const IP_PMTUDISC_WANT : :: c_int = 1 ;
814
+ pub const IP_PMTUDISC_DO : :: c_int = 2 ;
815
+ pub const IP_PMTUDISC_PROBE : :: c_int = 3 ;
816
+ pub const IP_PMTUDISC_INTERFACE : :: c_int = 4 ;
817
+ pub const IP_PMTUDISC_OMIT : :: c_int = 5 ;
818
+
819
+ // IPPROTO_IP defined in src/unix/mod.rs
820
+ /// Hop-by-hop option header
821
+ pub const IPPROTO_HOPOPTS : :: c_int = 0 ;
822
+ // IPPROTO_ICMP defined in src/unix/mod.rs
823
+ /// group mgmt protocol
824
+ pub const IPPROTO_IGMP : :: c_int = 2 ;
825
+ /// for compatibility
826
+ pub const IPPROTO_IPIP : :: c_int = 4 ;
827
+ // IPPROTO_TCP defined in src/unix/mod.rs
828
+ /// exterior gateway protocol
829
+ pub const IPPROTO_EGP : :: c_int = 8 ;
830
+ /// pup
831
+ pub const IPPROTO_PUP : :: c_int = 12 ;
832
+ // IPPROTO_UDP defined in src/unix/mod.rs
833
+ /// xns idp
834
+ pub const IPPROTO_IDP : :: c_int = 22 ;
835
+ /// tp-4 w/ class negotiation
836
+ pub const IPPROTO_TP : :: c_int = 29 ;
837
+ /// DCCP
838
+ pub const IPPROTO_DCCP : :: c_int = 33 ;
839
+ // IPPROTO_IPV6 defined in src/unix/mod.rs
840
+ /// IP6 routing header
841
+ pub const IPPROTO_ROUTING : :: c_int = 43 ;
842
+ /// IP6 fragmentation header
843
+ pub const IPPROTO_FRAGMENT : :: c_int = 44 ;
844
+ /// resource reservation
845
+ pub const IPPROTO_RSVP : :: c_int = 46 ;
846
+ /// General Routing Encap.
847
+ pub const IPPROTO_GRE : :: c_int = 47 ;
848
+ /// IP6 Encap Sec. Payload
849
+ pub const IPPROTO_ESP : :: c_int = 50 ;
850
+ /// IP6 Auth Header
851
+ pub const IPPROTO_AH : :: c_int = 51 ;
852
+ // IPPROTO_ICMPV6 defined in src/unix/mod.rs
853
+ /// IP6 no next header
854
+ pub const IPPROTO_NONE : :: c_int = 59 ;
855
+ /// IP6 destination option
856
+ pub const IPPROTO_DSTOPTS : :: c_int = 60 ;
857
+ pub const IPPROTO_MTP : :: c_int = 92 ;
858
+ pub const IPPROTO_BEETPH : :: c_int = 94 ;
859
+ /// encapsulation header
860
+ pub const IPPROTO_ENCAP : :: c_int = 98 ;
861
+ /// Protocol indep. multicast
862
+ pub const IPPROTO_PIM : :: c_int = 103 ;
863
+ /// IP Payload Comp. Protocol
864
+ pub const IPPROTO_COMP : :: c_int = 108 ;
865
+ /// SCTP
866
+ pub const IPPROTO_SCTP : :: c_int = 132 ;
867
+ pub const IPPROTO_MH : :: c_int = 135 ;
868
+ pub const IPPROTO_UDPLITE : :: c_int = 136 ;
869
+ pub const IPPROTO_MPLS : :: c_int = 137 ;
870
+ /// raw IP packet
871
+ pub const IPPROTO_RAW : :: c_int = 255 ;
872
+ pub const IPPROTO_MAX : :: c_int = 256 ;
873
+
874
+ pub const MCAST_EXCLUDE : :: c_int = 0 ;
875
+ pub const MCAST_INCLUDE : :: c_int = 1 ;
876
+ pub const MCAST_JOIN_GROUP : :: c_int = 42 ;
877
+ pub const MCAST_BLOCK_SOURCE : :: c_int = 43 ;
878
+ pub const MCAST_UNBLOCK_SOURCE : :: c_int = 44 ;
879
+ pub const MCAST_LEAVE_GROUP : :: c_int = 45 ;
880
+ pub const MCAST_JOIN_SOURCE_GROUP : :: c_int = 46 ;
881
+ pub const MCAST_LEAVE_SOURCE_GROUP : :: c_int = 47 ;
882
+ pub const MCAST_MSFILTER : :: c_int = 48 ;
883
+
787
884
pub const IPV6_ADDRFORM : :: c_int = 1 ;
788
885
pub const IPV6_2292PKTINFO : :: c_int = 2 ;
789
886
pub const IPV6_2292HOPOPTS : :: c_int = 3 ;
@@ -793,6 +890,7 @@ pub const IPV6_2292PKTOPTIONS: ::c_int = 6;
793
890
pub const IPV6_CHECKSUM : :: c_int = 7 ;
794
891
pub const IPV6_2292HOPLIMIT : :: c_int = 8 ;
795
892
pub const IPV6_NEXTHOP : :: c_int = 9 ;
893
+ pub const IPV6_AUTHHDR : :: c_int = 10 ;
796
894
pub const IPV6_UNICAST_HOPS : :: c_int = 16 ;
797
895
pub const IPV6_MULTICAST_IF : :: c_int = 17 ;
798
896
pub const IPV6_MULTICAST_HOPS : :: c_int = 18 ;
@@ -806,16 +904,46 @@ pub const IPV6_RECVERR: ::c_int = 25;
806
904
pub const IPV6_V6ONLY : :: c_int = 26 ;
807
905
pub const IPV6_JOIN_ANYCAST : :: c_int = 27 ;
808
906
pub const IPV6_LEAVE_ANYCAST : :: c_int = 28 ;
907
+ pub const IPV6_IPSEC_POLICY : :: c_int = 34 ;
908
+ pub const IPV6_XFRM_POLICY : :: c_int = 35 ;
909
+ pub const IPV6_HDRINCL : :: c_int = 36 ;
809
910
pub const IPV6_RECVPKTINFO : :: c_int = 49 ;
810
911
pub const IPV6_PKTINFO : :: c_int = 50 ;
912
+ pub const IPV6_RECVHOPLIMIT : :: c_int = 51 ;
811
913
pub const IPV6_HOPLIMIT : :: c_int = 52 ;
914
+ pub const IPV6_RECVHOPOPTS : :: c_int = 53 ;
915
+ pub const IPV6_HOPOPTS : :: c_int = 54 ;
916
+ pub const IPV6_RTHDRDSTOPTS : :: c_int = 55 ;
917
+ pub const IPV6_RECVRTHDR : :: c_int = 56 ;
918
+ pub const IPV6_RTHDR : :: c_int = 57 ;
919
+ pub const IPV6_RECVDSTOPTS : :: c_int = 58 ;
920
+ pub const IPV6_DSTOPTS : :: c_int = 59 ;
921
+ pub const IPV6_RECVPATHMTU : :: c_int = 60 ;
922
+ pub const IPV6_PATHMTU : :: c_int = 61 ;
923
+ pub const IPV6_DONTFRAG : :: c_int = 62 ;
812
924
pub const IPV6_RECVTCLASS : :: c_int = 66 ;
813
925
pub const IPV6_TCLASS : :: c_int = 67 ;
814
-
815
- pub const IP_PMTUDISC_DONT : :: c_int = 0 ;
816
- pub const IP_PMTUDISC_WANT : :: c_int = 1 ;
817
- pub const IP_PMTUDISC_DO : :: c_int = 2 ;
818
- pub const IP_PMTUDISC_PROBE : :: c_int = 3 ;
926
+ pub const IPV6_AUTOFLOWLABEL : :: c_int = 70 ;
927
+ pub const IPV6_ADDR_PREFERENCES : :: c_int = 72 ;
928
+ pub const IPV6_MINHOPCOUNT : :: c_int = 73 ;
929
+ pub const IPV6_ORIGDSTADDR : :: c_int = 74 ;
930
+ pub const IPV6_RECVORIGDSTADDR : :: c_int = IPV6_ORIGDSTADDR ;
931
+ pub const IPV6_TRANSPARENT : :: c_int = 75 ;
932
+ pub const IPV6_UNICAST_IF : :: c_int = 76 ;
933
+ pub const IPV6_PREFER_SRC_TMP : :: c_int = 0x0001 ;
934
+ pub const IPV6_PREFER_SRC_PUBLIC : :: c_int = 0x0002 ;
935
+ pub const IPV6_PREFER_SRC_PUBTMP_DEFAULT : :: c_int = 0x0100 ;
936
+ pub const IPV6_PREFER_SRC_COA : :: c_int = 0x0004 ;
937
+ pub const IPV6_PREFER_SRC_HOME : :: c_int = 0x0400 ;
938
+ pub const IPV6_PREFER_SRC_CGA : :: c_int = 0x0008 ;
939
+ pub const IPV6_PREFER_SRC_NONCGA : :: c_int = 0x0800 ;
940
+
941
+ pub const IPV6_PMTUDISC_DONT : :: c_int = 0 ;
942
+ pub const IPV6_PMTUDISC_WANT : :: c_int = 1 ;
943
+ pub const IPV6_PMTUDISC_DO : :: c_int = 2 ;
944
+ pub const IPV6_PMTUDISC_PROBE : :: c_int = 3 ;
945
+ pub const IPV6_PMTUDISC_INTERFACE : :: c_int = 4 ;
946
+ pub const IPV6_PMTUDISC_OMIT : :: c_int = 5 ;
819
947
820
948
pub const TCP_NODELAY : :: c_int = 1 ;
821
949
pub const TCP_MAXSEG : :: c_int = 2 ;
0 commit comments