]>
Commit | Line | Data |
---|---|---|
353b0b11 FG |
1 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] |
2 | #[inline] | |
3 | pub unsafe fn McastApiCleanup() { | |
4 | ::windows::imp::link ! ( "dhcpcsvc.dll""system" fn McastApiCleanup ( ) -> ( ) ); | |
5 | McastApiCleanup() | |
6 | } | |
7 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
8 | #[inline] | |
9 | pub unsafe fn McastApiStartup(version: *mut u32) -> u32 { | |
10 | ::windows::imp::link ! ( "dhcpcsvc.dll""system" fn McastApiStartup ( version : *mut u32 ) -> u32 ); | |
11 | McastApiStartup(version) | |
12 | } | |
13 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`, `\"Win32_Foundation\"`*"] | |
14 | #[cfg(feature = "Win32_Foundation")] | |
15 | #[inline] | |
16 | pub unsafe fn McastEnumerateScopes<P0>(addrfamily: u16, requery: P0, pscopelist: *mut MCAST_SCOPE_ENTRY, pscopelen: *mut u32, pscopecount: *mut u32) -> u32 | |
17 | where | |
18 | P0: ::windows::core::IntoParam<super::super::Foundation::BOOL>, | |
19 | { | |
20 | ::windows::imp::link ! ( "dhcpcsvc.dll""system" fn McastEnumerateScopes ( addrfamily : u16 , requery : super::super::Foundation:: BOOL , pscopelist : *mut MCAST_SCOPE_ENTRY , pscopelen : *mut u32 , pscopecount : *mut u32 ) -> u32 ); | |
21 | McastEnumerateScopes(addrfamily, requery.into_param().abi(), pscopelist, pscopelen, pscopecount) | |
22 | } | |
23 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
24 | #[inline] | |
25 | pub unsafe fn McastGenUID(prequestid: *mut MCAST_CLIENT_UID) -> u32 { | |
26 | ::windows::imp::link ! ( "dhcpcsvc.dll""system" fn McastGenUID ( prequestid : *mut MCAST_CLIENT_UID ) -> u32 ); | |
27 | McastGenUID(prequestid) | |
28 | } | |
29 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
30 | #[inline] | |
31 | pub unsafe fn McastReleaseAddress(addrfamily: u16, prequestid: *mut MCAST_CLIENT_UID, preleaserequest: *mut MCAST_LEASE_REQUEST) -> u32 { | |
32 | ::windows::imp::link ! ( "dhcpcsvc.dll""system" fn McastReleaseAddress ( addrfamily : u16 , prequestid : *mut MCAST_CLIENT_UID , preleaserequest : *mut MCAST_LEASE_REQUEST ) -> u32 ); | |
33 | McastReleaseAddress(addrfamily, prequestid, preleaserequest) | |
34 | } | |
35 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
36 | #[inline] | |
37 | pub unsafe fn McastRenewAddress(addrfamily: u16, prequestid: *mut MCAST_CLIENT_UID, prenewrequest: *mut MCAST_LEASE_REQUEST, prenewresponse: *mut MCAST_LEASE_RESPONSE) -> u32 { | |
38 | ::windows::imp::link ! ( "dhcpcsvc.dll""system" fn McastRenewAddress ( addrfamily : u16 , prequestid : *mut MCAST_CLIENT_UID , prenewrequest : *mut MCAST_LEASE_REQUEST , prenewresponse : *mut MCAST_LEASE_RESPONSE ) -> u32 ); | |
39 | McastRenewAddress(addrfamily, prequestid, prenewrequest, prenewresponse) | |
40 | } | |
41 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
42 | #[inline] | |
43 | pub unsafe fn McastRequestAddress(addrfamily: u16, prequestid: *mut MCAST_CLIENT_UID, pscopectx: *mut MCAST_SCOPE_CTX, paddrrequest: *mut MCAST_LEASE_REQUEST, paddrresponse: *mut MCAST_LEASE_RESPONSE) -> u32 { | |
44 | ::windows::imp::link ! ( "dhcpcsvc.dll""system" fn McastRequestAddress ( addrfamily : u16 , prequestid : *mut MCAST_CLIENT_UID , pscopectx : *mut MCAST_SCOPE_CTX , paddrrequest : *mut MCAST_LEASE_REQUEST , paddrresponse : *mut MCAST_LEASE_RESPONSE ) -> u32 ); | |
45 | McastRequestAddress(addrfamily, prequestid, pscopectx, paddrrequest, paddrresponse) | |
46 | } | |
47 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
48 | pub const MCAST_API_CURRENT_VERSION: i32 = 1i32; | |
49 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
50 | pub const MCAST_API_VERSION_0: i32 = 0i32; | |
51 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
52 | pub const MCAST_API_VERSION_1: i32 = 1i32; | |
53 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
54 | pub const MCAST_CLIENT_ID_LEN: u32 = 17u32; | |
55 | #[repr(C)] | |
56 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
57 | pub union IPNG_ADDRESS { | |
58 | pub IpAddrV4: u32, | |
59 | pub IpAddrV6: [u8; 16], | |
60 | } | |
61 | impl ::core::marker::Copy for IPNG_ADDRESS {} | |
62 | impl ::core::clone::Clone for IPNG_ADDRESS { | |
63 | fn clone(&self) -> Self { | |
64 | *self | |
65 | } | |
66 | } | |
67 | impl ::windows::core::TypeKind for IPNG_ADDRESS { | |
68 | type TypeKind = ::windows::core::CopyType; | |
69 | } | |
70 | impl ::core::default::Default for IPNG_ADDRESS { | |
71 | fn default() -> Self { | |
72 | unsafe { ::core::mem::zeroed() } | |
73 | } | |
74 | } | |
75 | #[repr(C)] | |
76 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
77 | pub struct MCAST_CLIENT_UID { | |
78 | pub ClientUID: *mut u8, | |
79 | pub ClientUIDLength: u32, | |
80 | } | |
81 | impl ::core::marker::Copy for MCAST_CLIENT_UID {} | |
82 | impl ::core::clone::Clone for MCAST_CLIENT_UID { | |
83 | fn clone(&self) -> Self { | |
84 | *self | |
85 | } | |
86 | } | |
87 | impl ::core::fmt::Debug for MCAST_CLIENT_UID { | |
88 | fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { | |
89 | f.debug_struct("MCAST_CLIENT_UID").field("ClientUID", &self.ClientUID).field("ClientUIDLength", &self.ClientUIDLength).finish() | |
90 | } | |
91 | } | |
92 | impl ::windows::core::TypeKind for MCAST_CLIENT_UID { | |
93 | type TypeKind = ::windows::core::CopyType; | |
94 | } | |
95 | impl ::core::cmp::PartialEq for MCAST_CLIENT_UID { | |
96 | fn eq(&self, other: &Self) -> bool { | |
97 | self.ClientUID == other.ClientUID && self.ClientUIDLength == other.ClientUIDLength | |
98 | } | |
99 | } | |
100 | impl ::core::cmp::Eq for MCAST_CLIENT_UID {} | |
101 | impl ::core::default::Default for MCAST_CLIENT_UID { | |
102 | fn default() -> Self { | |
103 | unsafe { ::core::mem::zeroed() } | |
104 | } | |
105 | } | |
106 | #[repr(C)] | |
107 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
108 | pub struct MCAST_LEASE_REQUEST { | |
109 | pub LeaseStartTime: i32, | |
110 | pub MaxLeaseStartTime: i32, | |
111 | pub LeaseDuration: u32, | |
112 | pub MinLeaseDuration: u32, | |
113 | pub ServerAddress: IPNG_ADDRESS, | |
114 | pub MinAddrCount: u16, | |
115 | pub AddrCount: u16, | |
116 | pub pAddrBuf: *mut u8, | |
117 | } | |
118 | impl ::core::marker::Copy for MCAST_LEASE_REQUEST {} | |
119 | impl ::core::clone::Clone for MCAST_LEASE_REQUEST { | |
120 | fn clone(&self) -> Self { | |
121 | *self | |
122 | } | |
123 | } | |
124 | impl ::windows::core::TypeKind for MCAST_LEASE_REQUEST { | |
125 | type TypeKind = ::windows::core::CopyType; | |
126 | } | |
127 | impl ::core::default::Default for MCAST_LEASE_REQUEST { | |
128 | fn default() -> Self { | |
129 | unsafe { ::core::mem::zeroed() } | |
130 | } | |
131 | } | |
132 | #[repr(C)] | |
133 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
134 | pub struct MCAST_LEASE_RESPONSE { | |
135 | pub LeaseStartTime: i32, | |
136 | pub LeaseEndTime: i32, | |
137 | pub ServerAddress: IPNG_ADDRESS, | |
138 | pub AddrCount: u16, | |
139 | pub pAddrBuf: *mut u8, | |
140 | } | |
141 | impl ::core::marker::Copy for MCAST_LEASE_RESPONSE {} | |
142 | impl ::core::clone::Clone for MCAST_LEASE_RESPONSE { | |
143 | fn clone(&self) -> Self { | |
144 | *self | |
145 | } | |
146 | } | |
147 | impl ::windows::core::TypeKind for MCAST_LEASE_RESPONSE { | |
148 | type TypeKind = ::windows::core::CopyType; | |
149 | } | |
150 | impl ::core::default::Default for MCAST_LEASE_RESPONSE { | |
151 | fn default() -> Self { | |
152 | unsafe { ::core::mem::zeroed() } | |
153 | } | |
154 | } | |
155 | #[repr(C)] | |
156 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`*"] | |
157 | pub struct MCAST_SCOPE_CTX { | |
158 | pub ScopeID: IPNG_ADDRESS, | |
159 | pub Interface: IPNG_ADDRESS, | |
160 | pub ServerID: IPNG_ADDRESS, | |
161 | } | |
162 | impl ::core::marker::Copy for MCAST_SCOPE_CTX {} | |
163 | impl ::core::clone::Clone for MCAST_SCOPE_CTX { | |
164 | fn clone(&self) -> Self { | |
165 | *self | |
166 | } | |
167 | } | |
168 | impl ::windows::core::TypeKind for MCAST_SCOPE_CTX { | |
169 | type TypeKind = ::windows::core::CopyType; | |
170 | } | |
171 | impl ::core::default::Default for MCAST_SCOPE_CTX { | |
172 | fn default() -> Self { | |
173 | unsafe { ::core::mem::zeroed() } | |
174 | } | |
175 | } | |
176 | #[repr(C)] | |
177 | #[doc = "*Required features: `\"Win32_NetworkManagement_Multicast\"`, `\"Win32_Foundation\"`*"] | |
178 | #[cfg(feature = "Win32_Foundation")] | |
179 | pub struct MCAST_SCOPE_ENTRY { | |
180 | pub ScopeCtx: MCAST_SCOPE_CTX, | |
181 | pub LastAddr: IPNG_ADDRESS, | |
182 | pub TTL: u32, | |
183 | pub ScopeDesc: super::super::Foundation::UNICODE_STRING, | |
184 | } | |
185 | #[cfg(feature = "Win32_Foundation")] | |
186 | impl ::core::marker::Copy for MCAST_SCOPE_ENTRY {} | |
187 | #[cfg(feature = "Win32_Foundation")] | |
188 | impl ::core::clone::Clone for MCAST_SCOPE_ENTRY { | |
189 | fn clone(&self) -> Self { | |
190 | *self | |
191 | } | |
192 | } | |
193 | #[cfg(feature = "Win32_Foundation")] | |
194 | impl ::windows::core::TypeKind for MCAST_SCOPE_ENTRY { | |
195 | type TypeKind = ::windows::core::CopyType; | |
196 | } | |
197 | #[cfg(feature = "Win32_Foundation")] | |
198 | impl ::core::default::Default for MCAST_SCOPE_ENTRY { | |
199 | fn default() -> Self { | |
200 | unsafe { ::core::mem::zeroed() } | |
201 | } | |
202 | } | |
203 | #[cfg(feature = "implement")] | |
204 | ::core::include!("impl.rs"); |