From 031c9f3f7d2ac8adc71e5e4ae5555f2ed5b95e92 Mon Sep 17 00:00:00 2001 From: Biswapriyo Nath <[email protected]> Date: Sun, 22 May 2022 23:42:32 +0530 Subject: [PATCH] headers: Add missing symbols in winnt.h
Signed-off-by: Biswapriyo Nath <[email protected]> --- mingw-w64-headers/include/winnt.h | 210 +++++++++++++++++++++++++++++- 1 file changed, 204 insertions(+), 6 deletions(-) diff --git a/mingw-w64-headers/include/winnt.h b/mingw-w64-headers/include/winnt.h index 9e660bc..57f72eb 100644 --- a/mingw-w64-headers/include/winnt.h +++ b/mingw-w64-headers/include/winnt.h @@ -187,11 +187,21 @@ extern "C" { #endif #endif /* DECLSPEC_ALIGN */ +#ifndef X86_CACHE_ALIGNMENT_SIZE +#define X86_CACHE_ALIGNMENT_SIZE 64 +#endif + +#ifndef ARM_CACHE_ALIGNMENT_SIZE +#define ARM_CACHE_ALIGNMENT_SIZE 128 +#endif + #ifndef SYSTEM_CACHE_ALIGNMENT_SIZE #if defined(__x86_64__) || defined(__i386__) -#define SYSTEM_CACHE_ALIGNMENT_SIZE 64 +#define SYSTEM_CACHE_ALIGNMENT_SIZE X86_CACHE_ALIGNMENT_SIZE +#elif defined(__aarch64__) || defined(__arm__) +#define SYSTEM_CACHE_ALIGNMENT_SIZE ARM_CACHE_ALIGNMENT_SIZE #else -#define SYSTEM_CACHE_ALIGNMENT_SIZE 128 +#error Must define a target architecture. #endif #endif @@ -535,6 +545,9 @@ typedef struct _LARGE_INTEGER { typedef ULARGE_INTEGER *PULARGE_INTEGER; +typedef LONG_PTR RTL_REFERENCE_COUNT, *PRTL_REFERENCE_COUNT; +typedef LONG RTL_REFERENCE_COUNT32, *PRTL_REFERENCE_COUNT32; + typedef struct _LUID { DWORD LowPart; LONG HighPart; @@ -709,6 +722,9 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i typedef EXCEPTION_ROUTINE *PEXCEPTION_ROUTINE; #endif +#define ENCLAVE_SHORT_ID_LENGTH 16 +#define ENCLAVE_LONG_ID_LENGTH 32 + #define VER_WORKSTATION_NT 0x40000000 #define VER_SERVER_NT 0x80000000 #define VER_SUITE_SMALLBUSINESS 0x00000001 @@ -727,6 +743,7 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #define VER_SUITE_STORAGE_SERVER 0x00002000 #define VER_SUITE_COMPUTE_SERVER 0x00004000 #define VER_SUITE_WH_SERVER 0x00008000 +#define VER_SUITE_MULTIUSERTS 0x00020000 #define PRODUCT_UNDEFINED 0x0 @@ -853,6 +870,54 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #define PRODUCT_ENTERPRISE_S_EVALUATION 0x81 #define PRODUCT_ENTERPRISE_S_N_EVALUATION 0x82 #define PRODUCT_MOBILE_ENTERPRISE 0x85 +#define PRODUCT_HOLOGRAPHIC 0x87 +#define PRODUCT_HOLOGRAPHIC_BUSINESS 0x88 +#define PRODUCT_PRO_SINGLE_LANGUAGE 0x8A +#define PRODUCT_PRO_CHINA 0x8B +#define PRODUCT_ENTERPRISE_SUBSCRIPTION 0x8C +#define PRODUCT_ENTERPRISE_SUBSCRIPTION_N 0x8D +#define PRODUCT_DATACENTER_NANO_SERVER 0x8F +#define PRODUCT_STANDARD_NANO_SERVER 0x90 +#define PRODUCT_DATACENTER_A_SERVER_CORE 0x91 +#define PRODUCT_STANDARD_A_SERVER_CORE 0x92 +#define PRODUCT_DATACENTER_WS_SERVER_CORE 0x93 +#define PRODUCT_STANDARD_WS_SERVER_CORE 0x94 +#define PRODUCT_UTILITY_VM 0x95 +#define PRODUCT_DATACENTER_EVALUATION_SERVER_CORE 0x9F +#define PRODUCT_STANDARD_EVALUATION_SERVER_CORE 0xA0 +#define PRODUCT_PRO_WORKSTATION 0xA1 +#define PRODUCT_PRO_WORKSTATION_N 0xA2 +#define PRODUCT_PRO_FOR_EDUCATION 0xA4 +#define PRODUCT_PRO_FOR_EDUCATION_N 0xA5 +#define PRODUCT_AZURE_SERVER_CORE 0xA8 +#define PRODUCT_AZURE_NANO_SERVER 0xA9 +#define PRODUCT_ENTERPRISEG 0xAB +#define PRODUCT_ENTERPRISEGN 0xAC +#define PRODUCT_SERVERRDSH 0xAF +#define PRODUCT_CLOUD 0xB2 +#define PRODUCT_CLOUDN 0xB3 +#define PRODUCT_HUBOS 0xB4 +#define PRODUCT_ONECOREUPDATEOS 0xB6 +#define PRODUCT_CLOUDE 0xB7 +#define PRODUCT_IOTOS 0xB9 +#define PRODUCT_CLOUDEN 0xBA +#define PRODUCT_IOTEDGEOS 0xBB +#define PRODUCT_IOTENTERPRISE 0xBC +#define PRODUCT_LITE 0xBD +#define PRODUCT_IOTENTERPRISES 0xBF +#define PRODUCT_XBOX_SYSTEMOS 0xC0 +#define PRODUCT_XBOX_NATIVEOS 0xC1 +#define PRODUCT_XBOX_GAMEOS 0xC2 +#define PRODUCT_XBOX_ERAOS 0xC3 +#define PRODUCT_XBOX_DURANGOHOSTOS 0xC4 +#define PRODUCT_XBOX_SCARLETTHOSTOS 0xC5 +#define PRODUCT_AZURE_SERVER_CLOUDHOST 0xC7 +#define PRODUCT_AZURE_SERVER_CLOUDMOS 0xC8 +#define PRODUCT_CLOUDEDITIONN 0xCA +#define PRODUCT_CLOUDEDITION 0xCB +#define PRODUCT_AZURESTACKHCI_SERVER_CORE 0x196 +#define PRODUCT_DATACENTER_SERVER_AZURE_EDITION 0x197 +#define PRODUCT_DATACENTER_SERVER_CORE_AZURE_EDITION 0x198 #define PRODUCT_UNLICENSED 0xabcdabcd @@ -906,6 +971,7 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #define LANG_GREENLANDIC 0x6f #define LANG_GUJARATI 0x47 #define LANG_HAUSA 0x68 +#define LANG_HAWAIIAN 0x75 #define LANG_HEBREW 0x0d #define LANG_HINDI 0x39 #define LANG_HUNGARIAN 0x0e @@ -1147,6 +1213,7 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #define SUBLANG_NORWEGIAN_BOKMAL 0x01 #define SUBLANG_NORWEGIAN_NYNORSK 0x02 #define SUBLANG_OCCITAN_FRANCE 0x01 +#define SUBLANG_ODIA_INDIA 0x01 #define SUBLANG_ORIYA_INDIA 0x01 #define SUBLANG_PASHTO_AFGHANISTAN 0x01 #define SUBLANG_PERSIAN_IRAN 0x01 @@ -1186,6 +1253,7 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #define SUBLANG_SERBIAN_MONTENEGRO_CYRILLIC 0x0c #define SUBLANG_SERBIAN_SERBIA_LATIN 0x09 #define SUBLANG_SERBIAN_SERBIA_CYRILLIC 0x0a +#define SUBLANG_SERBIAN_CROATIA 0x01 #define SUBLANG_SINDHI_INDIA 0x01 #define SUBLANG_SINDHI_AFGHANISTAN 0x02 #define SUBLANG_SINDHI_PAKISTAN 0x02 @@ -1308,6 +1376,13 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #define LOCALE_INVARIANT (MAKELCID(MAKELANGID(LANG_INVARIANT,SUBLANG_NEUTRAL),SORT_DEFAULT)) +#define LOCALE_TRANSIENT_KEYBOARD1 0x2000 +#define LOCALE_TRANSIENT_KEYBOARD2 0x2400 +#define LOCALE_TRANSIENT_KEYBOARD3 0x2800 +#define LOCALE_TRANSIENT_KEYBOARD4 0x2c00 + +#define LOCALE_UNASSIGNED_LCID LOCALE_CUSTOM_UNSPECIFIED + #define UNREFERENCED_PARAMETER(P) {(P) = (P);} #define UNREFERENCED_LOCAL_VARIABLE(V) {(V) = (V);} #define DBG_UNREFERENCED_PARAMETER(P) (P) @@ -1326,6 +1401,7 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #define DBG_CONTINUE ((DWORD)0x00010002) #define STATUS_SEGMENT_NOTIFICATION ((DWORD)0x40000005) #define STATUS_FATAL_APP_EXIT ((DWORD)0x40000015) +#define DBG_REPLY_LATER ((DWORD)0x40010001) #define DBG_TERMINATE_THREAD ((DWORD)0x40010003) #define DBG_TERMINATE_PROCESS ((DWORD)0x40010004) #define DBG_CONTROL_C ((DWORD)0x40010005) @@ -1366,6 +1442,7 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #define STATUS_ENTRYPOINT_NOT_FOUND ((DWORD)0xC0000139) #define STATUS_CONTROL_C_EXIT ((DWORD)0xC000013A) #define STATUS_DLL_INIT_FAILED ((DWORD)0xC0000142) +#define STATUS_CONTROL_STACK_VIOLATION ((DWORD)0xC00001B2) #define STATUS_FLOAT_MULTIPLE_FAULTS ((DWORD)0xC00002B4) #define STATUS_FLOAT_MULTIPLE_TRAPS ((DWORD)0xC00002B5) #define STATUS_REG_NAT_CONSUMPTION ((DWORD)0xC00002C9) @@ -1373,6 +1450,11 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #define STATUS_STACK_BUFFER_OVERRUN ((DWORD)0xC0000409) #define STATUS_INVALID_CRUNTIME_PARAMETER ((DWORD)0xC0000417) #define STATUS_ASSERTION_FAILURE ((DWORD)0xC0000420) +#define STATUS_ENCLAVE_VIOLATION ((DWORD)0xC00004A2) +#define STATUS_INTERRUPTED ((DWORD)0xC0000515) +#define STATUS_THREAD_NOT_RUNNING ((DWORD)0xC0000516) +#define STATUS_ALREADY_REGISTERED ((DWORD)0xC0000718) + #define STATUS_SXS_EARLY_DEACTIVATION ((DWORD)0xC015000F) #define STATUS_SXS_INVALID_DEACTIVATION ((DWORD)0xC0150010) #endif @@ -1414,6 +1496,11 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #endif } XSAVE_FORMAT,*PXSAVE_FORMAT; + typedef struct _XSAVE_CET_U_FORMAT { + DWORD64 Ia32CetUMsr; + DWORD64 Ia32Pl3SspMsr; + } XSAVE_CET_U_FORMAT, *PXSAVE_CET_U_FORMAT; + typedef struct DECLSPEC_ALIGN (8) _XSAVE_AREA_HEADER { DWORD64 Mask; DWORD64 Reserved[7]; @@ -1438,6 +1525,21 @@ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((i #endif } XSTATE_CONTEXT,*PXSTATE_CONTEXT; + typedef struct _KERNEL_CET_CONTEXT { + DWORD64 Ssp; + DWORD64 Rip; + WORD SegCs; + __C89_NAMELESS union { + WORD AllFlags; + __C89_NAMELESS struct { + WORD UseWrss : 1; + WORD PopShadowStackOne : 1; + WORD Unused : 14; + }; + }; + WORD Fill[2]; + } KERNEL_CET_CONTEXT, *PKERNEL_CET_CONTEXT; + typedef struct _SCOPE_TABLE_AMD64 { DWORD Count; struct { @@ -1667,10 +1769,15 @@ extern "C" { #define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_FLOATING_POINT) #define CONTEXT_ALL (CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_SEGMENTS | CONTEXT_FLOATING_POINT | CONTEXT_DEBUG_REGISTERS) +#define CONTEXT_XSTATE (CONTEXT_AMD64 | __MSABI_LONG(0x40)) +#define CONTEXT_KERNEL_CET (CONTEXT_AMD64 | __MSABI_LONG(0x80)) + #define CONTEXT_EXCEPTION_ACTIVE 0x8000000 #define CONTEXT_SERVICE_ACTIVE 0x10000000 #define CONTEXT_EXCEPTION_REQUEST 0x40000000 #define CONTEXT_EXCEPTION_REPORTING 0x80000000 +#define CONTEXT_UNWOUND_TO_CALL 0x20000000 + #endif /* !defined(RC_INVOKED) */ #define INITIAL_MXCSR 0x1f80 @@ -3068,6 +3175,15 @@ __buildmemorybarrier() #define SECURITY_DASHOST_ID_BASE_RID (__MSABI_LONG(0x0000005c)) #define SECURITY_DASHOST_ID_RID_COUNT (__MSABI_LONG(6)) +#define SECURITY_USERMANAGER_ID_BASE_RID (__MSABI_LONG(0x0000005d)) +#define SECURITY_USERMANAGER_ID_RID_COUNT (__MSABI_LONG(6)) + +#define SECURITY_WINRM_ID_BASE_RID (__MSABI_LONG(0x0000005e)) +#define SECURITY_WINRM_ID_RID_COUNT (__MSABI_LONG(6)) + +#define SECURITY_CCG_ID_BASE_RID (__MSABI_LONG(0x0000005f)) +#define SECURITY_UMFD_BASE_RID (__MSABI_LONG(0x00000060)) + #define SECURITY_VIRTUALACCOUNT_ID_RID_COUNT (__MSABI_LONG(6)) #define SECURITY_MAX_BASE_RID (__MSABI_LONG(0x0000006f)) @@ -3079,6 +3195,14 @@ __buildmemorybarrier() #define SECURITY_WINDOWSMOBILE_ID_BASE_RID (__MSABI_LONG(0x00000070)) +#define SECURITY_INSTALLER_GROUP_CAPABILITY_BASE (0x20) +#define SECURITY_INSTALLER_GROUP_CAPABILITY_RID_COUNT (9) + +#define SECURITY_INSTALLER_CAPABILITY_RID_COUNT (10) + +#define SECURITY_LOCAL_ACCOUNT_RID (__MSABI_LONG(0x00000071)) +#define SECURITY_LOCAL_ACCOUNT_AND_ADMIN_RID (__MSABI_LONG(0x00000072)) + #define DOMAIN_GROUP_RID_AUTHORIZATION_DATA_IS_COMPOUNDED (__MSABI_LONG(0x000001f0)) #define DOMAIN_GROUP_RID_AUTHORIZATION_DATA_CONTAINS_CLAIMS (__MSABI_LONG(0x000001f1)) #define DOMAIN_GROUP_RID_ENTERPRISE_READONLY_DOMAIN_CONTROLLERS (__MSABI_LONG(0x000001f2)) @@ -3088,6 +3212,8 @@ __buildmemorybarrier() #define DOMAIN_USER_RID_ADMIN (__MSABI_LONG(0x000001F4)) #define DOMAIN_USER_RID_GUEST (__MSABI_LONG(0x000001F5)) #define DOMAIN_USER_RID_KRBTGT (__MSABI_LONG(0x000001F6)) +#define DOMAIN_USER_RID_DEFAULT_ACCOUNT (__MSABI_LONG(0x000001F7)) +#define DOMAIN_USER_RID_WDAG_ACCOUNT (__MSABI_LONG(0x000001F8)) #define DOMAIN_USER_RID_MAX (__MSABI_LONG(0x000003E7)) @@ -3102,6 +3228,10 @@ __buildmemorybarrier() #define DOMAIN_GROUP_RID_POLICY_ADMINS (__MSABI_LONG(0x00000208)) #define DOMAIN_GROUP_RID_READONLY_CONTROLLERS (__MSABI_LONG(0x00000209)) #define DOMAIN_GROUP_RID_CLONEABLE_CONTROLLERS (__MSABI_LONG(0x0000020a)) +#define DOMAIN_GROUP_RID_CDC_RESERVED (__MSABI_LONG(0x0000020c)) +#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_ALIAS_RID_ADMINS (__MSABI_LONG(0x00000220)) #define DOMAIN_ALIAS_RID_USERS (__MSABI_LONG(0x00000221)) @@ -3138,6 +3268,9 @@ __buildmemorybarrier() #define DOMAIN_ALIAS_RID_HYPER_V_ADMINS (__MSABI_LONG(0x00000242)) #define DOMAIN_ALIAS_RID_ACCESS_CONTROL_ASSISTANCE_OPS (__MSABI_LONG(0x00000243)) #define DOMAIN_ALIAS_RID_REMOTE_MANAGEMENT_USERS (__MSABI_LONG(0x00000244)) +#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 SECURITY_APP_PACKAGE_AUTHORITY {0, 0, 0, 0, 0, 15} @@ -3145,8 +3278,11 @@ __buildmemorybarrier() #define SECURITY_BUILTIN_APP_PACKAGE_RID_COUNT (__MSABI_LONG(2)) #define SECURITY_APP_PACKAGE_RID_COUNT (__MSABI_LONG(8)) #define SECURITY_CAPABILITY_BASE_RID (__MSABI_LONG(0x00000003)) +#define SECURITY_CAPABILITY_APP_RID (__MSABI_LONG(0x000000400)) #define SECURITY_BUILTIN_CAPABILITY_RID_COUNT (__MSABI_LONG(2)) #define SECURITY_CAPABILITY_RID_COUNT (__MSABI_LONG(5)) +#define SECURITY_PARENT_PACKAGE_RID_COUNT (SECURITY_APP_PACKAGE_RID_COUNT) +#define SECURITY_CHILD_PACKAGE_RID_COUNT (__MSABI_LONG(12)) #define SECURITY_BUILTIN_PACKAGE_ANY_PACKAGE (__MSABI_LONG(0x00000001)) #define SECURITY_BUILTIN_PACKAGE_ANY_RESTRICTED_PACKAGE (__MSABI_LONG(0x00000002)) @@ -3171,6 +3307,7 @@ __buildmemorybarrier() #define SECURITY_MANDATORY_UNTRUSTED_RID (__MSABI_LONG(0x00000000)) #define SECURITY_MANDATORY_LOW_RID (__MSABI_LONG(0x00001000)) #define SECURITY_MANDATORY_MEDIUM_RID (__MSABI_LONG(0x00002000)) +#define SECURITY_MANDATORY_MEDIUM_PLUS_RID (SECURITY_MANDATORY_MEDIUM_RID + 0x100) #define SECURITY_MANDATORY_HIGH_RID (__MSABI_LONG(0x00003000)) #define SECURITY_MANDATORY_SYSTEM_RID (__MSABI_LONG(0x00004000)) #define SECURITY_MANDATORY_PROTECTED_PROCESS_RID (__MSABI_LONG(0x00005000)) @@ -3185,6 +3322,24 @@ __buildmemorybarrier() #define SECURITY_AUTHENTICATION_AUTHORITY_RID_COUNT (__MSABI_LONG(1)) #define SECURITY_AUTHENTICATION_AUTHORITY_ASSERTED_RID (__MSABI_LONG(0x00000001)) #define SECURITY_AUTHENTICATION_SERVICE_ASSERTED_RID (__MSABI_LONG(0x00000002)) +#define SECURITY_AUTHENTICATION_FRESH_KEY_AUTH_RID (__MSABI_LONG(0x00000003)) +#define SECURITY_AUTHENTICATION_KEY_TRUST_RID (__MSABI_LONG(0x00000004)) +#define SECURITY_AUTHENTICATION_KEY_PROPERTY_MFA_RID (__MSABI_LONG(0x00000005)) +#define SECURITY_AUTHENTICATION_KEY_PROPERTY_ATTESTATION_RID (__MSABI_LONG(0x00000006)) + +#define SECURITY_PROCESS_TRUST_AUTHORITY {0,0,0,0,0,19} +#define SECURITY_PROCESS_TRUST_AUTHORITY_RID_COUNT (__MSABI_LONG(2)) + +#define SECURITY_PROCESS_PROTECTION_TYPE_FULL_RID (__MSABI_LONG(0x00000400)) +#define SECURITY_PROCESS_PROTECTION_TYPE_LITE_RID (__MSABI_LONG(0x00000200)) +#define SECURITY_PROCESS_PROTECTION_TYPE_NONE_RID (__MSABI_LONG(0x00000000)) + +#define SECURITY_PROCESS_PROTECTION_LEVEL_WINTCB_RID (__MSABI_LONG(0x00002000)) +#define SECURITY_PROCESS_PROTECTION_LEVEL_WINDOWS_RID (__MSABI_LONG(0x00001000)) +#define SECURITY_PROCESS_PROTECTION_LEVEL_APP_RID (__MSABI_LONG(0x00000800)) +#define SECURITY_PROCESS_PROTECTION_LEVEL_ANTIMALWARE_RID (__MSABI_LONG(0x00000600)) +#define SECURITY_PROCESS_PROTECTION_LEVEL_AUTHENTICODE_RID (__MSABI_LONG(0x00000400)) +#define SECURITY_PROCESS_PROTECTION_LEVEL_NONE_RID (__MSABI_LONG(0x00000000)) #define SECURITY_TRUSTED_INSTALLER_RID1 956008885 #define SECURITY_TRUSTED_INSTALLER_RID2 3418522649 @@ -3258,7 +3413,9 @@ __buildmemorybarrier() WinAccountEnterpriseKeyAdminsSid = 114, WinAuthenticationKeyTrustSid = 115, WinAuthenticationKeyPropertyMFASid = 116, - WinAuthenticationKeyPropertyAttestationSid = 117 + WinAuthenticationKeyPropertyAttestationSid = 117, + WinAuthenticationFreshKeyAuthSid = 118, + WinBuiltinDeviceOwnersSid = 119 } WELL_KNOWN_SID_TYPE; #define SYSTEM_LUID { 0x3e7, 0x0 } @@ -3266,6 +3423,7 @@ __buildmemorybarrier() #define LOCALSERVICE_LUID { 0x3e5, 0x0 } #define NETWORKSERVICE_LUID { 0x3e4, 0x0 } #define IUSER_LUID { 0x3e3, 0x0 } +#define PROTECTED_TO_SYSTEM_LUID { 0x3e2, 0x0 } #define SE_GROUP_MANDATORY (__MSABI_LONG(0x00000001)) #define SE_GROUP_ENABLED_BY_DEFAULT (__MSABI_LONG(0x00000002)) @@ -3337,7 +3495,9 @@ __buildmemorybarrier() #define SYSTEM_MANDATORY_LABEL_ACE_TYPE (0x11) #define SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE (0x12) #define SYSTEM_SCOPED_POLICY_ID_ACE_TYPE (0x13) -#define ACCESS_MAX_MS_V5_ACE_TYPE (0x13) +#define SYSTEM_PROCESS_TRUST_LABEL_ACE_TYPE (0x14) +#define SYSTEM_ACCESS_FILTER_ACE_TYPE (0x15) +#define ACCESS_MAX_MS_V5_ACE_TYPE (0x15) #define OBJECT_INHERIT_ACE (0x1) #define CONTAINER_INHERIT_ACE (0x2) @@ -3345,9 +3505,11 @@ __buildmemorybarrier() #define INHERIT_ONLY_ACE (0x8) #define INHERITED_ACE (0x10) #define VALID_INHERIT_FLAGS (0x1F) +#define CRITICAL_ACE_FLAG (0x20) #define SUCCESSFUL_ACCESS_ACE_FLAG (0x40) #define FAILED_ACCESS_ACE_FLAG (0x80) +#define TRUST_PROTECTED_FILTER_ACE_FLAG (0x40) typedef struct _ACCESS_ALLOWED_ACE { ACE_HEADER Header; @@ -3396,12 +3558,29 @@ __buildmemorybarrier() DWORD SidStart; } SYSTEM_MANDATORY_LABEL_ACE, *PSYSTEM_MANDATORY_LABEL_ACE; + typedef struct _SYSTEM_PROCESS_TRUST_LABEL_ACE { + ACE_HEADER Header; + ACCESS_MASK Mask; + DWORD SidStart; + } SYSTEM_PROCESS_TRUST_LABEL_ACE, *PSYSTEM_PROCESS_TRUST_LABEL_ACE; + + typedef struct _SYSTEM_ACCESS_FILTER_ACE { + ACE_HEADER Header; + ACCESS_MASK Mask; + DWORD SidStart; + } SYSTEM_ACCESS_FILTER_ACE, *PSYSTEM_ACCESS_FILTER_ACE; + #define SYSTEM_MANDATORY_LABEL_NO_WRITE_UP 0x1 #define SYSTEM_MANDATORY_LABEL_NO_READ_UP 0x2 #define SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP 0x4 #define SYSTEM_MANDATORY_LABEL_VALID_MASK (SYSTEM_MANDATORY_LABEL_NO_WRITE_UP | SYSTEM_MANDATORY_LABEL_NO_READ_UP | SYSTEM_MANDATORY_LABEL_NO_EXECUTE_UP) +#define SYSTEM_PROCESS_TRUST_LABEL_VALID_MASK 0x00ffffff +#define SYSTEM_PROCESS_TRUST_NOCONSTRAINT_MASK 0xffffffff +#define SYSTEM_ACCESS_FILTER_VALID_MASK 0x00ffffff +#define SYSTEM_ACCESS_FILTER_NOCONSTRAINT_MASK 0xffffffff + typedef struct _ACCESS_ALLOWED_OBJECT_ACE { ACE_HEADER Header; ACCESS_MASK Mask; @@ -3561,6 +3740,11 @@ __buildmemorybarrier() PACL Dacl; } SECURITY_DESCRIPTOR,*PISECURITY_DESCRIPTOR; + typedef struct _SECURITY_OBJECT_AI_PARAMS { + DWORD Size; + DWORD ConstraintMask; + } SECURITY_OBJECT_AI_PARAMS, *PSECURITY_OBJECT_AI_PARAMS; + typedef struct _OBJECT_TYPE_LIST { WORD Level; WORD Sbz; @@ -3621,7 +3805,9 @@ __buildmemorybarrier() AccessReasonNullDacl = 0x00500000, AccessReasonEmptyDacl = 0x00600000, AccessReasonNoSD = 0x00700000, - AccessReasonNoGrant = 0x00800000 + AccessReasonNoGrant = 0x00800000, + AccessReasonTrustLabel = 0x00900000, + AccessReasonFilterAce = 0x00a00000 } ACCESS_REASON_TYPE; typedef DWORD ACCESS_REASON; @@ -3631,7 +3817,11 @@ __buildmemorybarrier() #define SE_SECURITY_DESCRIPTOR_FLAG_NO_OWNER_ACE 0x00000001 #define SE_SECURITY_DESCRIPTOR_FLAG_NO_LABEL_ACE 0x00000002 -#define SE_SECURITY_DESCRIPTOR_VALID_FLAGS 0x00000003 +#define SE_SECURITY_DESCRIPTOR_FLAG_NO_ACCESS_FILTER_ACE 0x00000004 +#define SE_SECURITY_DESCRIPTOR_VALID_FLAGS 0x00000007 + +#define SE_ACCESS_CHECK_FLAG_NO_LEARNING_MODE_LOGGING 0x00000008 +#define SE_ACCESS_CHECK_VALID_FLAGS 0x00000008 typedef struct _SE_SECURITY_DESCRIPTOR { DWORD Size; @@ -3694,6 +3884,14 @@ __buildmemorybarrier() #define SE_INC_WORKING_SET_NAME TEXT("SeIncreaseWorkingSetPrivilege") #define SE_TIME_ZONE_NAME TEXT("SeTimeZonePrivilege") #define SE_CREATE_SYMBOLIC_LINK_NAME TEXT("SeCreateSymbolicLinkPrivilege") +#define SE_DELEGATE_SESSION_USER_IMPERSONATE_NAME TEXT("SeDelegateSessionUserImpersonatePrivilege") + +#define SE_ACTIVATE_AS_USER_CAPABILITY L"activateAsUser" +#define SE_CONSTRAINED_IMPERSONATION_CAPABILITY L"constrainedImpersonation" +#define SE_SESSION_IMPERSONATION_CAPABILITY L"sessionImpersonation" +#define SE_MUMA_CAPABILITY L"muma" +#define SE_DEVELOPMENT_MODE_NETWORK_CAPABILITY L"developmentModeNetwork" +#define SE_PERMISSIVE_LEARNING_MODE_CAPABILITY L"permissiveLearningMode" typedef enum _SECURITY_IMPERSONATION_LEVEL { SecurityAnonymous,SecurityIdentification,SecurityImpersonation,SecurityDelegation -- 2.36.1
_______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
