]> git.proxmox.com Git - rustc.git/blame - vendor/windows-sys/src/Windows/Win32/System/Kernel/mod.rs
New upstream version 1.63.0+dfsg1
[rustc.git] / vendor / windows-sys / src / Windows / Win32 / System / Kernel / mod.rs
CommitLineData
5e7ed085
FG
1#[link(name = "windows")]
2extern "system" {
04454e1e 3 #[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 4 pub fn RtlFirstEntrySList(listhead: *const SLIST_HEADER) -> *mut SLIST_ENTRY;
04454e1e 5 #[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 6 pub fn RtlInitializeSListHead(listhead: *mut SLIST_HEADER);
04454e1e 7 #[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 8 pub fn RtlInterlockedFlushSList(listhead: *mut SLIST_HEADER) -> *mut SLIST_ENTRY;
04454e1e 9 #[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 10 pub fn RtlInterlockedPopEntrySList(listhead: *mut SLIST_HEADER) -> *mut SLIST_ENTRY;
04454e1e 11 #[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 12 pub fn RtlInterlockedPushEntrySList(listhead: *mut SLIST_HEADER, listentry: *mut SLIST_ENTRY) -> *mut SLIST_ENTRY;
04454e1e 13 #[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 14 pub fn RtlInterlockedPushListSListEx(listhead: *mut SLIST_HEADER, list: *mut SLIST_ENTRY, listend: *mut SLIST_ENTRY, count: u32) -> *mut SLIST_ENTRY;
04454e1e 15 #[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
16 pub fn RtlQueryDepthSList(listhead: *const SLIST_HEADER) -> u16;
17}
04454e1e 18#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 19pub type COMPARTMENT_ID = i32;
04454e1e 20#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 21pub const UNSPECIFIED_COMPARTMENT_ID: COMPARTMENT_ID = 0i32;
04454e1e 22#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
23pub const DEFAULT_COMPARTMENT_ID: COMPARTMENT_ID = 1i32;
24#[repr(C)]
04454e1e 25#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
26pub struct CSTRING {
27 pub Length: u16,
28 pub MaximumLength: u16,
04454e1e 29 pub Buffer: ::windows_sys::core::PCSTR,
5e7ed085 30}
5e7ed085 31impl ::core::marker::Copy for CSTRING {}
5e7ed085
FG
32impl ::core::clone::Clone for CSTRING {
33 fn clone(&self) -> Self {
34 *self
35 }
36}
04454e1e 37#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 38pub type EVENT_TYPE = i32;
04454e1e 39#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 40pub const NotificationEvent: EVENT_TYPE = 0i32;
04454e1e 41#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 42pub const SynchronizationEvent: EVENT_TYPE = 1i32;
04454e1e 43#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 44pub type EXCEPTION_DISPOSITION = i32;
04454e1e 45#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 46pub const ExceptionContinueExecution: EXCEPTION_DISPOSITION = 0i32;
04454e1e 47#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 48pub const ExceptionContinueSearch: EXCEPTION_DISPOSITION = 1i32;
04454e1e 49#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 50pub const ExceptionNestedException: EXCEPTION_DISPOSITION = 2i32;
04454e1e 51#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
52pub const ExceptionCollidedUnwind: EXCEPTION_DISPOSITION = 3i32;
53#[repr(C)]
04454e1e 54#[doc = "*Required features: `\"Win32_System_Kernel\"`, `\"Win32_Foundation\"`, `\"Win32_System_Diagnostics_Debug\"`*"]
5e7ed085
FG
55#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug"))]
56pub struct EXCEPTION_REGISTRATION_RECORD {
57 pub Next: *mut EXCEPTION_REGISTRATION_RECORD,
58 pub Handler: EXCEPTION_ROUTINE,
59}
60#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug"))]
61impl ::core::marker::Copy for EXCEPTION_REGISTRATION_RECORD {}
62#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug"))]
63impl ::core::clone::Clone for EXCEPTION_REGISTRATION_RECORD {
64 fn clone(&self) -> Self {
65 *self
66 }
67}
04454e1e 68#[doc = "*Required features: `\"Win32_System_Kernel\"`, `\"Win32_Foundation\"`, `\"Win32_System_Diagnostics_Debug\"`*"]
5e7ed085
FG
69#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug"))]
70pub type EXCEPTION_ROUTINE = ::core::option::Option<unsafe extern "system" fn(exceptionrecord: *mut super::Diagnostics::Debug::EXCEPTION_RECORD, establisherframe: *const ::core::ffi::c_void, contextrecord: *mut super::Diagnostics::Debug::CONTEXT, dispatchercontext: *const ::core::ffi::c_void) -> EXCEPTION_DISPOSITION>;
71#[repr(C)]
04454e1e 72#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
73#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
74pub struct FLOATING_SAVE_AREA {
75 pub ControlWord: u32,
76 pub StatusWord: u32,
77 pub TagWord: u32,
78 pub ErrorOffset: u32,
79 pub ErrorSelector: u32,
80 pub DataOffset: u32,
81 pub DataSelector: u32,
82 pub RegisterArea: [u8; 80],
83 pub Cr0NpxState: u32,
84}
85#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
86impl ::core::marker::Copy for FLOATING_SAVE_AREA {}
87#[cfg(any(target_arch = "aarch64", target_arch = "x86_64"))]
88impl ::core::clone::Clone for FLOATING_SAVE_AREA {
89 fn clone(&self) -> Self {
90 *self
91 }
92}
93#[repr(C)]
04454e1e 94#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
95#[cfg(target_arch = "x86")]
96pub struct FLOATING_SAVE_AREA {
97 pub ControlWord: u32,
98 pub StatusWord: u32,
99 pub TagWord: u32,
100 pub ErrorOffset: u32,
101 pub ErrorSelector: u32,
102 pub DataOffset: u32,
103 pub DataSelector: u32,
104 pub RegisterArea: [u8; 80],
105 pub Spare0: u32,
106}
107#[cfg(target_arch = "x86")]
108impl ::core::marker::Copy for FLOATING_SAVE_AREA {}
109#[cfg(target_arch = "x86")]
110impl ::core::clone::Clone for FLOATING_SAVE_AREA {
111 fn clone(&self) -> Self {
112 *self
113 }
114}
115#[repr(C)]
04454e1e 116#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
117pub struct LIST_ENTRY {
118 pub Flink: *mut LIST_ENTRY,
119 pub Blink: *mut LIST_ENTRY,
120}
121impl ::core::marker::Copy for LIST_ENTRY {}
122impl ::core::clone::Clone for LIST_ENTRY {
123 fn clone(&self) -> Self {
124 *self
125 }
126}
127#[repr(C)]
04454e1e 128#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
129pub struct LIST_ENTRY32 {
130 pub Flink: u32,
131 pub Blink: u32,
132}
133impl ::core::marker::Copy for LIST_ENTRY32 {}
134impl ::core::clone::Clone for LIST_ENTRY32 {
135 fn clone(&self) -> Self {
136 *self
137 }
138}
139#[repr(C)]
04454e1e 140#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
141pub struct LIST_ENTRY64 {
142 pub Flink: u64,
143 pub Blink: u64,
144}
145impl ::core::marker::Copy for LIST_ENTRY64 {}
146impl ::core::clone::Clone for LIST_ENTRY64 {
147 fn clone(&self) -> Self {
148 *self
149 }
150}
04454e1e 151#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 152pub const MAXUCHAR: u32 = 255u32;
04454e1e 153#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 154pub const MAXULONG: u32 = 4294967295u32;
04454e1e 155#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 156pub const MAXUSHORT: u32 = 65535u32;
04454e1e 157#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 158pub type NT_PRODUCT_TYPE = i32;
04454e1e 159#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 160pub const NtProductWinNt: NT_PRODUCT_TYPE = 1i32;
04454e1e 161#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 162pub const NtProductLanManNt: NT_PRODUCT_TYPE = 2i32;
04454e1e 163#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
164pub const NtProductServer: NT_PRODUCT_TYPE = 3i32;
165#[repr(C)]
04454e1e 166#[doc = "*Required features: `\"Win32_System_Kernel\"`, `\"Win32_Foundation\"`, `\"Win32_System_Diagnostics_Debug\"`*"]
5e7ed085
FG
167#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug"))]
168pub struct NT_TIB {
169 pub ExceptionList: *mut EXCEPTION_REGISTRATION_RECORD,
170 pub StackBase: *mut ::core::ffi::c_void,
171 pub StackLimit: *mut ::core::ffi::c_void,
172 pub SubSystemTib: *mut ::core::ffi::c_void,
173 pub Anonymous: NT_TIB_0,
174 pub ArbitraryUserPointer: *mut ::core::ffi::c_void,
175 pub Self_: *mut NT_TIB,
176}
177#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug"))]
178impl ::core::marker::Copy for NT_TIB {}
179#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug"))]
180impl ::core::clone::Clone for NT_TIB {
181 fn clone(&self) -> Self {
182 *self
183 }
184}
185#[repr(C)]
04454e1e 186#[doc = "*Required features: `\"Win32_System_Kernel\"`, `\"Win32_Foundation\"`, `\"Win32_System_Diagnostics_Debug\"`*"]
5e7ed085
FG
187#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug"))]
188pub union NT_TIB_0 {
189 pub FiberData: *mut ::core::ffi::c_void,
190 pub Version: u32,
191}
192#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug"))]
193impl ::core::marker::Copy for NT_TIB_0 {}
194#[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Diagnostics_Debug"))]
195impl ::core::clone::Clone for NT_TIB_0 {
196 fn clone(&self) -> Self {
197 *self
198 }
199}
04454e1e 200#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
201pub const NULL64: u32 = 0u32;
202#[repr(C)]
04454e1e 203#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
204pub struct OBJECTID {
205 pub Lineage: ::windows_sys::core::GUID,
206 pub Uniquifier: u32,
207}
208impl ::core::marker::Copy for OBJECTID {}
209impl ::core::clone::Clone for OBJECTID {
210 fn clone(&self) -> Self {
211 *self
212 }
213}
214#[repr(C)]
04454e1e 215#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
216pub struct OBJECT_ATTRIBUTES32 {
217 pub Length: u32,
218 pub RootDirectory: u32,
219 pub ObjectName: u32,
220 pub Attributes: u32,
221 pub SecurityDescriptor: u32,
222 pub SecurityQualityOfService: u32,
223}
224impl ::core::marker::Copy for OBJECT_ATTRIBUTES32 {}
225impl ::core::clone::Clone for OBJECT_ATTRIBUTES32 {
226 fn clone(&self) -> Self {
227 *self
228 }
229}
230#[repr(C)]
04454e1e 231#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
232pub struct OBJECT_ATTRIBUTES64 {
233 pub Length: u32,
234 pub RootDirectory: u64,
235 pub ObjectName: u64,
236 pub Attributes: u32,
237 pub SecurityDescriptor: u64,
238 pub SecurityQualityOfService: u64,
239}
240impl ::core::marker::Copy for OBJECT_ATTRIBUTES64 {}
241impl ::core::clone::Clone for OBJECT_ATTRIBUTES64 {
242 fn clone(&self) -> Self {
243 *self
244 }
245}
04454e1e 246#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 247pub const OBJ_CASE_INSENSITIVE: i32 = 64i32;
04454e1e 248#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 249pub const OBJ_DONT_REPARSE: i32 = 4096i32;
04454e1e 250#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 251pub const OBJ_EXCLUSIVE: i32 = 32i32;
04454e1e 252#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 253pub const OBJ_FORCE_ACCESS_CHECK: i32 = 1024i32;
04454e1e 254#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 255pub const OBJ_HANDLE_TAGBITS: i32 = 3i32;
04454e1e 256#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 257pub const OBJ_IGNORE_IMPERSONATED_DEVICEMAP: i32 = 2048i32;
04454e1e 258#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 259pub const OBJ_INHERIT: i32 = 2i32;
04454e1e 260#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 261pub const OBJ_KERNEL_HANDLE: i32 = 512i32;
04454e1e 262#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 263pub const OBJ_OPENIF: i32 = 128i32;
04454e1e 264#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 265pub const OBJ_OPENLINK: i32 = 256i32;
04454e1e 266#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 267pub const OBJ_PERMANENT: i32 = 16i32;
04454e1e 268#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
269pub const OBJ_VALID_ATTRIBUTES: i32 = 8178i32;
270#[repr(C)]
04454e1e 271#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
272pub struct PROCESSOR_NUMBER {
273 pub Group: u16,
274 pub Number: u8,
275 pub Reserved: u8,
276}
277impl ::core::marker::Copy for PROCESSOR_NUMBER {}
278impl ::core::clone::Clone for PROCESSOR_NUMBER {
279 fn clone(&self) -> Self {
280 *self
281 }
282}
283#[repr(C)]
04454e1e 284#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
285pub struct QUAD {
286 pub Anonymous: QUAD_0,
287}
288impl ::core::marker::Copy for QUAD {}
289impl ::core::clone::Clone for QUAD {
290 fn clone(&self) -> Self {
291 *self
292 }
293}
294#[repr(C)]
04454e1e 295#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
296pub union QUAD_0 {
297 pub UseThisFieldToCopy: i64,
298 pub DoNotUseThisField: f64,
299}
300impl ::core::marker::Copy for QUAD_0 {}
301impl ::core::clone::Clone for QUAD_0 {
302 fn clone(&self) -> Self {
303 *self
304 }
305}
306#[repr(C)]
04454e1e 307#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
308pub struct RTL_BALANCED_NODE {
309 pub Anonymous1: RTL_BALANCED_NODE_0,
310 pub Anonymous2: RTL_BALANCED_NODE_1,
311}
312impl ::core::marker::Copy for RTL_BALANCED_NODE {}
313impl ::core::clone::Clone for RTL_BALANCED_NODE {
314 fn clone(&self) -> Self {
315 *self
316 }
317}
318#[repr(C)]
04454e1e 319#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
320pub union RTL_BALANCED_NODE_0 {
321 pub Children: [*mut RTL_BALANCED_NODE; 2],
322 pub Anonymous: RTL_BALANCED_NODE_0_0,
323}
324impl ::core::marker::Copy for RTL_BALANCED_NODE_0 {}
325impl ::core::clone::Clone for RTL_BALANCED_NODE_0 {
326 fn clone(&self) -> Self {
327 *self
328 }
329}
330#[repr(C)]
04454e1e 331#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
332pub struct RTL_BALANCED_NODE_0_0 {
333 pub Left: *mut RTL_BALANCED_NODE,
334 pub Right: *mut RTL_BALANCED_NODE,
335}
336impl ::core::marker::Copy for RTL_BALANCED_NODE_0_0 {}
337impl ::core::clone::Clone for RTL_BALANCED_NODE_0_0 {
338 fn clone(&self) -> Self {
339 *self
340 }
341}
342#[repr(C)]
04454e1e 343#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
344pub union RTL_BALANCED_NODE_1 {
345 pub _bitfield: u8,
346 pub ParentValue: usize,
347}
348impl ::core::marker::Copy for RTL_BALANCED_NODE_1 {}
349impl ::core::clone::Clone for RTL_BALANCED_NODE_1 {
350 fn clone(&self) -> Self {
351 *self
352 }
353}
04454e1e 354#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
355pub const RTL_BALANCED_NODE_RESERVED_PARENT_MASK: u32 = 3u32;
356#[repr(C)]
04454e1e 357#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
358pub struct SINGLE_LIST_ENTRY {
359 pub Next: *mut SINGLE_LIST_ENTRY,
360}
361impl ::core::marker::Copy for SINGLE_LIST_ENTRY {}
362impl ::core::clone::Clone for SINGLE_LIST_ENTRY {
363 fn clone(&self) -> Self {
364 *self
365 }
366}
367#[repr(C)]
04454e1e 368#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
369pub struct SINGLE_LIST_ENTRY32 {
370 pub Next: u32,
371}
372impl ::core::marker::Copy for SINGLE_LIST_ENTRY32 {}
373impl ::core::clone::Clone for SINGLE_LIST_ENTRY32 {
374 fn clone(&self) -> Self {
375 *self
376 }
377}
378#[repr(C)]
04454e1e 379#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
380pub struct SLIST_ENTRY {
381 pub Next: *mut SLIST_ENTRY,
382}
383impl ::core::marker::Copy for SLIST_ENTRY {}
384impl ::core::clone::Clone for SLIST_ENTRY {
385 fn clone(&self) -> Self {
386 *self
387 }
388}
389#[repr(C)]
04454e1e 390#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
391#[cfg(target_arch = "aarch64")]
392pub union SLIST_HEADER {
393 pub Anonymous: SLIST_HEADER_0,
394 pub HeaderArm64: SLIST_HEADER_1,
395}
396#[cfg(target_arch = "aarch64")]
397impl ::core::marker::Copy for SLIST_HEADER {}
398#[cfg(target_arch = "aarch64")]
399impl ::core::clone::Clone for SLIST_HEADER {
400 fn clone(&self) -> Self {
401 *self
402 }
403}
404#[repr(C)]
04454e1e 405#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
406#[cfg(target_arch = "aarch64")]
407pub struct SLIST_HEADER_0 {
408 pub Alignment: u64,
409 pub Region: u64,
410}
411#[cfg(target_arch = "aarch64")]
412impl ::core::marker::Copy for SLIST_HEADER_0 {}
413#[cfg(target_arch = "aarch64")]
414impl ::core::clone::Clone for SLIST_HEADER_0 {
415 fn clone(&self) -> Self {
416 *self
417 }
418}
419#[repr(C)]
04454e1e 420#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
421#[cfg(target_arch = "aarch64")]
422pub struct SLIST_HEADER_1 {
423 pub _bitfield1: u64,
424 pub _bitfield2: u64,
425}
426#[cfg(target_arch = "aarch64")]
427impl ::core::marker::Copy for SLIST_HEADER_1 {}
428#[cfg(target_arch = "aarch64")]
429impl ::core::clone::Clone for SLIST_HEADER_1 {
430 fn clone(&self) -> Self {
431 *self
432 }
433}
434#[repr(C)]
04454e1e 435#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
436#[cfg(target_arch = "x86_64")]
437pub union SLIST_HEADER {
438 pub Anonymous: SLIST_HEADER_0,
439 pub HeaderX64: SLIST_HEADER_1,
440}
441#[cfg(target_arch = "x86_64")]
442impl ::core::marker::Copy for SLIST_HEADER {}
443#[cfg(target_arch = "x86_64")]
444impl ::core::clone::Clone for SLIST_HEADER {
445 fn clone(&self) -> Self {
446 *self
447 }
448}
449#[repr(C)]
04454e1e 450#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
451#[cfg(target_arch = "x86_64")]
452pub struct SLIST_HEADER_0 {
453 pub Alignment: u64,
454 pub Region: u64,
455}
456#[cfg(target_arch = "x86_64")]
457impl ::core::marker::Copy for SLIST_HEADER_0 {}
458#[cfg(target_arch = "x86_64")]
459impl ::core::clone::Clone for SLIST_HEADER_0 {
460 fn clone(&self) -> Self {
461 *self
462 }
463}
464#[repr(C)]
04454e1e 465#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
466#[cfg(target_arch = "x86_64")]
467pub struct SLIST_HEADER_1 {
468 pub _bitfield1: u64,
469 pub _bitfield2: u64,
470}
471#[cfg(target_arch = "x86_64")]
472impl ::core::marker::Copy for SLIST_HEADER_1 {}
473#[cfg(target_arch = "x86_64")]
474impl ::core::clone::Clone for SLIST_HEADER_1 {
475 fn clone(&self) -> Self {
476 *self
477 }
478}
479#[repr(C)]
04454e1e 480#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
481#[cfg(target_arch = "x86")]
482pub union SLIST_HEADER {
483 pub Alignment: u64,
484 pub Anonymous: SLIST_HEADER_0,
485}
486#[cfg(target_arch = "x86")]
487impl ::core::marker::Copy for SLIST_HEADER {}
488#[cfg(target_arch = "x86")]
489impl ::core::clone::Clone for SLIST_HEADER {
490 fn clone(&self) -> Self {
491 *self
492 }
493}
494#[repr(C)]
04454e1e 495#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
496#[cfg(target_arch = "x86")]
497pub struct SLIST_HEADER_0 {
498 pub Next: SINGLE_LIST_ENTRY,
499 pub Depth: u16,
500 pub CpuId: u16,
501}
502#[cfg(target_arch = "x86")]
503impl ::core::marker::Copy for SLIST_HEADER_0 {}
504#[cfg(target_arch = "x86")]
505impl ::core::clone::Clone for SLIST_HEADER_0 {
506 fn clone(&self) -> Self {
507 *self
508 }
509}
510#[repr(C)]
04454e1e 511#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
512pub struct STRING {
513 pub Length: u16,
514 pub MaximumLength: u16,
04454e1e 515 pub Buffer: ::windows_sys::core::PSTR,
5e7ed085 516}
5e7ed085 517impl ::core::marker::Copy for STRING {}
5e7ed085
FG
518impl ::core::clone::Clone for STRING {
519 fn clone(&self) -> Self {
520 *self
521 }
522}
523#[repr(C)]
04454e1e 524#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
525pub struct STRING32 {
526 pub Length: u16,
527 pub MaximumLength: u16,
528 pub Buffer: u32,
529}
530impl ::core::marker::Copy for STRING32 {}
531impl ::core::clone::Clone for STRING32 {
532 fn clone(&self) -> Self {
533 *self
534 }
535}
536#[repr(C)]
04454e1e 537#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
538pub struct STRING64 {
539 pub Length: u16,
540 pub MaximumLength: u16,
541 pub Buffer: u64,
542}
543impl ::core::marker::Copy for STRING64 {}
544impl ::core::clone::Clone for STRING64 {
545 fn clone(&self) -> Self {
546 *self
547 }
548}
04454e1e 549#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 550pub type SUITE_TYPE = i32;
04454e1e 551#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 552pub const SmallBusiness: SUITE_TYPE = 0i32;
04454e1e 553#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 554pub const Enterprise: SUITE_TYPE = 1i32;
04454e1e 555#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 556pub const BackOffice: SUITE_TYPE = 2i32;
04454e1e 557#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 558pub const CommunicationServer: SUITE_TYPE = 3i32;
04454e1e 559#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 560pub const TerminalServer: SUITE_TYPE = 4i32;
04454e1e 561#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 562pub const SmallBusinessRestricted: SUITE_TYPE = 5i32;
04454e1e 563#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 564pub const EmbeddedNT: SUITE_TYPE = 6i32;
04454e1e 565#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 566pub const DataCenter: SUITE_TYPE = 7i32;
04454e1e 567#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 568pub const SingleUserTS: SUITE_TYPE = 8i32;
04454e1e 569#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 570pub const Personal: SUITE_TYPE = 9i32;
04454e1e 571#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 572pub const Blade: SUITE_TYPE = 10i32;
04454e1e 573#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 574pub const EmbeddedRestricted: SUITE_TYPE = 11i32;
04454e1e 575#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 576pub const SecurityAppliance: SUITE_TYPE = 12i32;
04454e1e 577#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 578pub const StorageServer: SUITE_TYPE = 13i32;
04454e1e 579#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 580pub const ComputeServer: SUITE_TYPE = 14i32;
04454e1e 581#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 582pub const WHServer: SUITE_TYPE = 15i32;
04454e1e 583#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 584pub const PhoneNT: SUITE_TYPE = 16i32;
04454e1e 585#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 586pub const MultiUserTS: SUITE_TYPE = 17i32;
04454e1e 587#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 588pub const MaxSuiteType: SUITE_TYPE = 18i32;
04454e1e 589#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 590pub type TIMER_TYPE = i32;
04454e1e 591#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 592pub const NotificationTimer: TIMER_TYPE = 0i32;
04454e1e 593#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 594pub const SynchronizationTimer: TIMER_TYPE = 1i32;
04454e1e 595#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 596pub type WAIT_TYPE = i32;
04454e1e 597#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 598pub const WaitAll: WAIT_TYPE = 0i32;
04454e1e 599#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 600pub const WaitAny: WAIT_TYPE = 1i32;
04454e1e 601#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 602pub const WaitNotification: WAIT_TYPE = 2i32;
04454e1e 603#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085 604pub const WaitDequeue: WAIT_TYPE = 3i32;
04454e1e 605#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
606pub const WaitDpc: WAIT_TYPE = 4i32;
607#[repr(C)]
04454e1e 608#[doc = "*Required features: `\"Win32_System_Kernel\"`*"]
5e7ed085
FG
609pub struct WNF_STATE_NAME {
610 pub Data: [u32; 2],
611}
612impl ::core::marker::Copy for WNF_STATE_NAME {}
613impl ::core::clone::Clone for WNF_STATE_NAME {
614 fn clone(&self) -> Self {
615 *self
616 }
617}