headers: Add new symbols in winbase.h
Signed-off-by: Biswapriyo Nath <nathbappai@gmail.com>
Signed-off-by: LIU Hao <lh_mouse@126.com>
diff --git a/mingw-w64-headers/include/winbase.h b/mingw-w64-headers/include/winbase.h
index f0affe0..f733784 100644
--- a/mingw-w64-headers/include/winbase.h
+++ b/mingw-w64-headers/include/winbase.h
@@ -95,6 +95,9 @@
#define FILE_FLAG_FIRST_PIPE_INSTANCE 0x80000
#if _WIN32_WINNT >= _WIN32_WINNT_WIN8
#define FILE_FLAG_OPEN_REQUIRING_OPLOCK 0x40000
+#if NTDDI_VERSION >= NTDDI_WIN10_CU
+#define FILE_FLAG_IGNORE_IMPERSONATED_DEVICEMAP 0x20000
+#endif
#endif
#if NTDDI_VERSION >= NTDDI_WIN10_NI
typedef enum FILE_WRITE_FLAGS {
@@ -148,6 +151,9 @@
#if NTDDI_VERSION >= NTDDI_WIN10_NI
#define COPY_FILE_ENABLE_SPARSE_COPY 0x20000000
#endif
+#if NTDDI_VERSION >= NTDDI_WIN11_ZN
+#define COPY_FILE_DISABLE_SPARSE_COPY 0x80000000
+#endif
#define REPLACEFILE_WRITE_THROUGH 0x1
#define REPLACEFILE_IGNORE_MERGE_ERRORS 0x2
@@ -1729,6 +1735,9 @@
#if NTDDI_VERSION >= NTDDI_WIN10_NI
,ProcThreadAttributeTrustedApp = 29
#endif
+#if NTDDI_VERSION >= NTDDI_WIN11_GE
+ ,ProcThreadAttributeSveVectorLength = 30
+#endif
} PROC_THREAD_ATTRIBUTE_NUM;
#endif
@@ -1767,6 +1776,18 @@
#define PROC_THREAD_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES ProcThreadAttributeValue (ProcThreadAttributeEnableOptionalXStateFeatures, TRUE, TRUE, FALSE)
#endif
+#if (NTDDI_VERSION >= NTDDI_WIN11_GE)
+#define PROC_THREAD_ATTRIBUTE_SVE_VECTOR_LENGTH ProcThreadAttributeValue (ProcThreadAttributeSveVectorLength, FALSE, TRUE, FALSE)
+
+ typedef union _PROCESS_CREATION_SVE_VECTOR_LENGTH {
+ ULONG Data;
+ __C89_NAMELESS struct {
+ ULONG VectorLength : 24;
+ ULONG FlagsReserved : 8;
+ };
+ } PROCESS_CREATION_SVE_VECTOR_LENGTH, *PPROCESS_CREATION_SVE_VECTOR_LENGTH;
+#endif
+
#if _WIN32_WINNT >= _WIN32_WINNT_WIN7
#define PROCESS_CREATION_MITIGATION_POLICY_DEP_ENABLE 0x01
#define PROCESS_CREATION_MITIGATION_POLICY_DEP_ATL_THUNK_ENABLE 0x02
@@ -1940,6 +1961,12 @@
#define PROCESS_CREATION_MITIGATION_POLICY2_RESTRICT_CORE_SHARING_ALWAYS_OFF (0x00000002ULL << 52)
#define PROCESS_CREATION_MITIGATION_POLICY2_RESTRICT_CORE_SHARING_RESERVED (0x00000003ULL << 52)
+#define PROCESS_CREATION_MITIGATION_POLICY2_FSCTL_SYSTEM_CALL_DISABLE_MASK (0x00000003ULL << 56)
+#define PROCESS_CREATION_MITIGATION_POLICY2_FSCTL_SYSTEM_CALL_DISABLE_DEFER (0x00000000ULL << 56)
+#define PROCESS_CREATION_MITIGATION_POLICY2_FSCTL_SYSTEM_CALL_DISABLE_ALWAYS_ON (0x00000001ULL << 56)
+#define PROCESS_CREATION_MITIGATION_POLICY2_FSCTL_SYSTEM_CALL_DISABLE_ALWAYS_OFF (0x00000002ULL << 56)
+#define PROCESS_CREATION_MITIGATION_POLICY2_FSCTL_SYSTEM_CALL_DISABLE_RESERVED (0x00000003ULL << 56)
+
#endif /* _WIN32_WINNT_WINTHRESHOLD */
#endif /* _WIN32_WINNT_WINBLUE */
#endif /* _WIN32_WINNT_WIN8 */
@@ -2385,6 +2412,13 @@
#define COPYFILE2_IO_CYCLE_SIZE_MAX 0x40000000
#define COPYFILE2_IO_RATE_MIN 512
+#if NTDDI_VERSION >= NTDDI_WIN10_GE
+ typedef struct _COPYFILE2_CREATE_OPLOCK_KEYS {
+ GUID ParentOplockKey;
+ GUID TargetOplockKey;
+ } COPYFILE2_CREATE_OPLOCK_KEYS, *PCOPYFILE2_CREATE_OPLOCK_KEYS;
+#endif
+
typedef struct COPYFILE2_EXTENDED_PARAMETERS_V2 {
DWORD dwSize;
DWORD dwCopyFlags;
@@ -2394,14 +2428,28 @@
DWORD dwCopyFlagsV2;
ULONG ioDesiredSize;
ULONG ioDesiredRate;
+#if NTDDI_VERSION >= NTDDI_WIN11_GA
+ LPPROGRESS_ROUTINE pProgressRoutineOld;
+#if NTDDI_VERSION >= NTDDI_WIN10_GE
+ PCOPYFILE2_CREATE_OPLOCK_KEYS SourceOplockKeys;
+ PVOID reserved[6];
+#else
+ PVOID reserved[7];
+#endif
+#else
PVOID reserved[8];
+#endif
} COPYFILE2_EXTENDED_PARAMETERS_V2;
#if NTDDI_VERSION >= NTDDI_WIN10_NI
#define COPY_FILE2_V2_DONT_COPY_JUNCTIONS 0x00000001
+#if NTDDI_VERSION >= NTDDI_WIN11_GA
+#define COPY_FILE2_V2_DISABLE_BLOCK_CLONING 0x00000002
+#define COPY_FILE2_V2_VALID_FLAGS (COPY_FILE2_V2_DONT_COPY_JUNCTIONS | COPY_FILE2_V2_DISABLE_BLOCK_CLONING)
+#else
#define COPY_FILE2_V2_VALID_FLAGS COPY_FILE2_V2_DONT_COPY_JUNCTIONS
-#endif
-
+#endif /* NTDDI_VERSION >= NTDDI_WIN11_GA */
+#endif /* NTDDI_VERSION >= NTDDI_WIN10_NI */
#endif /* NTDDI_VERSION >= NTDDI_WIN10_FE */
WINBASEAPI HRESULT WINAPI CopyFile2 (PCWSTR pwszExistingFileName, PCWSTR pwszNewFileName, COPYFILE2_EXTENDED_PARAMETERS *pExtendedParameters);
@@ -3337,6 +3385,10 @@
} FILE_REMOTE_PROTOCOL_INFO,*PFILE_REMOTE_PROTOCOL_INFO;
WINBASEAPI WINBOOL WINAPI GetFileInformationByHandleEx (HANDLE hFile, FILE_INFO_BY_HANDLE_CLASS FileInformationClass, LPVOID lpFileInformation, DWORD dwBufferSize);
+
+#if NTDDI_VERSION >= NTDDI_WIN11_ZN
+ WINBASEAPI WINBOOL WINAPI GetFileInformationByName(PCWSTR FileName, FILE_INFO_BY_NAME_CLASS FileInformationClass, PVOID FileInfoBuffer, ULONG FileInfoBufferSize);
+#endif
#endif
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)