Adding ctypes_generation for PROC_THREAD_ATTRIBUTE_X

This commit is contained in:
hakril
2025-02-06 22:53:42 +01:00
parent 13f2993cf1
commit 26b42a0587
10 changed files with 383 additions and 1 deletions
@@ -0,0 +1,79 @@
// We have a rare case of defines that depends on an enum
// Which is PROC_THREAD_ATTRIBUTE_NUM
// So i Will just define a copy of those as define here
// Define version copied from: https://github.com/winsiderss/systeminformer/blob/master/phnt/include/ntpsapi.h#L2666
// Thx to them, as always :)
#define ProcThreadAttributeParentProcess 0 // in HANDLE
#define ProcThreadAttributeExtendedFlags 1 // in ULONG (EXTENDED_PROCESS_CREATION_FLAG_*)
#define ProcThreadAttributeHandleList 2 // in HANDLE[]
#define ProcThreadAttributeGroupAffinity 3 // in GROUP_AFFINITY // since WIN7
#define ProcThreadAttributePreferredNode 4 // in USHORT
#define ProcThreadAttributeIdealProcessor 5 // in PROCESSOR_NUMBER
#define ProcThreadAttributeUmsThread 6 // in UMS_CREATE_THREAD_ATTRIBUTES
#define ProcThreadAttributeMitigationPolicy 7 // in ULONG, ULONG64, or ULONG64[2]
#define ProcThreadAttributePackageFullName 8 // in WCHAR[] // since WIN8
#define ProcThreadAttributeSecurityCapabilities 9 // in SECURITY_CAPABILITIES
#define ProcThreadAttributeConsoleReference 10 // BaseGetConsoleReference (kernelbase.dll)
#define ProcThreadAttributeProtectionLevel 11 // in ULONG (PROTECTION_LEVEL_*) // since WINBLUE
#define ProcThreadAttributeOsMaxVersionTested 12 // in MAXVERSIONTESTED_INFO // since THRESHOLD // (from exe.manifest)
#define ProcThreadAttributeJobList 13 // in HANDLE[]
#define ProcThreadAttributeChildProcessPolicy 14 // in ULONG (PROCESS_CREATION_CHILD_PROCESS_*) // since THRESHOLD2
#define ProcThreadAttributeAllApplicationPackagesPolicy 15 // in ULONG (PROCESS_CREATION_ALL_APPLICATION_PACKAGES_*) // since REDSTONE
#define ProcThreadAttributeWin32kFilter 16 // in WIN32K_SYSCALL_FILTER
#define ProcThreadAttributeSafeOpenPromptOriginClaim 17 // in SE_SAFE_OPEN_PROMPT_RESULTS
#define ProcThreadAttributeDesktopAppPolicy 18 // in ULONG (PROCESS_CREATION_DESKTOP_APP_*) // since RS2
#define ProcThreadAttributeBnoIsolation 19 // in PROC_THREAD_BNOISOLATION_ATTRIBUTE
#define ProcThreadAttributePseudoConsole 22 // in HANDLE (HPCON) // since RS5
#define ProcThreadAttributeIsolationManifest 23 // in ISOLATION_MANIFEST_PROPERTIES // rev (diversenok) // since 19H2+
#define ProcThreadAttributeMitigationAuditPolicy 24 // in ULONG, ULONG64, or ULONG64[2] // since 21H1
#define ProcThreadAttributeMachineType 25 // in USHORT // since 21H2
#define ProcThreadAttributeComponentFilter 26 // in ULONG
#define ProcThreadAttributeEnableOptionalXStateFeatures 27 // in ULONG64 // since WIN11
#define ProcThreadAttributeCreateStore 28 // ULONG // rev (diversenok)
#define ProcThreadAttributeTrustedApp 29
#define ProcThreadAttributeSveVectorLength 30
// Real definition of value usef by API
// From: https://github.com/microsoft/win32metadata/blob/6af96d8470751e13a4e3f579f84b7b8b3ca398e1/generation/WinSDK/RecompiledIdlHeaders/um/WinBase.h#L3568
// macro ProcThreadAttributeValue is recoded in python in template.py
// I replace TRUE by True && FALSE by False for native python compat :)
#define PROC_THREAD_ATTRIBUTE_NUMBER 0x0000FFFF
#define PROC_THREAD_ATTRIBUTE_THREAD 0x00010000 // Attribute may be used with thread creation
#define PROC_THREAD_ATTRIBUTE_INPUT 0x00020000 // Attribute is input only
#define PROC_THREAD_ATTRIBUTE_ADDITIVE 0x00040000 // Attribute may be "accumulated," e.g. bitmasks,
#define PROC_THREAD_ATTRIBUTE_PARENT_PROCESS \
ProcThreadAttributeValue (ProcThreadAttributeParentProcess, False, True, False)
#define PROC_THREAD_ATTRIBUTE_HANDLE_LIST \
ProcThreadAttributeValue (ProcThreadAttributeHandleList, False, True, False)
#define PROC_THREAD_ATTRIBUTE_GROUP_AFFINITY \
ProcThreadAttributeValue (ProcThreadAttributeGroupAffinity, True, True, False)
#define PROC_THREAD_ATTRIBUTE_PREFERRED_NODE \
ProcThreadAttributeValue (ProcThreadAttributePreferredNode, False, True, False)
#define PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR \
ProcThreadAttributeValue (ProcThreadAttributeIdealProcessor, True, True, False)
#define PROC_THREAD_ATTRIBUTE_UMS_THREAD \
ProcThreadAttributeValue (ProcThreadAttributeUmsThread, True, True, False)
#define PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY \
ProcThreadAttributeValue (ProcThreadAttributeMitigationPolicy, False, True, False)
#define PROC_THREAD_ATTRIBUTE_SECURITY_CAPABILITIES \
ProcThreadAttributeValue (ProcThreadAttributeSecurityCapabilities, False, True, False)
#define PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL \
ProcThreadAttributeValue (ProcThreadAttributeProtectionLevel, False, True, False)
#define PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE \
ProcThreadAttributeValue (ProcThreadAttributePseudoConsole, False, True, False)
#define PROC_THREAD_ATTRIBUTE_MACHINE_TYPE \
ProcThreadAttributeValue (ProcThreadAttributeMachineType, False, True, False)
#define PROC_THREAD_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES \
ProcThreadAttributeValue (ProcThreadAttributeEnableOptionalXStateFeatures, True, True, False)
#define PROC_THREAD_ATTRIBUTE_SVE_VECTOR_LENGTH \
ProcThreadAttributeValue (ProcThreadAttributeSveVectorLength, False, True, False)
@@ -24,3 +24,19 @@ def CTL_CODE(DeviceType, Function, Method, Access):
def HRESULT_FACILITY(hr):
return (((hr) >> 16) & 0x1fff)
# https://github.com/microsoft/win32metadata/blob/6af96d8470751e13a4e3f579f84b7b8b3ca398e1/generation/WinSDK/RecompiledIdlHeaders/um/WinBase.h#L3562
# Original MACRO:
#define ProcThreadAttributeValue(Number, Thread, Input, Additive) \
# (((Number) & PROC_THREAD_ATTRIBUTE_NUMBER) | \
# ((Thread != FALSE) ? PROC_THREAD_ATTRIBUTE_THREAD : 0) | \
# ((Input != FALSE) ? PROC_THREAD_ATTRIBUTE_INPUT : 0) | \
# ((Additive != FALSE) ? PROC_THREAD_ATTRIBUTE_ADDITIVE : 0))
def ProcThreadAttributeValue(Number, Thread, Input, Additive):
return ((Number & PROC_THREAD_ATTRIBUTE_NUMBER) |
(Thread and PROC_THREAD_ATTRIBUTE_THREAD) |
(Input and PROC_THREAD_ATTRIBUTE_INPUT) |
(Additive and PROC_THREAD_ATTRIBUTE_ADDITIVE))
@@ -0,0 +1,24 @@
typedef enum _PROC_THREAD_ATTRIBUTE_NUM {
ProcThreadAttributeParentProcess = 0,
ProcThreadAttributeHandleList = 2,
ProcThreadAttributeGroupAffinity = 3,
ProcThreadAttributePreferredNode = 4,
ProcThreadAttributeIdealProcessor = 5,
ProcThreadAttributeUmsThread = 6,
ProcThreadAttributeMitigationPolicy = 7,
ProcThreadAttributeSecurityCapabilities = 9,
ProcThreadAttributeProtectionLevel = 11,
ProcThreadAttributeJobList = 13,
ProcThreadAttributeChildProcessPolicy = 14,
ProcThreadAttributeAllApplicationPackagesPolicy = 15,
ProcThreadAttributeWin32kFilter = 16,
ProcThreadAttributeSafeOpenPromptOriginClaim = 17,
ProcThreadAttributeDesktopAppPolicy = 18,
ProcThreadAttributePseudoConsole = 22,
ProcThreadAttributeMitigationAuditPolicy = 24,
ProcThreadAttributeMachineType = 25,
ProcThreadAttributeComponentFilter = 26,
ProcThreadAttributeEnableOptionalXStateFeatures = 27,
ProcThreadAttributeTrustedApp = 29,
ProcThreadAttributeSveVectorLength = 30,
} PROC_THREAD_ATTRIBUTE_NUM;
+46
View File
@@ -1145,6 +1145,52 @@ WinDef
.. autodata:: NMPWAIT_WAIT_FOREVER
.. autodata:: NMPWAIT_NOWAIT
.. autodata:: NMPWAIT_USE_DEFAULT_WAIT
.. autodata:: ProcThreadAttributeParentProcess
.. autodata:: ProcThreadAttributeExtendedFlags
.. autodata:: ProcThreadAttributeHandleList
.. autodata:: ProcThreadAttributeGroupAffinity
.. autodata:: ProcThreadAttributePreferredNode
.. autodata:: ProcThreadAttributeIdealProcessor
.. autodata:: ProcThreadAttributeUmsThread
.. autodata:: ProcThreadAttributeMitigationPolicy
.. autodata:: ProcThreadAttributePackageFullName
.. autodata:: ProcThreadAttributeSecurityCapabilities
.. autodata:: ProcThreadAttributeConsoleReference
.. autodata:: ProcThreadAttributeProtectionLevel
.. autodata:: ProcThreadAttributeOsMaxVersionTested
.. autodata:: ProcThreadAttributeJobList
.. autodata:: ProcThreadAttributeChildProcessPolicy
.. autodata:: ProcThreadAttributeAllApplicationPackagesPolicy
.. autodata:: ProcThreadAttributeWin32kFilter
.. autodata:: ProcThreadAttributeSafeOpenPromptOriginClaim
.. autodata:: ProcThreadAttributeDesktopAppPolicy
.. autodata:: ProcThreadAttributeBnoIsolation
.. autodata:: ProcThreadAttributePseudoConsole
.. autodata:: ProcThreadAttributeIsolationManifest
.. autodata:: ProcThreadAttributeMitigationAuditPolicy
.. autodata:: ProcThreadAttributeMachineType
.. autodata:: ProcThreadAttributeComponentFilter
.. autodata:: ProcThreadAttributeEnableOptionalXStateFeatures
.. autodata:: ProcThreadAttributeCreateStore
.. autodata:: ProcThreadAttributeTrustedApp
.. autodata:: ProcThreadAttributeSveVectorLength
.. autodata:: PROC_THREAD_ATTRIBUTE_NUMBER
.. autodata:: PROC_THREAD_ATTRIBUTE_THREAD
.. autodata:: PROC_THREAD_ATTRIBUTE_INPUT
.. autodata:: PROC_THREAD_ATTRIBUTE_ADDITIVE
.. autodata:: PROC_THREAD_ATTRIBUTE_PARENT_PROCESS
.. autodata:: PROC_THREAD_ATTRIBUTE_HANDLE_LIST
.. autodata:: PROC_THREAD_ATTRIBUTE_GROUP_AFFINITY
.. autodata:: PROC_THREAD_ATTRIBUTE_PREFERRED_NODE
.. autodata:: PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR
.. autodata:: PROC_THREAD_ATTRIBUTE_UMS_THREAD
.. autodata:: PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY
.. autodata:: PROC_THREAD_ATTRIBUTE_SECURITY_CAPABILITIES
.. autodata:: PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL
.. autodata:: PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE
.. autodata:: PROC_THREAD_ATTRIBUTE_MACHINE_TYPE
.. autodata:: PROC_THREAD_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES
.. autodata:: PROC_THREAD_ATTRIBUTE_SVE_VECTOR_LENGTH
.. autodata:: PROCESSOR_INTEL_386
.. autodata:: PROCESSOR_INTEL_486
.. autodata:: PROCESSOR_INTEL_PENTIUM
+75
View File
@@ -29438,6 +29438,81 @@ _KEY_INFORMATION_CLASS
.. attribute:: MaxKeyInfoClass(10)
_PROC_THREAD_ATTRIBUTE_NUM
''''''''''''''''''''''''''
.. class:: PROC_THREAD_ATTRIBUTE_NUM
Alias for :class:`_PROC_THREAD_ATTRIBUTE_NUM`
.. class:: _PROC_THREAD_ATTRIBUTE_NUM
.. attribute:: ProcThreadAttributeParentProcess(0)
.. attribute:: ProcThreadAttributeHandleList(2)
.. attribute:: ProcThreadAttributeGroupAffinity(3)
.. attribute:: ProcThreadAttributePreferredNode(4)
.. attribute:: ProcThreadAttributeIdealProcessor(5)
.. attribute:: ProcThreadAttributeUmsThread(6)
.. attribute:: ProcThreadAttributeMitigationPolicy(7)
.. attribute:: ProcThreadAttributeSecurityCapabilities(9)
.. attribute:: ProcThreadAttributeProtectionLevel(11)
.. attribute:: ProcThreadAttributeJobList(13)
.. attribute:: ProcThreadAttributeChildProcessPolicy(14)
.. attribute:: ProcThreadAttributeAllApplicationPackagesPolicy(15)
.. attribute:: ProcThreadAttributeWin32kFilter(16)
.. attribute:: ProcThreadAttributeSafeOpenPromptOriginClaim(17)
.. attribute:: ProcThreadAttributeDesktopAppPolicy(18)
.. attribute:: ProcThreadAttributePseudoConsole(22)
.. attribute:: ProcThreadAttributeMitigationAuditPolicy(24)
.. attribute:: ProcThreadAttributeMachineType(25)
.. attribute:: ProcThreadAttributeComponentFilter(26)
.. attribute:: ProcThreadAttributeEnableOptionalXStateFeatures(27)
.. attribute:: ProcThreadAttributeTrustedApp(29)
.. attribute:: ProcThreadAttributeSveVectorLength(30)
_MEMORY_INFORMATION_CLASS
'''''''''''''''''''''''''
.. class:: MEMORY_INFORMATION_CLASS
+3
View File
@@ -156,6 +156,9 @@ def test_HRESULT_FACILITY_macro():
# RPC_E_INVALID_HEADER(0x80010111)
assert gdef.HRESULT_FACILITY(gdef.RPC_E_INVALID_HEADER) == gdef.FACILITY_RPC == 1
def test_ProcThreadAttributeValue_results():
assert gdef.PROC_THREAD_ATTRIBUTE_PARENT_PROCESS == 0x20000
assert gdef.PROC_THREAD_ATTRIBUTE_MACHINE_TYPE == 0x20019
# typedef struct _DnsRecordFlags
# {
+48
View File
@@ -2481,6 +2481,23 @@ windef = {'ABOVE_NORMAL_PRIORITY_CLASS',
'PROCESS_VM_OPERATION',
'PROCESS_VM_READ',
'PROCESS_VM_WRITE',
'PROC_THREAD_ATTRIBUTE_ADDITIVE',
'PROC_THREAD_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES',
'PROC_THREAD_ATTRIBUTE_GROUP_AFFINITY',
'PROC_THREAD_ATTRIBUTE_HANDLE_LIST',
'PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR',
'PROC_THREAD_ATTRIBUTE_INPUT',
'PROC_THREAD_ATTRIBUTE_MACHINE_TYPE',
'PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY',
'PROC_THREAD_ATTRIBUTE_NUMBER',
'PROC_THREAD_ATTRIBUTE_PARENT_PROCESS',
'PROC_THREAD_ATTRIBUTE_PREFERRED_NODE',
'PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL',
'PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE',
'PROC_THREAD_ATTRIBUTE_SECURITY_CAPABILITIES',
'PROC_THREAD_ATTRIBUTE_SVE_VECTOR_LENGTH',
'PROC_THREAD_ATTRIBUTE_THREAD',
'PROC_THREAD_ATTRIBUTE_UMS_THREAD',
'PRODUCT_BUSINESS',
'PRODUCT_BUSINESS_N',
'PRODUCT_CLUSTER_SERVER',
@@ -2590,6 +2607,35 @@ windef = {'ABOVE_NORMAL_PRIORITY_CLASS',
'PROV_RSA_SIG',
'PROV_SPYRUS_LYNKS',
'PROV_SSL',
'ProcThreadAttributeAllApplicationPackagesPolicy',
'ProcThreadAttributeBnoIsolation',
'ProcThreadAttributeChildProcessPolicy',
'ProcThreadAttributeComponentFilter',
'ProcThreadAttributeConsoleReference',
'ProcThreadAttributeCreateStore',
'ProcThreadAttributeDesktopAppPolicy',
'ProcThreadAttributeEnableOptionalXStateFeatures',
'ProcThreadAttributeExtendedFlags',
'ProcThreadAttributeGroupAffinity',
'ProcThreadAttributeHandleList',
'ProcThreadAttributeIdealProcessor',
'ProcThreadAttributeIsolationManifest',
'ProcThreadAttributeJobList',
'ProcThreadAttributeMachineType',
'ProcThreadAttributeMitigationAuditPolicy',
'ProcThreadAttributeMitigationPolicy',
'ProcThreadAttributeOsMaxVersionTested',
'ProcThreadAttributePackageFullName',
'ProcThreadAttributeParentProcess',
'ProcThreadAttributePreferredNode',
'ProcThreadAttributeProtectionLevel',
'ProcThreadAttributePseudoConsole',
'ProcThreadAttributeSafeOpenPromptOriginClaim',
'ProcThreadAttributeSecurityCapabilities',
'ProcThreadAttributeSveVectorLength',
'ProcThreadAttributeTrustedApp',
'ProcThreadAttributeUmsThread',
'ProcThreadAttributeWin32kFilter',
'READ_CONTROL',
'REALTIME_PRIORITY_CLASS',
'REG_BINARY',
@@ -14341,6 +14387,7 @@ enums = {'ACCESS_MODE',
'PROCESSINFOCLASS',
'PROCESS_INFORMATION_CLASS',
'PROCESS_MITIGATION_POLICY',
'PROC_THREAD_ATTRIBUTE_NUM',
'PSECURITY_IMPERSONATION_LEVEL',
'PSID_NAME_USE',
'PTHREAD_INFORMATION_CLASS',
@@ -14452,6 +14499,7 @@ enums = {'ACCESS_MODE',
'_PROCESSINFOCLASS',
'_PROCESS_INFORMATION_CLASS',
'_PROCESS_MITIGATION_POLICY',
'_PROC_THREAD_ATTRIBUTE_NUM',
'_READ_DIRECTORY_NOTIFY_INFORMATION_CLASS',
'_RTL_PATH_TYPE',
'_SC_ENUM_TYPE',
+62
View File
@@ -24,6 +24,22 @@ def CTL_CODE(DeviceType, Function, Method, Access):
def HRESULT_FACILITY(hr):
return (((hr) >> 16) & 0x1fff)
# https://github.com/microsoft/win32metadata/blob/6af96d8470751e13a4e3f579f84b7b8b3ca398e1/generation/WinSDK/RecompiledIdlHeaders/um/WinBase.h#L3562
# Original MACRO:
#define ProcThreadAttributeValue(Number, Thread, Input, Additive) \
# (((Number) & PROC_THREAD_ATTRIBUTE_NUMBER) | \
# ((Thread != FALSE) ? PROC_THREAD_ATTRIBUTE_THREAD : 0) | \
# ((Input != FALSE) ? PROC_THREAD_ATTRIBUTE_INPUT : 0) | \
# ((Additive != FALSE) ? PROC_THREAD_ATTRIBUTE_ADDITIVE : 0))
def ProcThreadAttributeValue(Number, Thread, Input, Additive):
return ((Number & PROC_THREAD_ATTRIBUTE_NUMBER) |
(Thread and PROC_THREAD_ATTRIBUTE_THREAD) |
(Input and PROC_THREAD_ATTRIBUTE_INPUT) |
(Additive and PROC_THREAD_ATTRIBUTE_ADDITIVE))
from .ntstatus import *
from .winerror import *
BG_JOB_ENUM_ALL_USERS = make_flag("BG_JOB_ENUM_ALL_USERS", 0x0001)
@@ -1169,6 +1185,52 @@ PIPE_UNLIMITED_INSTANCES = make_flag("PIPE_UNLIMITED_INSTANCES", 255)
NMPWAIT_WAIT_FOREVER = make_flag("NMPWAIT_WAIT_FOREVER", 0xffffffff)
NMPWAIT_NOWAIT = make_flag("NMPWAIT_NOWAIT", 0x00000001)
NMPWAIT_USE_DEFAULT_WAIT = make_flag("NMPWAIT_USE_DEFAULT_WAIT", 0x00000000)
ProcThreadAttributeParentProcess = make_flag("ProcThreadAttributeParentProcess", 0)
ProcThreadAttributeExtendedFlags = make_flag("ProcThreadAttributeExtendedFlags", 1)
ProcThreadAttributeHandleList = make_flag("ProcThreadAttributeHandleList", 2)
ProcThreadAttributeGroupAffinity = make_flag("ProcThreadAttributeGroupAffinity", 3)
ProcThreadAttributePreferredNode = make_flag("ProcThreadAttributePreferredNode", 4)
ProcThreadAttributeIdealProcessor = make_flag("ProcThreadAttributeIdealProcessor", 5)
ProcThreadAttributeUmsThread = make_flag("ProcThreadAttributeUmsThread", 6)
ProcThreadAttributeMitigationPolicy = make_flag("ProcThreadAttributeMitigationPolicy", 7)
ProcThreadAttributePackageFullName = make_flag("ProcThreadAttributePackageFullName", 8)
ProcThreadAttributeSecurityCapabilities = make_flag("ProcThreadAttributeSecurityCapabilities", 9)
ProcThreadAttributeConsoleReference = make_flag("ProcThreadAttributeConsoleReference", 10)
ProcThreadAttributeProtectionLevel = make_flag("ProcThreadAttributeProtectionLevel", 11)
ProcThreadAttributeOsMaxVersionTested = make_flag("ProcThreadAttributeOsMaxVersionTested", 12)
ProcThreadAttributeJobList = make_flag("ProcThreadAttributeJobList", 13)
ProcThreadAttributeChildProcessPolicy = make_flag("ProcThreadAttributeChildProcessPolicy", 14)
ProcThreadAttributeAllApplicationPackagesPolicy = make_flag("ProcThreadAttributeAllApplicationPackagesPolicy", 15)
ProcThreadAttributeWin32kFilter = make_flag("ProcThreadAttributeWin32kFilter", 16)
ProcThreadAttributeSafeOpenPromptOriginClaim = make_flag("ProcThreadAttributeSafeOpenPromptOriginClaim", 17)
ProcThreadAttributeDesktopAppPolicy = make_flag("ProcThreadAttributeDesktopAppPolicy", 18)
ProcThreadAttributeBnoIsolation = make_flag("ProcThreadAttributeBnoIsolation", 19)
ProcThreadAttributePseudoConsole = make_flag("ProcThreadAttributePseudoConsole", 22)
ProcThreadAttributeIsolationManifest = make_flag("ProcThreadAttributeIsolationManifest", 23)
ProcThreadAttributeMitigationAuditPolicy = make_flag("ProcThreadAttributeMitigationAuditPolicy", 24)
ProcThreadAttributeMachineType = make_flag("ProcThreadAttributeMachineType", 25)
ProcThreadAttributeComponentFilter = make_flag("ProcThreadAttributeComponentFilter", 26)
ProcThreadAttributeEnableOptionalXStateFeatures = make_flag("ProcThreadAttributeEnableOptionalXStateFeatures", 27)
ProcThreadAttributeCreateStore = make_flag("ProcThreadAttributeCreateStore", 28)
ProcThreadAttributeTrustedApp = make_flag("ProcThreadAttributeTrustedApp", 29)
ProcThreadAttributeSveVectorLength = make_flag("ProcThreadAttributeSveVectorLength", 30)
PROC_THREAD_ATTRIBUTE_NUMBER = make_flag("PROC_THREAD_ATTRIBUTE_NUMBER", 0x0000FFFF)
PROC_THREAD_ATTRIBUTE_THREAD = make_flag("PROC_THREAD_ATTRIBUTE_THREAD", 0x00010000)
PROC_THREAD_ATTRIBUTE_INPUT = make_flag("PROC_THREAD_ATTRIBUTE_INPUT", 0x00020000)
PROC_THREAD_ATTRIBUTE_ADDITIVE = make_flag("PROC_THREAD_ATTRIBUTE_ADDITIVE", 0x00040000)
PROC_THREAD_ATTRIBUTE_PARENT_PROCESS = make_flag("PROC_THREAD_ATTRIBUTE_PARENT_PROCESS", ProcThreadAttributeValue ( ProcThreadAttributeParentProcess , False , True , False ))
PROC_THREAD_ATTRIBUTE_HANDLE_LIST = make_flag("PROC_THREAD_ATTRIBUTE_HANDLE_LIST", ProcThreadAttributeValue ( ProcThreadAttributeHandleList , False , True , False ))
PROC_THREAD_ATTRIBUTE_GROUP_AFFINITY = make_flag("PROC_THREAD_ATTRIBUTE_GROUP_AFFINITY", ProcThreadAttributeValue ( ProcThreadAttributeGroupAffinity , True , True , False ))
PROC_THREAD_ATTRIBUTE_PREFERRED_NODE = make_flag("PROC_THREAD_ATTRIBUTE_PREFERRED_NODE", ProcThreadAttributeValue ( ProcThreadAttributePreferredNode , False , True , False ))
PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR = make_flag("PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR", ProcThreadAttributeValue ( ProcThreadAttributeIdealProcessor , True , True , False ))
PROC_THREAD_ATTRIBUTE_UMS_THREAD = make_flag("PROC_THREAD_ATTRIBUTE_UMS_THREAD", ProcThreadAttributeValue ( ProcThreadAttributeUmsThread , True , True , False ))
PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY = make_flag("PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY", ProcThreadAttributeValue ( ProcThreadAttributeMitigationPolicy , False , True , False ))
PROC_THREAD_ATTRIBUTE_SECURITY_CAPABILITIES = make_flag("PROC_THREAD_ATTRIBUTE_SECURITY_CAPABILITIES", ProcThreadAttributeValue ( ProcThreadAttributeSecurityCapabilities , False , True , False ))
PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL = make_flag("PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL", ProcThreadAttributeValue ( ProcThreadAttributeProtectionLevel , False , True , False ))
PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE = make_flag("PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE", ProcThreadAttributeValue ( ProcThreadAttributePseudoConsole , False , True , False ))
PROC_THREAD_ATTRIBUTE_MACHINE_TYPE = make_flag("PROC_THREAD_ATTRIBUTE_MACHINE_TYPE", ProcThreadAttributeValue ( ProcThreadAttributeMachineType , False , True , False ))
PROC_THREAD_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES = make_flag("PROC_THREAD_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES", ProcThreadAttributeValue ( ProcThreadAttributeEnableOptionalXStateFeatures , True , True , False ))
PROC_THREAD_ATTRIBUTE_SVE_VECTOR_LENGTH = make_flag("PROC_THREAD_ATTRIBUTE_SVE_VECTOR_LENGTH", ProcThreadAttributeValue ( ProcThreadAttributeSveVectorLength , False , True , False ))
PROCESSOR_INTEL_386 = make_flag("PROCESSOR_INTEL_386", 386)
PROCESSOR_INTEL_486 = make_flag("PROCESSOR_INTEL_486", 486)
PROCESSOR_INTEL_PENTIUM = make_flag("PROCESSOR_INTEL_PENTIUM", 586)
+28
View File
@@ -3595,6 +3595,34 @@ class _IMAGE_LOAD_CONFIG_DIRECTORY64(Structure):
IMAGE_LOAD_CONFIG_DIRECTORY64 = _IMAGE_LOAD_CONFIG_DIRECTORY64
PIMAGE_LOAD_CONFIG_DIRECTORY64 = POINTER(_IMAGE_LOAD_CONFIG_DIRECTORY64)
ProcThreadAttributeParentProcess = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeParentProcess", 0x0)
ProcThreadAttributeHandleList = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeHandleList", 0x2)
ProcThreadAttributeGroupAffinity = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeGroupAffinity", 0x3)
ProcThreadAttributePreferredNode = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributePreferredNode", 0x4)
ProcThreadAttributeIdealProcessor = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeIdealProcessor", 0x5)
ProcThreadAttributeUmsThread = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeUmsThread", 0x6)
ProcThreadAttributeMitigationPolicy = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeMitigationPolicy", 0x7)
ProcThreadAttributeSecurityCapabilities = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeSecurityCapabilities", 0x9)
ProcThreadAttributeProtectionLevel = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeProtectionLevel", 0xb)
ProcThreadAttributeJobList = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeJobList", 0xd)
ProcThreadAttributeChildProcessPolicy = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeChildProcessPolicy", 0xe)
ProcThreadAttributeAllApplicationPackagesPolicy = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeAllApplicationPackagesPolicy", 0xf)
ProcThreadAttributeWin32kFilter = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeWin32kFilter", 0x10)
ProcThreadAttributeSafeOpenPromptOriginClaim = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeSafeOpenPromptOriginClaim", 0x11)
ProcThreadAttributeDesktopAppPolicy = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeDesktopAppPolicy", 0x12)
ProcThreadAttributePseudoConsole = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributePseudoConsole", 0x16)
ProcThreadAttributeMitigationAuditPolicy = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeMitigationAuditPolicy", 0x18)
ProcThreadAttributeMachineType = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeMachineType", 0x19)
ProcThreadAttributeComponentFilter = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeComponentFilter", 0x1a)
ProcThreadAttributeEnableOptionalXStateFeatures = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeEnableOptionalXStateFeatures", 0x1b)
ProcThreadAttributeTrustedApp = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeTrustedApp", 0x1d)
ProcThreadAttributeSveVectorLength = EnumValue("_PROC_THREAD_ATTRIBUTE_NUM", "ProcThreadAttributeSveVectorLength", 0x1e)
class _PROC_THREAD_ATTRIBUTE_NUM(EnumType):
values = [ProcThreadAttributeParentProcess, ProcThreadAttributeHandleList, ProcThreadAttributeGroupAffinity, ProcThreadAttributePreferredNode, ProcThreadAttributeIdealProcessor, ProcThreadAttributeUmsThread, ProcThreadAttributeMitigationPolicy, ProcThreadAttributeSecurityCapabilities, ProcThreadAttributeProtectionLevel, ProcThreadAttributeJobList, ProcThreadAttributeChildProcessPolicy, ProcThreadAttributeAllApplicationPackagesPolicy, ProcThreadAttributeWin32kFilter, ProcThreadAttributeSafeOpenPromptOriginClaim, ProcThreadAttributeDesktopAppPolicy, ProcThreadAttributePseudoConsole, ProcThreadAttributeMitigationAuditPolicy, ProcThreadAttributeMachineType, ProcThreadAttributeComponentFilter, ProcThreadAttributeEnableOptionalXStateFeatures, ProcThreadAttributeTrustedApp, ProcThreadAttributeSveVectorLength]
mapper = FlagMapper(*values)
PROC_THREAD_ATTRIBUTE_NUM = _PROC_THREAD_ATTRIBUTE_NUM
MemoryBasicInformation = EnumValue("_MEMORY_INFORMATION_CLASS", "MemoryBasicInformation", 0x0)
MemoryWorkingSetList = EnumValue("_MEMORY_INFORMATION_CLASS", "MemoryWorkingSetList", 0x1)
MemorySectionName = EnumValue("_MEMORY_INFORMATION_CLASS", "MemorySectionName", 0x2)
+2 -1
View File
@@ -6,7 +6,8 @@ from ..error import (fail_on_zero,
no_error_check,
result_is_handle,
succeed_on_zero,
fail_on_minus_one)
fail_on_minus_one,
WinproxyError)
class Kernel32Proxy(ApiProxy):