From 071a3d0267c168eec0437d58b5d437c068bbdca9 Mon Sep 17 00:00:00 2001 From: Biswapriyo Nath <[email protected]> Date: Sun, 29 Sep 2024 20:10:06 +0000 Subject: [PATCH] headers: Add new symbols in winnt.h
Signed-off-by: Biswapriyo Nath <[email protected]> --- mingw-w64-headers/include/winnt.h | 130 +++++++++++++++++++++++++++++- 1 file changed, 126 insertions(+), 4 deletions(-) diff --git a/mingw-w64-headers/include/winnt.h b/mingw-w64-headers/include/winnt.h index 1b33b07..df87eb1 100644 --- a/mingw-w64-headers/include/winnt.h +++ b/mingw-w64-headers/include/winnt.h @@ -411,6 +411,18 @@ typedef struct _GROUP_AFFINITY { } GROUP_AFFINITY, *PGROUP_AFFINITY; #endif /* !___GROUP_AFFINITY_DEFINED */ +typedef struct _GROUP_AFFINITY32 { + DWORD Mask; + WORD Group; + WORD Reserved[3]; +} GROUP_AFFINITY32, *PGROUP_AFFINITY32; + +typedef struct _GROUP_AFFINITY64 { + unsigned __int64 Mask; + WORD Group; + WORD Reserved[3]; +} GROUP_AFFINITY64, *PGROUP_AFFINITY64; + #ifdef STRICT typedef void *HANDLE; #define DECLARE_HANDLE(name) struct name##__ { int unused; }; typedef struct name##__ *name @@ -916,6 +928,13 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #define PRODUCT_AZURE_SERVER_CLOUDMOS 0xC8 #define PRODUCT_CLOUDEDITIONN 0xCA #define PRODUCT_CLOUDEDITION 0xCB +#define PRODUCT_VALIDATION 0xCC +#define PRODUCT_IOTENTERPRISESK 0xCD +#define PRODUCT_IOTENTERPRISEK 0xCE +#define PRODUCT_IOTENTERPRISESEVAL 0xCF +#define PRODUCT_AZURE_SERVER_AGENTBRIDGE 0xD0 +#define PRODUCT_AZURE_SERVER_NANOHOST 0xD1 +#define PRODUCT_WNC 0xD2 #define PRODUCT_AZURESTACKHCI_SERVER_CORE 0x196 #define PRODUCT_DATACENTER_SERVER_AZURE_EDITION 0x197 #define PRODUCT_DATACENTER_SERVER_CORE_AZURE_EDITION 0x198 @@ -1502,6 +1521,13 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i DWORD64 Ia32Pl3SspMsr; } XSAVE_CET_U_FORMAT, *PXSAVE_CET_U_FORMAT; + typedef struct _XSAVE_ARM64_SVE_HEADER { + DWORD VectorLength; + DWORD VectorRegisterOffset; + DWORD PredicateRegisterOffset; + DWORD Reserved[5]; + } XSAVE_ARM64_SVE_HEADER, *PXSAVE_ARM64_SVE_HEADER; + typedef struct DECLSPEC_ALIGN (8) _XSAVE_AREA_HEADER { DWORD64 Mask; DWORD64 Reserved[7]; @@ -1512,10 +1538,13 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i XSAVE_AREA_HEADER Header; } XSAVE_AREA,*PXSAVE_AREA; +#define XSTATE_CONTEXT_FLAG_LOOKASIDE 0x1 + typedef struct _XSTATE_CONTEXT { DWORD64 Mask; DWORD Length; - DWORD Reserved1; + BYTE Flags; + BYTE Reserved0[3]; PXSAVE_AREA Area; #if defined (__i386__) DWORD Reserved2; @@ -3099,6 +3128,11 @@ __buildmemorybarrier() SID_HASH_ENTRY Hash[SID_HASH_SIZE]; } SID_AND_ATTRIBUTES_HASH, *PSID_AND_ATTRIBUTES_HASH; + typedef struct _ATTRIBUTES_AND_SID { + UINT32 Attributes; + DWORD SidStart; + } ATTRIBUTES_AND_SID, *PATTRIBUTES_AND_SID; + #define SECURITY_NULL_SID_AUTHORITY {0,0,0,0,0,0} #define SECURITY_WORLD_SID_AUTHORITY {0,0,0,0,0,1} #define SECURITY_LOCAL_SID_AUTHORITY {0,0,0,0,0,2} @@ -3202,9 +3236,15 @@ __buildmemorybarrier() #define SECURITY_CCG_ID_BASE_RID (__MSABI_LONG(0x0000005f)) #define SECURITY_UMFD_BASE_RID (__MSABI_LONG(0x00000060)) +#define SECURITY_UNIQUIFIED_SERVICE_BASE_RID (__MSABI_LONG(0x00000061)) #define SECURITY_VIRTUALACCOUNT_ID_RID_COUNT (__MSABI_LONG(6)) +#define SECURITY_EDGE_CLOUD_INFRASTRUCTURE_SERVICE_ID_BASE_RID (__MSABI_LONG(0x00000062)) + +#define SECURITY_RESTRICTED_SERVICES_BASE_RID (__MSABI_LONG(0x00000063)) +#define SECURITY_RESTRICTED_SERVICES_RID_COUNT (__MSABI_LONG(6)) + #define SECURITY_MAX_BASE_RID (__MSABI_LONG(0x0000006f)) #define SECURITY_MAX_ALWAYS_FILTERED (__MSABI_LONG(0x000003E7)) @@ -3251,6 +3291,8 @@ __buildmemorybarrier() #define DOMAIN_GROUP_RID_PROTECTED_USERS (__MSABI_LONG(0x0000020d)) #define DOMAIN_GROUP_RID_KEY_ADMINS (__MSABI_LONG(0x0000020e)) #define DOMAIN_GROUP_RID_ENTERPRISE_KEY_ADMINS (__MSABI_LONG(0x0000020f)) +#define DOMAIN_GROUP_RID_FOREST_TRUSTS (__MSABI_LONG(0x00000210)) +#define DOMAIN_GROUP_RID_EXTERNAL_TRUSTS (__MSABI_LONG(0x00000211)) #define DOMAIN_ALIAS_RID_ADMINS (__MSABI_LONG(0x00000220)) #define DOMAIN_ALIAS_RID_USERS (__MSABI_LONG(0x00000221)) @@ -3290,6 +3332,8 @@ __buildmemorybarrier() #define DOMAIN_ALIAS_RID_DEFAULT_ACCOUNT (__MSABI_LONG(0x00000245)) #define DOMAIN_ALIAS_RID_STORAGE_REPLICA_ADMINS (__MSABI_LONG(0x00000246)) #define DOMAIN_ALIAS_RID_DEVICE_OWNERS (__MSABI_LONG(0x00000247)) +#define DOMAIN_ALIAS_RID_USER_MODE_HARDWARE_OPERATORS (__MSABI_LONG(0x00000248)) +#define DOMAIN_ALIAS_RID_OPENSSH_USERS (__MSABI_LONG(0x00000249)) #define SECURITY_APP_PACKAGE_AUTHORITY {0, 0, 0, 0, 0, 15} @@ -3435,7 +3479,9 @@ __buildmemorybarrier() WinAuthenticationKeyPropertyMFASid = 116, WinAuthenticationKeyPropertyAttestationSid = 117, WinAuthenticationFreshKeyAuthSid = 118, - WinBuiltinDeviceOwnersSid = 119 + WinBuiltinDeviceOwnersSid = 119, + WinBuiltinUserModeHardwareOperatorsSid = 120, + WinBuiltinOpenSSHUsersSid = 121 } WELL_KNOWN_SID_TYPE; #define SYSTEM_LUID { 0x3e7, 0x0 } @@ -6111,8 +6157,72 @@ DEFINE_ENUM_FLAG_OPERATORS(JOB_OBJECT_IO_RATE_CONTROL_FLAGS) } FILE_NOTIFY_FULL_INFORMATION,*PFILE_NOTIFY_FULL_INFORMATION; #endif + typedef struct _FILE_STAT_INFORMATION { + LARGE_INTEGER FileId; + LARGE_INTEGER CreationTime; + LARGE_INTEGER LastAccessTime; + LARGE_INTEGER LastWriteTime; + LARGE_INTEGER ChangeTime; + LARGE_INTEGER AllocationSize; + LARGE_INTEGER EndOfFile; + DWORD FileAttributes; + DWORD ReparseTag; + DWORD NumberOfLinks; + ACCESS_MASK EffectiveAccess; + } FILE_STAT_INFORMATION, *PFILE_STAT_INFORMATION; + +#define LX_FILE_METADATA_HAS_UID 0x1 +#define LX_FILE_METADATA_HAS_GID 0x2 +#define LX_FILE_METADATA_HAS_MODE 0x4 +#define LX_FILE_METADATA_HAS_DEVICE_ID 0x8 +#define LX_FILE_CASE_SENSITIVE_DIR 0x10 + + typedef struct _FILE_STAT_LX_INFORMATION { + LARGE_INTEGER FileId; + LARGE_INTEGER CreationTime; + LARGE_INTEGER LastAccessTime; + LARGE_INTEGER LastWriteTime; + LARGE_INTEGER ChangeTime; + LARGE_INTEGER AllocationSize; + LARGE_INTEGER EndOfFile; + DWORD FileAttributes; + DWORD ReparseTag; + DWORD NumberOfLinks; + ACCESS_MASK EffectiveAccess; + DWORD LxFlags; + DWORD LxUid; + DWORD LxGid; + DWORD LxMode; + DWORD LxDeviceIdMajor; + DWORD LxDeviceIdMinor; + } FILE_STAT_LX_INFORMATION, *PFILE_STAT_LX_INFORMATION; + +#if NTDDI_VERSION >= NTDDI_WIN11_ZN + typedef struct _FILE_STAT_BASIC_INFORMATION { + LARGE_INTEGER FileId; + LARGE_INTEGER CreationTime; + LARGE_INTEGER LastAccessTime; + LARGE_INTEGER LastWriteTime; + LARGE_INTEGER ChangeTime; + LARGE_INTEGER AllocationSize; + LARGE_INTEGER EndOfFile; + DWORD FileAttributes; + DWORD ReparseTag; + DWORD NumberOfLinks; + DWORD DeviceType; + DWORD DeviceCharacteristics; + DWORD Reserved; + LARGE_INTEGER VolumeSerialNumber; + FILE_ID_128 FileId128; + } FILE_STAT_BASIC_INFORMATION, *PFILE_STAT_BASIC_INFORMATION; +#endif + #define FILE_CS_FLAG_CASE_SENSITIVE_DIR 0x00000001 + typedef struct _FILE_CASE_SENSITIVE_INFORMATION { + DWORD Flags; + } FILE_CASE_SENSITIVE_INFORMATION, *PFILE_CASE_SENSITIVE_INFORMATION; + typedef union _FILE_SEGMENT_ELEMENT { PVOID64 Buffer; ULONGLONG Alignment; @@ -9240,10 +9350,22 @@ typedef DWORD (WINAPI *PRTL_RUN_ONCE_INIT_FN)(PRTL_RUN_ONCE, PVOID, PVOID *); typedef LONG (NTAPI *PVECTORED_EXCEPTION_HANDLER) (struct _EXCEPTION_POINTERS *ExceptionInfo); typedef enum _HEAP_INFORMATION_CLASS { - HeapCompatibilityInformation, - HeapEnableTerminationOnCorruption + HeapCompatibilityInformation = 0, + HeapEnableTerminationOnCorruption = 1 +#if ((NTDDI_VERSION > NTDDI_WINBLUE) || (NTDDI_VERSION == NTDDI_WINBLUE && defined(WINBLUE_KBSPRING14))) + ,HeapOptimizeResources = 3 +#endif + ,HeapTag = 7 } HEAP_INFORMATION_CLASS; +#if ((NTDDI_VERSION > NTDDI_WINBLUE) || (NTDDI_VERSION == NTDDI_WINBLUE && defined(WINBLUE_KBSPRING14))) +#define HEAP_OPTIMIZE_RESOURCES_CURRENT_VERSION 1 + typedef struct _HEAP_OPTIMIZE_RESOURCES_INFORMATION { + DWORD Version; + DWORD Flags; + } HEAP_OPTIMIZE_RESOURCES_INFORMATION, *PHEAP_OPTIMIZE_RESOURCES_INFORMATION; +#endif + typedef VOID (NTAPI *WORKERCALLBACKFUNC) (PVOID); typedef VOID (NTAPI *APC_CALLBACK_FUNCTION) (DWORD, PVOID, PVOID); typedef VOID (NTAPI *WAITORTIMERCALLBACKFUNC) (PVOID, BOOLEAN); -- 2.46.2
_______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
