Rollup merge of #139382 - ChrisDenton:windows-bindgen-0-61, r=Mark-Simulacrum
Update windows-bindgen to 0.61.0 This updates the automatically generate Windows API bindings. Not much changed this time: - There's now `Default` implementations for many types, which is convenient. It does however conflict with one place where we implemented a non-zeroed default (to set the length field). But that's no big problem. - The `--no-core` flag has been renamed to `--no-deps` to more accurately reflect its meaning (i.e. generate all necessary code without requiring additional dependencies). - The `--link` flag allows us to set the location of the `link!` macro. Currently we use our workspace's `windows_targets` crate but we could move it into library/std using `--link`. However, this would need to be co-ordinated with the `backtrace` crate (which is a separate crate but included in std using `#[path]`). So I've left that for another time.
This commit is contained in:
commit
096369d97f
6 changed files with 290 additions and 31 deletions
|
@ -6059,11 +6059,13 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "windows-bindgen"
|
name = "windows-bindgen"
|
||||||
version = "0.59.0"
|
version = "0.61.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9b7fb600834d7e868f6e5bb748a86101427330fafbf9485c331b9d5f562d54a5"
|
checksum = "ac1c59c20569610dd9ed784d5f003fb493ec57b4cf39d974eb03a84bb7156c90"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"rayon",
|
"rayon",
|
||||||
|
"serde",
|
||||||
|
"serde_json",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
|
|
@ -95,7 +95,7 @@ fn open_link_no_reparse(
|
||||||
ObjectName: &mut path_str,
|
ObjectName: &mut path_str,
|
||||||
RootDirectory: parent.as_raw_handle(),
|
RootDirectory: parent.as_raw_handle(),
|
||||||
Attributes: ATTRIBUTES.load(Ordering::Relaxed),
|
Attributes: ATTRIBUTES.load(Ordering::Relaxed),
|
||||||
..c::OBJECT_ATTRIBUTES::default()
|
..c::OBJECT_ATTRIBUTES::with_length()
|
||||||
};
|
};
|
||||||
let share = c::FILE_SHARE_DELETE | c::FILE_SHARE_READ | c::FILE_SHARE_WRITE;
|
let share = c::FILE_SHARE_DELETE | c::FILE_SHARE_READ | c::FILE_SHARE_WRITE;
|
||||||
let options = c::FILE_OPEN_REPARSE_POINT | options;
|
let options = c::FILE_OPEN_REPARSE_POINT | options;
|
||||||
|
|
|
@ -44,8 +44,8 @@ impl UNICODE_STRING {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Default for OBJECT_ATTRIBUTES {
|
impl OBJECT_ATTRIBUTES {
|
||||||
fn default() -> Self {
|
pub fn with_length() -> Self {
|
||||||
Self {
|
Self {
|
||||||
Length: size_of::<Self>() as _,
|
Length: size_of::<Self>() as _,
|
||||||
RootDirectory: ptr::null_mut(),
|
RootDirectory: ptr::null_mut(),
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
--out windows_sys.rs
|
--out windows_sys.rs
|
||||||
--flat
|
--flat
|
||||||
--sys
|
--sys
|
||||||
--no-core
|
--no-deps
|
||||||
|
--link windows_targets
|
||||||
--filter
|
--filter
|
||||||
!INVALID_HANDLE_VALUE
|
!INVALID_HANDLE_VALUE
|
||||||
ABOVE_NORMAL_PRIORITY_CLASS
|
ABOVE_NORMAL_PRIORITY_CLASS
|
||||||
|
@ -19,7 +20,6 @@ ALL_PROCESSOR_GROUPS
|
||||||
ARM64_NT_NEON128
|
ARM64_NT_NEON128
|
||||||
BELOW_NORMAL_PRIORITY_CLASS
|
BELOW_NORMAL_PRIORITY_CLASS
|
||||||
bind
|
bind
|
||||||
BOOL
|
|
||||||
BY_HANDLE_FILE_INFORMATION
|
BY_HANDLE_FILE_INFORMATION
|
||||||
CALLBACK_CHUNK_FINISHED
|
CALLBACK_CHUNK_FINISHED
|
||||||
CALLBACK_STREAM_SWITCH
|
CALLBACK_STREAM_SWITCH
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// Bindings generated by `windows-bindgen` 0.59.0
|
// Bindings generated by `windows-bindgen` 0.61.0
|
||||||
|
|
||||||
#![allow(non_snake_case, non_upper_case_globals, non_camel_case_types, dead_code, clippy::all)]
|
#![allow(non_snake_case, non_upper_case_globals, non_camel_case_types, dead_code, clippy::all)]
|
||||||
|
|
||||||
|
@ -141,7 +141,7 @@ windows_targets::link!("ws2_32.dll" "system" fn setsockopt(s : SOCKET, level : i
|
||||||
windows_targets::link!("ws2_32.dll" "system" fn shutdown(s : SOCKET, how : WINSOCK_SHUTDOWN_HOW) -> i32);
|
windows_targets::link!("ws2_32.dll" "system" fn shutdown(s : SOCKET, how : WINSOCK_SHUTDOWN_HOW) -> i32);
|
||||||
pub const ABOVE_NORMAL_PRIORITY_CLASS: PROCESS_CREATION_FLAGS = 32768u32;
|
pub const ABOVE_NORMAL_PRIORITY_CLASS: PROCESS_CREATION_FLAGS = 32768u32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct ACL {
|
pub struct ACL {
|
||||||
pub AclRevision: u8,
|
pub AclRevision: u8,
|
||||||
pub Sbz1: u8,
|
pub Sbz1: u8,
|
||||||
|
@ -162,6 +162,11 @@ pub struct ADDRINFOA {
|
||||||
pub ai_addr: *mut SOCKADDR,
|
pub ai_addr: *mut SOCKADDR,
|
||||||
pub ai_next: *mut ADDRINFOA,
|
pub ai_next: *mut ADDRINFOA,
|
||||||
}
|
}
|
||||||
|
impl Default for ADDRINFOA {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const AF_INET: ADDRESS_FAMILY = 2u16;
|
pub const AF_INET: ADDRESS_FAMILY = 2u16;
|
||||||
pub const AF_INET6: ADDRESS_FAMILY = 23u16;
|
pub const AF_INET6: ADDRESS_FAMILY = 23u16;
|
||||||
pub const AF_UNIX: u16 = 1u16;
|
pub const AF_UNIX: u16 = 1u16;
|
||||||
|
@ -176,8 +181,13 @@ pub union ARM64_NT_NEON128 {
|
||||||
pub H: [u16; 8],
|
pub H: [u16; 8],
|
||||||
pub B: [u8; 16],
|
pub B: [u8; 16],
|
||||||
}
|
}
|
||||||
|
impl Default for ARM64_NT_NEON128 {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct ARM64_NT_NEON128_0 {
|
pub struct ARM64_NT_NEON128_0 {
|
||||||
pub Low: u64,
|
pub Low: u64,
|
||||||
pub High: i64,
|
pub High: i64,
|
||||||
|
@ -185,7 +195,7 @@ pub struct ARM64_NT_NEON128_0 {
|
||||||
pub const BELOW_NORMAL_PRIORITY_CLASS: PROCESS_CREATION_FLAGS = 16384u32;
|
pub const BELOW_NORMAL_PRIORITY_CLASS: PROCESS_CREATION_FLAGS = 16384u32;
|
||||||
pub type BOOL = i32;
|
pub type BOOL = i32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct BY_HANDLE_FILE_INFORMATION {
|
pub struct BY_HANDLE_FILE_INFORMATION {
|
||||||
pub dwFileAttributes: u32,
|
pub dwFileAttributes: u32,
|
||||||
pub ftCreationTime: FILETIME,
|
pub ftCreationTime: FILETIME,
|
||||||
|
@ -206,9 +216,14 @@ pub type COMPARESTRING_RESULT = i32;
|
||||||
pub struct CONDITION_VARIABLE {
|
pub struct CONDITION_VARIABLE {
|
||||||
pub Ptr: *mut core::ffi::c_void,
|
pub Ptr: *mut core::ffi::c_void,
|
||||||
}
|
}
|
||||||
|
impl Default for CONDITION_VARIABLE {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub type CONSOLE_MODE = u32;
|
pub type CONSOLE_MODE = u32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct CONSOLE_READCONSOLE_CONTROL {
|
pub struct CONSOLE_READCONSOLE_CONTROL {
|
||||||
pub nLength: u32,
|
pub nLength: u32,
|
||||||
pub nInitialChars: u32,
|
pub nInitialChars: u32,
|
||||||
|
@ -245,6 +260,12 @@ pub struct CONTEXT {
|
||||||
pub SegSs: u32,
|
pub SegSs: u32,
|
||||||
pub ExtendedRegisters: [u8; 512],
|
pub ExtendedRegisters: [u8; 512],
|
||||||
}
|
}
|
||||||
|
#[cfg(target_arch = "x86")]
|
||||||
|
impl Default for CONTEXT {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[cfg(any(target_arch = "arm64ec", target_arch = "x86_64"))]
|
#[cfg(any(target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
|
@ -296,6 +317,12 @@ pub struct CONTEXT {
|
||||||
pub LastExceptionToRip: u64,
|
pub LastExceptionToRip: u64,
|
||||||
pub LastExceptionFromRip: u64,
|
pub LastExceptionFromRip: u64,
|
||||||
}
|
}
|
||||||
|
#[cfg(any(target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
|
impl Default for CONTEXT {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[cfg(any(target_arch = "arm64ec", target_arch = "x86_64"))]
|
#[cfg(any(target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
|
@ -303,6 +330,12 @@ pub union CONTEXT_0 {
|
||||||
pub FltSave: XSAVE_FORMAT,
|
pub FltSave: XSAVE_FORMAT,
|
||||||
pub Anonymous: CONTEXT_0_0,
|
pub Anonymous: CONTEXT_0_0,
|
||||||
}
|
}
|
||||||
|
#[cfg(any(target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
|
impl Default for CONTEXT_0 {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[cfg(any(target_arch = "arm64ec", target_arch = "x86_64"))]
|
#[cfg(any(target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
|
@ -326,6 +359,12 @@ pub struct CONTEXT_0_0 {
|
||||||
pub Xmm14: M128A,
|
pub Xmm14: M128A,
|
||||||
pub Xmm15: M128A,
|
pub Xmm15: M128A,
|
||||||
}
|
}
|
||||||
|
#[cfg(any(target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
|
impl Default for CONTEXT_0_0 {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[cfg(target_arch = "aarch64")]
|
#[cfg(target_arch = "aarch64")]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
|
@ -343,6 +382,12 @@ pub struct CONTEXT {
|
||||||
pub Wcr: [u32; 2],
|
pub Wcr: [u32; 2],
|
||||||
pub Wvr: [u64; 2],
|
pub Wvr: [u64; 2],
|
||||||
}
|
}
|
||||||
|
#[cfg(target_arch = "aarch64")]
|
||||||
|
impl Default for CONTEXT {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[cfg(target_arch = "aarch64")]
|
#[cfg(target_arch = "aarch64")]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
|
@ -350,9 +395,15 @@ pub union CONTEXT_0 {
|
||||||
pub Anonymous: CONTEXT_0_0,
|
pub Anonymous: CONTEXT_0_0,
|
||||||
pub X: [u64; 31],
|
pub X: [u64; 31],
|
||||||
}
|
}
|
||||||
|
#[cfg(target_arch = "aarch64")]
|
||||||
|
impl Default for CONTEXT_0 {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[cfg(target_arch = "aarch64")]
|
#[cfg(target_arch = "aarch64")]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct CONTEXT_0_0 {
|
pub struct CONTEXT_0_0 {
|
||||||
pub X0: u64,
|
pub X0: u64,
|
||||||
pub X1: u64,
|
pub X1: u64,
|
||||||
|
@ -2305,6 +2356,11 @@ pub struct EXCEPTION_POINTERS {
|
||||||
pub ExceptionRecord: *mut EXCEPTION_RECORD,
|
pub ExceptionRecord: *mut EXCEPTION_RECORD,
|
||||||
pub ContextRecord: *mut CONTEXT,
|
pub ContextRecord: *mut CONTEXT,
|
||||||
}
|
}
|
||||||
|
impl Default for EXCEPTION_POINTERS {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub struct EXCEPTION_RECORD {
|
pub struct EXCEPTION_RECORD {
|
||||||
|
@ -2315,6 +2371,11 @@ pub struct EXCEPTION_RECORD {
|
||||||
pub NumberParameters: u32,
|
pub NumberParameters: u32,
|
||||||
pub ExceptionInformation: [usize; 15],
|
pub ExceptionInformation: [usize; 15],
|
||||||
}
|
}
|
||||||
|
impl Default for EXCEPTION_RECORD {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const EXCEPTION_STACK_OVERFLOW: NTSTATUS = 0xC00000FD_u32 as _;
|
pub const EXCEPTION_STACK_OVERFLOW: NTSTATUS = 0xC00000FD_u32 as _;
|
||||||
pub const EXTENDED_STARTUPINFO_PRESENT: PROCESS_CREATION_FLAGS = 524288u32;
|
pub const EXTENDED_STARTUPINFO_PRESENT: PROCESS_CREATION_FLAGS = 524288u32;
|
||||||
pub const E_NOTIMPL: HRESULT = 0x80004001_u32 as _;
|
pub const E_NOTIMPL: HRESULT = 0x80004001_u32 as _;
|
||||||
|
@ -2333,8 +2394,13 @@ pub struct FD_SET {
|
||||||
pub fd_count: u32,
|
pub fd_count: u32,
|
||||||
pub fd_array: [SOCKET; 64],
|
pub fd_array: [SOCKET; 64],
|
||||||
}
|
}
|
||||||
|
impl Default for FD_SET {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct FILETIME {
|
pub struct FILETIME {
|
||||||
pub dwLowDateTime: u32,
|
pub dwLowDateTime: u32,
|
||||||
pub dwHighDateTime: u32,
|
pub dwHighDateTime: u32,
|
||||||
|
@ -2343,7 +2409,7 @@ pub type FILE_ACCESS_RIGHTS = u32;
|
||||||
pub const FILE_ADD_FILE: FILE_ACCESS_RIGHTS = 2u32;
|
pub const FILE_ADD_FILE: FILE_ACCESS_RIGHTS = 2u32;
|
||||||
pub const FILE_ADD_SUBDIRECTORY: FILE_ACCESS_RIGHTS = 4u32;
|
pub const FILE_ADD_SUBDIRECTORY: FILE_ACCESS_RIGHTS = 4u32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct FILE_ALLOCATION_INFO {
|
pub struct FILE_ALLOCATION_INFO {
|
||||||
pub AllocationSize: i64,
|
pub AllocationSize: i64,
|
||||||
}
|
}
|
||||||
|
@ -2369,7 +2435,7 @@ pub const FILE_ATTRIBUTE_REPARSE_POINT: FILE_FLAGS_AND_ATTRIBUTES = 1024u32;
|
||||||
pub const FILE_ATTRIBUTE_SPARSE_FILE: FILE_FLAGS_AND_ATTRIBUTES = 512u32;
|
pub const FILE_ATTRIBUTE_SPARSE_FILE: FILE_FLAGS_AND_ATTRIBUTES = 512u32;
|
||||||
pub const FILE_ATTRIBUTE_SYSTEM: FILE_FLAGS_AND_ATTRIBUTES = 4u32;
|
pub const FILE_ATTRIBUTE_SYSTEM: FILE_FLAGS_AND_ATTRIBUTES = 4u32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct FILE_ATTRIBUTE_TAG_INFO {
|
pub struct FILE_ATTRIBUTE_TAG_INFO {
|
||||||
pub FileAttributes: u32,
|
pub FileAttributes: u32,
|
||||||
pub ReparseTag: u32,
|
pub ReparseTag: u32,
|
||||||
|
@ -2378,7 +2444,7 @@ pub const FILE_ATTRIBUTE_TEMPORARY: FILE_FLAGS_AND_ATTRIBUTES = 256u32;
|
||||||
pub const FILE_ATTRIBUTE_UNPINNED: FILE_FLAGS_AND_ATTRIBUTES = 1048576u32;
|
pub const FILE_ATTRIBUTE_UNPINNED: FILE_FLAGS_AND_ATTRIBUTES = 1048576u32;
|
||||||
pub const FILE_ATTRIBUTE_VIRTUAL: FILE_FLAGS_AND_ATTRIBUTES = 65536u32;
|
pub const FILE_ATTRIBUTE_VIRTUAL: FILE_FLAGS_AND_ATTRIBUTES = 65536u32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct FILE_BASIC_INFO {
|
pub struct FILE_BASIC_INFO {
|
||||||
pub CreationTime: i64,
|
pub CreationTime: i64,
|
||||||
pub LastAccessTime: i64,
|
pub LastAccessTime: i64,
|
||||||
|
@ -2405,19 +2471,19 @@ pub const FILE_DISPOSITION_FLAG_IGNORE_READONLY_ATTRIBUTE: FILE_DISPOSITION_INFO
|
||||||
pub const FILE_DISPOSITION_FLAG_ON_CLOSE: FILE_DISPOSITION_INFO_EX_FLAGS = 8u32;
|
pub const FILE_DISPOSITION_FLAG_ON_CLOSE: FILE_DISPOSITION_INFO_EX_FLAGS = 8u32;
|
||||||
pub const FILE_DISPOSITION_FLAG_POSIX_SEMANTICS: FILE_DISPOSITION_INFO_EX_FLAGS = 2u32;
|
pub const FILE_DISPOSITION_FLAG_POSIX_SEMANTICS: FILE_DISPOSITION_INFO_EX_FLAGS = 2u32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct FILE_DISPOSITION_INFO {
|
pub struct FILE_DISPOSITION_INFO {
|
||||||
pub DeleteFile: bool,
|
pub DeleteFile: bool,
|
||||||
}
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct FILE_DISPOSITION_INFO_EX {
|
pub struct FILE_DISPOSITION_INFO_EX {
|
||||||
pub Flags: FILE_DISPOSITION_INFO_EX_FLAGS,
|
pub Flags: FILE_DISPOSITION_INFO_EX_FLAGS,
|
||||||
}
|
}
|
||||||
pub type FILE_DISPOSITION_INFO_EX_FLAGS = u32;
|
pub type FILE_DISPOSITION_INFO_EX_FLAGS = u32;
|
||||||
pub const FILE_END: SET_FILE_POINTER_MOVE_METHOD = 2u32;
|
pub const FILE_END: SET_FILE_POINTER_MOVE_METHOD = 2u32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct FILE_END_OF_FILE_INFO {
|
pub struct FILE_END_OF_FILE_INFO {
|
||||||
pub EndOfFile: i64,
|
pub EndOfFile: i64,
|
||||||
}
|
}
|
||||||
|
@ -2457,9 +2523,14 @@ pub struct FILE_ID_BOTH_DIR_INFO {
|
||||||
pub FileId: i64,
|
pub FileId: i64,
|
||||||
pub FileName: [u16; 1],
|
pub FileName: [u16; 1],
|
||||||
}
|
}
|
||||||
|
impl Default for FILE_ID_BOTH_DIR_INFO {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub type FILE_INFO_BY_HANDLE_CLASS = i32;
|
pub type FILE_INFO_BY_HANDLE_CLASS = i32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct FILE_IO_PRIORITY_HINT_INFO {
|
pub struct FILE_IO_PRIORITY_HINT_INFO {
|
||||||
pub PriorityHint: PRIORITY_HINT,
|
pub PriorityHint: PRIORITY_HINT,
|
||||||
}
|
}
|
||||||
|
@ -2494,12 +2565,22 @@ pub struct FILE_RENAME_INFO {
|
||||||
pub FileNameLength: u32,
|
pub FileNameLength: u32,
|
||||||
pub FileName: [u16; 1],
|
pub FileName: [u16; 1],
|
||||||
}
|
}
|
||||||
|
impl Default for FILE_RENAME_INFO {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub union FILE_RENAME_INFO_0 {
|
pub union FILE_RENAME_INFO_0 {
|
||||||
pub ReplaceIfExists: bool,
|
pub ReplaceIfExists: bool,
|
||||||
pub Flags: u32,
|
pub Flags: u32,
|
||||||
}
|
}
|
||||||
|
impl Default for FILE_RENAME_INFO_0 {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const FILE_RESERVE_OPFILTER: NTCREATEFILE_CREATE_OPTIONS = 1048576u32;
|
pub const FILE_RESERVE_OPFILTER: NTCREATEFILE_CREATE_OPTIONS = 1048576u32;
|
||||||
pub const FILE_SEQUENTIAL_ONLY: NTCREATEFILE_CREATE_OPTIONS = 4u32;
|
pub const FILE_SEQUENTIAL_ONLY: NTCREATEFILE_CREATE_OPTIONS = 4u32;
|
||||||
pub const FILE_SESSION_AWARE: NTCREATEFILE_CREATE_OPTIONS = 262144u32;
|
pub const FILE_SESSION_AWARE: NTCREATEFILE_CREATE_OPTIONS = 262144u32;
|
||||||
|
@ -2509,7 +2590,7 @@ pub const FILE_SHARE_NONE: FILE_SHARE_MODE = 0u32;
|
||||||
pub const FILE_SHARE_READ: FILE_SHARE_MODE = 1u32;
|
pub const FILE_SHARE_READ: FILE_SHARE_MODE = 1u32;
|
||||||
pub const FILE_SHARE_WRITE: FILE_SHARE_MODE = 2u32;
|
pub const FILE_SHARE_WRITE: FILE_SHARE_MODE = 2u32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct FILE_STANDARD_INFO {
|
pub struct FILE_STANDARD_INFO {
|
||||||
pub AllocationSize: i64,
|
pub AllocationSize: i64,
|
||||||
pub EndOfFile: i64,
|
pub EndOfFile: i64,
|
||||||
|
@ -2549,6 +2630,12 @@ pub struct FLOATING_SAVE_AREA {
|
||||||
pub RegisterArea: [u8; 80],
|
pub RegisterArea: [u8; 80],
|
||||||
pub Spare0: u32,
|
pub Spare0: u32,
|
||||||
}
|
}
|
||||||
|
#[cfg(target_arch = "x86")]
|
||||||
|
impl Default for FLOATING_SAVE_AREA {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[cfg(any(target_arch = "aarch64", target_arch = "arm64ec", target_arch = "x86_64"))]
|
#[cfg(any(target_arch = "aarch64", target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
|
@ -2563,6 +2650,12 @@ pub struct FLOATING_SAVE_AREA {
|
||||||
pub RegisterArea: [u8; 80],
|
pub RegisterArea: [u8; 80],
|
||||||
pub Cr0NpxState: u32,
|
pub Cr0NpxState: u32,
|
||||||
}
|
}
|
||||||
|
#[cfg(any(target_arch = "aarch64", target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
|
impl Default for FLOATING_SAVE_AREA {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const FORMAT_MESSAGE_ALLOCATE_BUFFER: FORMAT_MESSAGE_OPTIONS = 256u32;
|
pub const FORMAT_MESSAGE_ALLOCATE_BUFFER: FORMAT_MESSAGE_OPTIONS = 256u32;
|
||||||
pub const FORMAT_MESSAGE_ARGUMENT_ARRAY: FORMAT_MESSAGE_OPTIONS = 8192u32;
|
pub const FORMAT_MESSAGE_ARGUMENT_ARRAY: FORMAT_MESSAGE_OPTIONS = 8192u32;
|
||||||
pub const FORMAT_MESSAGE_FROM_HMODULE: FORMAT_MESSAGE_OPTIONS = 2048u32;
|
pub const FORMAT_MESSAGE_FROM_HMODULE: FORMAT_MESSAGE_OPTIONS = 2048u32;
|
||||||
|
@ -2639,12 +2732,22 @@ pub const IDLE_PRIORITY_CLASS: PROCESS_CREATION_FLAGS = 64u32;
|
||||||
pub struct IN6_ADDR {
|
pub struct IN6_ADDR {
|
||||||
pub u: IN6_ADDR_0,
|
pub u: IN6_ADDR_0,
|
||||||
}
|
}
|
||||||
|
impl Default for IN6_ADDR {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub union IN6_ADDR_0 {
|
pub union IN6_ADDR_0 {
|
||||||
pub Byte: [u8; 16],
|
pub Byte: [u8; 16],
|
||||||
pub Word: [u16; 8],
|
pub Word: [u16; 8],
|
||||||
}
|
}
|
||||||
|
impl Default for IN6_ADDR_0 {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const INFINITE: u32 = 4294967295u32;
|
pub const INFINITE: u32 = 4294967295u32;
|
||||||
pub const INHERIT_CALLER_PRIORITY: PROCESS_CREATION_FLAGS = 131072u32;
|
pub const INHERIT_CALLER_PRIORITY: PROCESS_CREATION_FLAGS = 131072u32;
|
||||||
pub const INHERIT_PARENT_AFFINITY: PROCESS_CREATION_FLAGS = 65536u32;
|
pub const INHERIT_PARENT_AFFINITY: PROCESS_CREATION_FLAGS = 65536u32;
|
||||||
|
@ -2653,6 +2756,11 @@ pub const INHERIT_PARENT_AFFINITY: PROCESS_CREATION_FLAGS = 65536u32;
|
||||||
pub union INIT_ONCE {
|
pub union INIT_ONCE {
|
||||||
pub Ptr: *mut core::ffi::c_void,
|
pub Ptr: *mut core::ffi::c_void,
|
||||||
}
|
}
|
||||||
|
impl Default for INIT_ONCE {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const INIT_ONCE_INIT_FAILED: u32 = 4u32;
|
pub const INIT_ONCE_INIT_FAILED: u32 = 4u32;
|
||||||
pub const INVALID_FILE_ATTRIBUTES: u32 = 4294967295u32;
|
pub const INVALID_FILE_ATTRIBUTES: u32 = 4294967295u32;
|
||||||
pub const INVALID_SOCKET: SOCKET = -1i32 as _;
|
pub const INVALID_SOCKET: SOCKET = -1i32 as _;
|
||||||
|
@ -2661,6 +2769,11 @@ pub const INVALID_SOCKET: SOCKET = -1i32 as _;
|
||||||
pub struct IN_ADDR {
|
pub struct IN_ADDR {
|
||||||
pub S_un: IN_ADDR_0,
|
pub S_un: IN_ADDR_0,
|
||||||
}
|
}
|
||||||
|
impl Default for IN_ADDR {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub union IN_ADDR_0 {
|
pub union IN_ADDR_0 {
|
||||||
|
@ -2668,8 +2781,13 @@ pub union IN_ADDR_0 {
|
||||||
pub S_un_w: IN_ADDR_0_1,
|
pub S_un_w: IN_ADDR_0_1,
|
||||||
pub S_addr: u32,
|
pub S_addr: u32,
|
||||||
}
|
}
|
||||||
|
impl Default for IN_ADDR_0 {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct IN_ADDR_0_0 {
|
pub struct IN_ADDR_0_0 {
|
||||||
pub s_b1: u8,
|
pub s_b1: u8,
|
||||||
pub s_b2: u8,
|
pub s_b2: u8,
|
||||||
|
@ -2677,7 +2795,7 @@ pub struct IN_ADDR_0_0 {
|
||||||
pub s_b4: u8,
|
pub s_b4: u8,
|
||||||
}
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct IN_ADDR_0_1 {
|
pub struct IN_ADDR_0_1 {
|
||||||
pub s_w1: u16,
|
pub s_w1: u16,
|
||||||
pub s_w2: u16,
|
pub s_w2: u16,
|
||||||
|
@ -2690,12 +2808,22 @@ pub struct IO_STATUS_BLOCK {
|
||||||
pub Anonymous: IO_STATUS_BLOCK_0,
|
pub Anonymous: IO_STATUS_BLOCK_0,
|
||||||
pub Information: usize,
|
pub Information: usize,
|
||||||
}
|
}
|
||||||
|
impl Default for IO_STATUS_BLOCK {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub union IO_STATUS_BLOCK_0 {
|
pub union IO_STATUS_BLOCK_0 {
|
||||||
pub Status: NTSTATUS,
|
pub Status: NTSTATUS,
|
||||||
pub Pointer: *mut core::ffi::c_void,
|
pub Pointer: *mut core::ffi::c_void,
|
||||||
}
|
}
|
||||||
|
impl Default for IO_STATUS_BLOCK_0 {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub type IPPROTO = i32;
|
pub type IPPROTO = i32;
|
||||||
pub const IPPROTO_AH: IPPROTO = 51i32;
|
pub const IPPROTO_AH: IPPROTO = 51i32;
|
||||||
pub const IPPROTO_CBT: IPPROTO = 7i32;
|
pub const IPPROTO_CBT: IPPROTO = 7i32;
|
||||||
|
@ -2742,6 +2870,11 @@ pub struct IPV6_MREQ {
|
||||||
pub ipv6mr_multiaddr: IN6_ADDR,
|
pub ipv6mr_multiaddr: IN6_ADDR,
|
||||||
pub ipv6mr_interface: u32,
|
pub ipv6mr_interface: u32,
|
||||||
}
|
}
|
||||||
|
impl Default for IPV6_MREQ {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const IPV6_MULTICAST_LOOP: i32 = 11i32;
|
pub const IPV6_MULTICAST_LOOP: i32 = 11i32;
|
||||||
pub const IPV6_V6ONLY: i32 = 27i32;
|
pub const IPV6_V6ONLY: i32 = 27i32;
|
||||||
pub const IP_ADD_MEMBERSHIP: i32 = 12i32;
|
pub const IP_ADD_MEMBERSHIP: i32 = 12i32;
|
||||||
|
@ -2752,11 +2885,16 @@ pub struct IP_MREQ {
|
||||||
pub imr_multiaddr: IN_ADDR,
|
pub imr_multiaddr: IN_ADDR,
|
||||||
pub imr_interface: IN_ADDR,
|
pub imr_interface: IN_ADDR,
|
||||||
}
|
}
|
||||||
|
impl Default for IP_MREQ {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const IP_MULTICAST_LOOP: i32 = 11i32;
|
pub const IP_MULTICAST_LOOP: i32 = 11i32;
|
||||||
pub const IP_MULTICAST_TTL: i32 = 10i32;
|
pub const IP_MULTICAST_TTL: i32 = 10i32;
|
||||||
pub const IP_TTL: i32 = 4i32;
|
pub const IP_TTL: i32 = 4i32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct LINGER {
|
pub struct LINGER {
|
||||||
pub l_onoff: u16,
|
pub l_onoff: u16,
|
||||||
pub l_linger: u16,
|
pub l_linger: u16,
|
||||||
|
@ -2797,7 +2935,7 @@ pub type LPWSAOVERLAPPED_COMPLETION_ROUTINE = Option<
|
||||||
),
|
),
|
||||||
>;
|
>;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct M128A {
|
pub struct M128A {
|
||||||
pub Low: u64,
|
pub Low: u64,
|
||||||
pub High: i64,
|
pub High: i64,
|
||||||
|
@ -2838,6 +2976,11 @@ pub struct OBJECT_ATTRIBUTES {
|
||||||
pub SecurityDescriptor: *const SECURITY_DESCRIPTOR,
|
pub SecurityDescriptor: *const SECURITY_DESCRIPTOR,
|
||||||
pub SecurityQualityOfService: *const SECURITY_QUALITY_OF_SERVICE,
|
pub SecurityQualityOfService: *const SECURITY_QUALITY_OF_SERVICE,
|
||||||
}
|
}
|
||||||
|
impl Default for OBJECT_ATTRIBUTES {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub type OBJECT_ATTRIBUTE_FLAGS = u32;
|
pub type OBJECT_ATTRIBUTE_FLAGS = u32;
|
||||||
pub const OBJ_DONT_REPARSE: OBJECT_ATTRIBUTE_FLAGS = 4096u32;
|
pub const OBJ_DONT_REPARSE: OBJECT_ATTRIBUTE_FLAGS = 4096u32;
|
||||||
pub const OPEN_ALWAYS: FILE_CREATION_DISPOSITION = 4u32;
|
pub const OPEN_ALWAYS: FILE_CREATION_DISPOSITION = 4u32;
|
||||||
|
@ -2850,14 +2993,24 @@ pub struct OVERLAPPED {
|
||||||
pub Anonymous: OVERLAPPED_0,
|
pub Anonymous: OVERLAPPED_0,
|
||||||
pub hEvent: HANDLE,
|
pub hEvent: HANDLE,
|
||||||
}
|
}
|
||||||
|
impl Default for OVERLAPPED {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub union OVERLAPPED_0 {
|
pub union OVERLAPPED_0 {
|
||||||
pub Anonymous: OVERLAPPED_0_0,
|
pub Anonymous: OVERLAPPED_0_0,
|
||||||
pub Pointer: *mut core::ffi::c_void,
|
pub Pointer: *mut core::ffi::c_void,
|
||||||
}
|
}
|
||||||
|
impl Default for OVERLAPPED_0 {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct OVERLAPPED_0_0 {
|
pub struct OVERLAPPED_0_0 {
|
||||||
pub Offset: u32,
|
pub Offset: u32,
|
||||||
pub OffsetHigh: u32,
|
pub OffsetHigh: u32,
|
||||||
|
@ -2895,6 +3048,11 @@ pub struct PROCESS_INFORMATION {
|
||||||
pub dwProcessId: u32,
|
pub dwProcessId: u32,
|
||||||
pub dwThreadId: u32,
|
pub dwThreadId: u32,
|
||||||
}
|
}
|
||||||
|
impl Default for PROCESS_INFORMATION {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const PROCESS_MODE_BACKGROUND_BEGIN: PROCESS_CREATION_FLAGS = 1048576u32;
|
pub const PROCESS_MODE_BACKGROUND_BEGIN: PROCESS_CREATION_FLAGS = 1048576u32;
|
||||||
pub const PROCESS_MODE_BACKGROUND_END: PROCESS_CREATION_FLAGS = 2097152u32;
|
pub const PROCESS_MODE_BACKGROUND_END: PROCESS_CREATION_FLAGS = 2097152u32;
|
||||||
pub const PROFILE_KERNEL: PROCESS_CREATION_FLAGS = 536870912u32;
|
pub const PROFILE_KERNEL: PROCESS_CREATION_FLAGS = 536870912u32;
|
||||||
|
@ -2926,6 +3084,11 @@ pub struct SECURITY_ATTRIBUTES {
|
||||||
pub lpSecurityDescriptor: *mut core::ffi::c_void,
|
pub lpSecurityDescriptor: *mut core::ffi::c_void,
|
||||||
pub bInheritHandle: BOOL,
|
pub bInheritHandle: BOOL,
|
||||||
}
|
}
|
||||||
|
impl Default for SECURITY_ATTRIBUTES {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const SECURITY_CONTEXT_TRACKING: FILE_FLAGS_AND_ATTRIBUTES = 262144u32;
|
pub const SECURITY_CONTEXT_TRACKING: FILE_FLAGS_AND_ATTRIBUTES = 262144u32;
|
||||||
pub const SECURITY_DELEGATION: FILE_FLAGS_AND_ATTRIBUTES = 196608u32;
|
pub const SECURITY_DELEGATION: FILE_FLAGS_AND_ATTRIBUTES = 196608u32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
|
@ -2939,13 +3102,18 @@ pub struct SECURITY_DESCRIPTOR {
|
||||||
pub Sacl: *mut ACL,
|
pub Sacl: *mut ACL,
|
||||||
pub Dacl: *mut ACL,
|
pub Dacl: *mut ACL,
|
||||||
}
|
}
|
||||||
|
impl Default for SECURITY_DESCRIPTOR {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub type SECURITY_DESCRIPTOR_CONTROL = u16;
|
pub type SECURITY_DESCRIPTOR_CONTROL = u16;
|
||||||
pub const SECURITY_EFFECTIVE_ONLY: FILE_FLAGS_AND_ATTRIBUTES = 524288u32;
|
pub const SECURITY_EFFECTIVE_ONLY: FILE_FLAGS_AND_ATTRIBUTES = 524288u32;
|
||||||
pub const SECURITY_IDENTIFICATION: FILE_FLAGS_AND_ATTRIBUTES = 65536u32;
|
pub const SECURITY_IDENTIFICATION: FILE_FLAGS_AND_ATTRIBUTES = 65536u32;
|
||||||
pub const SECURITY_IMPERSONATION: FILE_FLAGS_AND_ATTRIBUTES = 131072u32;
|
pub const SECURITY_IMPERSONATION: FILE_FLAGS_AND_ATTRIBUTES = 131072u32;
|
||||||
pub type SECURITY_IMPERSONATION_LEVEL = i32;
|
pub type SECURITY_IMPERSONATION_LEVEL = i32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct SECURITY_QUALITY_OF_SERVICE {
|
pub struct SECURITY_QUALITY_OF_SERVICE {
|
||||||
pub Length: u32,
|
pub Length: u32,
|
||||||
pub ImpersonationLevel: SECURITY_IMPERSONATION_LEVEL,
|
pub ImpersonationLevel: SECURITY_IMPERSONATION_LEVEL,
|
||||||
|
@ -2962,6 +3130,11 @@ pub struct SOCKADDR {
|
||||||
pub sa_family: ADDRESS_FAMILY,
|
pub sa_family: ADDRESS_FAMILY,
|
||||||
pub sa_data: [i8; 14],
|
pub sa_data: [i8; 14],
|
||||||
}
|
}
|
||||||
|
impl Default for SOCKADDR {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub struct SOCKADDR_STORAGE {
|
pub struct SOCKADDR_STORAGE {
|
||||||
|
@ -2970,12 +3143,22 @@ pub struct SOCKADDR_STORAGE {
|
||||||
pub __ss_align: i64,
|
pub __ss_align: i64,
|
||||||
pub __ss_pad2: [i8; 112],
|
pub __ss_pad2: [i8; 112],
|
||||||
}
|
}
|
||||||
|
impl Default for SOCKADDR_STORAGE {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub struct SOCKADDR_UN {
|
pub struct SOCKADDR_UN {
|
||||||
pub sun_family: ADDRESS_FAMILY,
|
pub sun_family: ADDRESS_FAMILY,
|
||||||
pub sun_path: [i8; 108],
|
pub sun_path: [i8; 108],
|
||||||
}
|
}
|
||||||
|
impl Default for SOCKADDR_UN {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub type SOCKET = usize;
|
pub type SOCKET = usize;
|
||||||
pub const SOCKET_ERROR: i32 = -1i32;
|
pub const SOCKET_ERROR: i32 = -1i32;
|
||||||
pub const SOCK_DGRAM: WINSOCK_SOCKET_TYPE = 2i32;
|
pub const SOCK_DGRAM: WINSOCK_SOCKET_TYPE = 2i32;
|
||||||
|
@ -2995,6 +3178,11 @@ pub const SPECIFIC_RIGHTS_ALL: FILE_ACCESS_RIGHTS = 65535u32;
|
||||||
pub struct SRWLOCK {
|
pub struct SRWLOCK {
|
||||||
pub Ptr: *mut core::ffi::c_void,
|
pub Ptr: *mut core::ffi::c_void,
|
||||||
}
|
}
|
||||||
|
impl Default for SRWLOCK {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const STACK_SIZE_PARAM_IS_A_RESERVATION: THREAD_CREATION_FLAGS = 65536u32;
|
pub const STACK_SIZE_PARAM_IS_A_RESERVATION: THREAD_CREATION_FLAGS = 65536u32;
|
||||||
pub const STANDARD_RIGHTS_ALL: FILE_ACCESS_RIGHTS = 2031616u32;
|
pub const STANDARD_RIGHTS_ALL: FILE_ACCESS_RIGHTS = 2031616u32;
|
||||||
pub const STANDARD_RIGHTS_EXECUTE: FILE_ACCESS_RIGHTS = 131072u32;
|
pub const STANDARD_RIGHTS_EXECUTE: FILE_ACCESS_RIGHTS = 131072u32;
|
||||||
|
@ -3021,6 +3209,11 @@ pub struct STARTUPINFOEXW {
|
||||||
pub StartupInfo: STARTUPINFOW,
|
pub StartupInfo: STARTUPINFOW,
|
||||||
pub lpAttributeList: LPPROC_THREAD_ATTRIBUTE_LIST,
|
pub lpAttributeList: LPPROC_THREAD_ATTRIBUTE_LIST,
|
||||||
}
|
}
|
||||||
|
impl Default for STARTUPINFOEXW {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub struct STARTUPINFOW {
|
pub struct STARTUPINFOW {
|
||||||
|
@ -3043,6 +3236,11 @@ pub struct STARTUPINFOW {
|
||||||
pub hStdOutput: HANDLE,
|
pub hStdOutput: HANDLE,
|
||||||
pub hStdError: HANDLE,
|
pub hStdError: HANDLE,
|
||||||
}
|
}
|
||||||
|
impl Default for STARTUPINFOW {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub type STARTUPINFOW_FLAGS = u32;
|
pub type STARTUPINFOW_FLAGS = u32;
|
||||||
pub const STATUS_DELETE_PENDING: NTSTATUS = 0xC0000056_u32 as _;
|
pub const STATUS_DELETE_PENDING: NTSTATUS = 0xC0000056_u32 as _;
|
||||||
pub const STATUS_DIRECTORY_NOT_EMPTY: NTSTATUS = 0xC0000101_u32 as _;
|
pub const STATUS_DIRECTORY_NOT_EMPTY: NTSTATUS = 0xC0000101_u32 as _;
|
||||||
|
@ -3078,14 +3276,24 @@ pub struct SYSTEM_INFO {
|
||||||
pub wProcessorLevel: u16,
|
pub wProcessorLevel: u16,
|
||||||
pub wProcessorRevision: u16,
|
pub wProcessorRevision: u16,
|
||||||
}
|
}
|
||||||
|
impl Default for SYSTEM_INFO {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub union SYSTEM_INFO_0 {
|
pub union SYSTEM_INFO_0 {
|
||||||
pub dwOemId: u32,
|
pub dwOemId: u32,
|
||||||
pub Anonymous: SYSTEM_INFO_0_0,
|
pub Anonymous: SYSTEM_INFO_0_0,
|
||||||
}
|
}
|
||||||
|
impl Default for SYSTEM_INFO_0 {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct SYSTEM_INFO_0_0 {
|
pub struct SYSTEM_INFO_0_0 {
|
||||||
pub wProcessorArchitecture: PROCESSOR_ARCHITECTURE,
|
pub wProcessorArchitecture: PROCESSOR_ARCHITECTURE,
|
||||||
pub wReserved: u16,
|
pub wReserved: u16,
|
||||||
|
@ -3097,7 +3305,7 @@ pub type THREAD_CREATION_FLAGS = u32;
|
||||||
pub const TIMER_ALL_ACCESS: SYNCHRONIZATION_ACCESS_RIGHTS = 2031619u32;
|
pub const TIMER_ALL_ACCESS: SYNCHRONIZATION_ACCESS_RIGHTS = 2031619u32;
|
||||||
pub const TIMER_MODIFY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = 2u32;
|
pub const TIMER_MODIFY_STATE: SYNCHRONIZATION_ACCESS_RIGHTS = 2u32;
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy, Default)]
|
||||||
pub struct TIMEVAL {
|
pub struct TIMEVAL {
|
||||||
pub tv_sec: i32,
|
pub tv_sec: i32,
|
||||||
pub tv_usec: i32,
|
pub tv_usec: i32,
|
||||||
|
@ -3134,6 +3342,11 @@ pub struct UNICODE_STRING {
|
||||||
pub MaximumLength: u16,
|
pub MaximumLength: u16,
|
||||||
pub Buffer: PWSTR,
|
pub Buffer: PWSTR,
|
||||||
}
|
}
|
||||||
|
impl Default for UNICODE_STRING {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const VOLUME_NAME_DOS: GETFINALPATHNAMEBYHANDLE_FLAGS = 0u32;
|
pub const VOLUME_NAME_DOS: GETFINALPATHNAMEBYHANDLE_FLAGS = 0u32;
|
||||||
pub const VOLUME_NAME_GUID: GETFINALPATHNAMEBYHANDLE_FLAGS = 1u32;
|
pub const VOLUME_NAME_GUID: GETFINALPATHNAMEBYHANDLE_FLAGS = 1u32;
|
||||||
pub const VOLUME_NAME_NONE: GETFINALPATHNAMEBYHANDLE_FLAGS = 4u32;
|
pub const VOLUME_NAME_NONE: GETFINALPATHNAMEBYHANDLE_FLAGS = 4u32;
|
||||||
|
@ -3160,6 +3373,11 @@ pub struct WIN32_FIND_DATAW {
|
||||||
pub cFileName: [u16; 260],
|
pub cFileName: [u16; 260],
|
||||||
pub cAlternateFileName: [u16; 14],
|
pub cAlternateFileName: [u16; 14],
|
||||||
}
|
}
|
||||||
|
impl Default for WIN32_FIND_DATAW {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub type WINSOCK_SHUTDOWN_HOW = i32;
|
pub type WINSOCK_SHUTDOWN_HOW = i32;
|
||||||
pub type WINSOCK_SOCKET_TYPE = i32;
|
pub type WINSOCK_SOCKET_TYPE = i32;
|
||||||
pub const WRITE_DAC: FILE_ACCESS_RIGHTS = 262144u32;
|
pub const WRITE_DAC: FILE_ACCESS_RIGHTS = 262144u32;
|
||||||
|
@ -3171,6 +3389,11 @@ pub struct WSABUF {
|
||||||
pub len: u32,
|
pub len: u32,
|
||||||
pub buf: PSTR,
|
pub buf: PSTR,
|
||||||
}
|
}
|
||||||
|
impl Default for WSABUF {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[cfg(target_arch = "x86")]
|
#[cfg(target_arch = "x86")]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
|
@ -3183,6 +3406,12 @@ pub struct WSADATA {
|
||||||
pub iMaxUdpDg: u16,
|
pub iMaxUdpDg: u16,
|
||||||
pub lpVendorInfo: PSTR,
|
pub lpVendorInfo: PSTR,
|
||||||
}
|
}
|
||||||
|
#[cfg(target_arch = "x86")]
|
||||||
|
impl Default for WSADATA {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[cfg(any(target_arch = "aarch64", target_arch = "arm64ec", target_arch = "x86_64"))]
|
#[cfg(any(target_arch = "aarch64", target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
|
@ -3195,6 +3424,12 @@ pub struct WSADATA {
|
||||||
pub szDescription: [i8; 257],
|
pub szDescription: [i8; 257],
|
||||||
pub szSystemStatus: [i8; 129],
|
pub szSystemStatus: [i8; 129],
|
||||||
}
|
}
|
||||||
|
#[cfg(any(target_arch = "aarch64", target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
|
impl Default for WSADATA {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const WSAEACCES: WSA_ERROR = 10013i32;
|
pub const WSAEACCES: WSA_ERROR = 10013i32;
|
||||||
pub const WSAEADDRINUSE: WSA_ERROR = 10048i32;
|
pub const WSAEADDRINUSE: WSA_ERROR = 10048i32;
|
||||||
pub const WSAEADDRNOTAVAIL: WSA_ERROR = 10049i32;
|
pub const WSAEADDRNOTAVAIL: WSA_ERROR = 10049i32;
|
||||||
|
@ -3255,6 +3490,11 @@ pub struct WSAPROTOCOLCHAIN {
|
||||||
pub ChainLen: i32,
|
pub ChainLen: i32,
|
||||||
pub ChainEntries: [u32; 7],
|
pub ChainEntries: [u32; 7],
|
||||||
}
|
}
|
||||||
|
impl Default for WSAPROTOCOLCHAIN {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
pub struct WSAPROTOCOL_INFOW {
|
pub struct WSAPROTOCOL_INFOW {
|
||||||
|
@ -3279,6 +3519,11 @@ pub struct WSAPROTOCOL_INFOW {
|
||||||
pub dwProviderReserved: u32,
|
pub dwProviderReserved: u32,
|
||||||
pub szProtocol: [u16; 256],
|
pub szProtocol: [u16; 256],
|
||||||
}
|
}
|
||||||
|
impl Default for WSAPROTOCOL_INFOW {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
pub const WSASERVICE_NOT_FOUND: WSA_ERROR = 10108i32;
|
pub const WSASERVICE_NOT_FOUND: WSA_ERROR = 10108i32;
|
||||||
pub const WSASYSCALLFAILURE: WSA_ERROR = 10107i32;
|
pub const WSASYSCALLFAILURE: WSA_ERROR = 10107i32;
|
||||||
pub const WSASYSNOTREADY: WSA_ERROR = 10091i32;
|
pub const WSASYSNOTREADY: WSA_ERROR = 10091i32;
|
||||||
|
@ -3348,6 +3593,12 @@ pub struct XSAVE_FORMAT {
|
||||||
pub XmmRegisters: [M128A; 8],
|
pub XmmRegisters: [M128A; 8],
|
||||||
pub Reserved4: [u8; 224],
|
pub Reserved4: [u8; 224],
|
||||||
}
|
}
|
||||||
|
#[cfg(target_arch = "x86")]
|
||||||
|
impl Default for XSAVE_FORMAT {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
#[cfg(any(target_arch = "aarch64", target_arch = "arm64ec", target_arch = "x86_64"))]
|
#[cfg(any(target_arch = "aarch64", target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
#[derive(Clone, Copy)]
|
#[derive(Clone, Copy)]
|
||||||
|
@ -3369,6 +3620,12 @@ pub struct XSAVE_FORMAT {
|
||||||
pub XmmRegisters: [M128A; 16],
|
pub XmmRegisters: [M128A; 16],
|
||||||
pub Reserved4: [u8; 96],
|
pub Reserved4: [u8; 96],
|
||||||
}
|
}
|
||||||
|
#[cfg(any(target_arch = "aarch64", target_arch = "arm64ec", target_arch = "x86_64"))]
|
||||||
|
impl Default for XSAVE_FORMAT {
|
||||||
|
fn default() -> Self {
|
||||||
|
unsafe { core::mem::zeroed() }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#[cfg(target_arch = "arm")]
|
#[cfg(target_arch = "arm")]
|
||||||
#[repr(C)]
|
#[repr(C)]
|
||||||
|
|
|
@ -4,4 +4,4 @@ version = "0.1.0"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
|
|
||||||
[dependencies.windows-bindgen]
|
[dependencies.windows-bindgen]
|
||||||
version = "0.59.0"
|
version = "0.61.0"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue