1 // Copyright © 2015, skdltmxn
2 // Licensed under the MIT License <LICENSE.md>
3 //! WinSock2 Extension for TCP/IP protocols
4 pub type LPLOOKUPSERVICE_COMPLETION_ROUTINE = Option<unsafe extern "system" fn(
5     dwError: ::DWORD, dwBytes: ::DWORD, lpOverlapped: ::LPWSAOVERLAPPED,
6 )>;
7 pub type socklen_t = ::c_int;
8 STRUCT!{struct ip_mreq {
9     imr_multiaddr: ::in_addr,
10     imr_interface: ::in_addr,
11 }}
12 pub const IP_OPTIONS: ::c_int = 1;
13 pub const IP_HDRINCL: ::c_int = 2;
14 pub const IP_TOS: ::c_int = 3;
15 pub const IP_TTL: ::c_int = 4;
16 pub const IP_MULTICAST_IF: ::c_int = 9;
17 pub const IP_MULTICAST_TTL: ::c_int = 10;
18 pub const IP_MULTICAST_LOOP: ::c_int = 11;
19 pub const IP_ADD_MEMBERSHIP: ::c_int = 12;
20 pub const IP_DROP_MEMBERSHIP: ::c_int = 13;
21 pub const IP_DONTFRAGMENT: ::c_int = 14;
22 pub const IP_ADD_SOURCE_MEMBERSHIP: ::c_int = 15;
23 pub const IP_DROP_SOURCE_MEMBERSHIP: ::c_int = 16;
24 pub const IP_BLOCK_SOURCE: ::c_int = 17;
25 pub const IP_UNBLOCK_SOURCE: ::c_int = 18;
26 pub const IP_PKTINFO: ::c_int = 19;
27 pub const IP_RECEIVE_BROADCAST: ::c_int = 22;
28