Re: [Mingw-w64-public] [PATCH] headers: Add some missing names in winnt.h

2021-07-04 Thread LIU Hao

在 2021-07-04 00:20, Biswapriyo Nath 写道:

 From bde6b2d5a697e119ff5722a795cf640cc6c25f25 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath
Date: Sat, 3 Jul 2021 21:46:52 +0530
Subject: [PATCH] headers: Add some missing names in winnt.h

Signed-off-by: Biswapriyo Nath
---
  mingw-w64-headers/include/winnt.h | 123 +-
  1 file changed, 121 insertions(+), 2 deletions(-)


Thanks. This patch looks good to me. Pushed.



--
Best regards,
LIU Hao



OpenPGP_signature
Description: OpenPGP digital signature
___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add some missing names in winnt.h

2021-07-03 Thread Biswapriyo Nath

From bde6b2d5a697e119ff5722a795cf640cc6c25f25 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sat, 3 Jul 2021 21:46:52 +0530
Subject: [PATCH] headers: Add some missing names in winnt.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/winnt.h | 123 +-
 1 file changed, 121 insertions(+), 2 deletions(-)

diff --git a/mingw-w64-headers/include/winnt.h 
b/mingw-w64-headers/include/winnt.h
index 5133c1f..9e660bc 100644
--- a/mingw-w64-headers/include/winnt.h
+++ b/mingw-w64-headers/include/winnt.h
@@ -4180,6 +4180,44 @@ __buildmemorybarrier()
   PVOID UmsCompletionList;
 } UMS_CREATE_THREAD_ATTRIBUTES,*PUMS_CREATE_THREAD_ATTRIBUTES;
 
+#define COMPONENT_KTM 0x01
+#define COMPONENT_VALID_FLAGS COMPONENT_KTM
+
+typedef struct _COMPONENT_FILTER {
+  DWORD ComponentFlags;
+} COMPONENT_FILTER,*PCOMPONENT_FILTER;
+
+#define DYNAMIC_EH_CONTINUATION_TARGET_ADD 0x0001
+#define DYNAMIC_EH_CONTINUATION_TARGET_PROCESSED 0x0002
+
+typedef struct _PROCESS_DYNAMIC_EH_CONTINUATION_TARGET {
+  ULONG_PTR TargetAddress;
+  ULONG_PTR Flags;
+} 
PROCESS_DYNAMIC_EH_CONTINUATION_TARGET,*PPROCESS_DYNAMIC_EH_CONTINUATION_TARGET;
+
+typedef struct _PROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION {
+  WORD NumberOfTargets;
+  WORD Reserved;
+  DWORD Reserved2;
+  PPROCESS_DYNAMIC_EH_CONTINUATION_TARGET Targets;
+} 
PROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION,*PPROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION;
+
+#define DYNAMIC_ENFORCED_ADDRESS_RANGE_ADD 0x0001
+#define DYNAMIC_ENFORCED_ADDRESS_RANGE_PROCESSED 0x0002
+
+typedef struct _PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE {
+  ULONG_PTR BaseAddress;
+  SIZE_T Size;
+  DWORD Flags;
+} 
PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE,*PPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE;
+
+typedef struct _PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION {
+  WORD NumberOfRanges;
+  WORD Reserved;
+  DWORD Reserved2;
+  PPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE Ranges;
+} 
PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION,*PPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION;
+
 typedef struct _QUOTA_LIMITS {
   SIZE_T PagedPoolLimit;
   SIZE_T NonPagedPoolLimit;
@@ -4252,6 +4290,8 @@ __buildmemorybarrier()
   ProcessPayloadRestrictionPolicy,
   ProcessChildProcessPolicy,
   ProcessSideChannelIsolationPolicy,
+  ProcessUserShadowStackPolicy,
+  ProcessRedirectionTrustPolicy,
   MaxProcessMitigationPolicy
 } PROCESS_MITIGATION_POLICY,*PPROCESS_MITIGATION_POLICY;
 
@@ -4426,6 +4466,36 @@ __buildmemorybarrier()
   };
 } PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY, 
*PPROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY;
 
+typedef struct _PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY {
+  __C89_NAMELESS union {
+DWORD Flags;
+__C89_NAMELESS struct {
+  DWORD EnableUserShadowStack : 1;
+  DWORD AuditUserShadowStack : 1;
+  DWORD SetContextIpValidation : 1;
+  DWORD AuditSetContextIpValidation : 1;
+  DWORD EnableUserShadowStackStrictMode : 1;
+  DWORD BlockNonCetBinaries : 1;
+  DWORD BlockNonCetBinariesNonEhcont : 1;
+  DWORD AuditBlockNonCetBinaries : 1;
+  DWORD CetDynamicApisOutOfProcOnly : 1;
+  DWORD SetContextIpValidationRelaxedMode : 1;
+  DWORD ReservedFlags : 22;
+};
+  };
+} PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY, 
*PPROCESS_MITIGATION_USER_SHADOW_STACK_POLICY;
+
+typedef struct _PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY {
+  __C89_NAMELESS union {
+DWORD Flags;
+__C89_NAMELESS struct {
+  DWORD EnforceRedirectionTrust : 1;
+  DWORD AuditRedirectionTrust : 1;
+  DWORD ReservedFlags : 30;
+};
+  };
+} PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY, 
*PPROCESS_MITIGATION_REDIRECTION_TRUST_POLICY;
+
 typedef struct _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION {
   LARGE_INTEGER TotalUserTime;
   LARGE_INTEGER TotalKernelTime;
@@ -4758,6 +4828,16 @@ __buildmemorybarrier()
   DWORD64 CycleTime;
 } 
SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION,*PSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION;
 
+typedef struct _SYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION {
+  DWORD Machine : 16;
+  DWORD KernelMode : 1;
+  DWORD UserMode : 1;
+  DWORD Native : 1;
+  DWORD Process : 1;
+  DWORD WoW64Container : 1;
+  DWORD ReservedZero0 : 11;
+} 
SYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION,*PSYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION;
+
 #define PROCESSOR_INTEL_386 386
 #define PROCESSOR_INTEL_486 486
 #define PROCESSOR_INTEL_PENTIUM 586
@@ -4834,19 +4914,58 @@ __buildmemorybarrier()
 #define PF_ARM_V8_CRC32_INSTRUCTIONS_AVAILABLE 31
 #define PF_RDTSCP_INSTRUCTION_AVAILABLE 32
 #define PF_RDPID_INSTRUCTION_AVAILABLE 33
+#define