ReactOS 0.4.16-dev-1946-g52006dd
winternl.h File Reference
#include <ntdef.h>
#include <windef.h>
Include dependency graph for winternl.h:

Go to the source code of this file.

Classes

struct  _STRING
 
struct  _UNICODE_STRING
 
struct  _FILETIME
 
struct  _RTL_SYSTEM_TIME
 
struct  _RTL_TIME_ZONE_INFORMATION
 
struct  _RTL_TIME_DYNAMIC_ZONE_INFORMATION
 
struct  _CLIENT_ID
 
struct  _CURDIR
 
struct  RTL_DRIVE_LETTER_CURDIR
 
struct  _RTL_RELATIVE_NAME
 
struct  tagRTL_BITMAP
 
struct  tagRTL_BITMAP_RUN
 
struct  _RTL_USER_PROCESS_PARAMETERS
 
struct  _PEB_LDR_DATA
 
struct  _GDI_TEB_BATCH
 
struct  _RTL_ACTIVATION_CONTEXT_STACK_FRAME
 
struct  _ACTIVATION_CONTEXT_STACK
 
struct  _TEB_ACTIVE_FRAME_CONTEXT
 
struct  _TEB_ACTIVE_FRAME_CONTEXT_EX
 
struct  _TEB_ACTIVE_FRAME
 
struct  _TEB_ACTIVE_FRAME_EX
 
struct  _FLS_CALLBACK
 
struct  _FLS_INFO_CHUNK
 
struct  _GLOBAL_FLS_DATA
 
struct  _TEB_FLS_DATA
 
struct  CROSS_PROCESS_WORK_ENTRY
 
union  CROSS_PROCESS_WORK_HDR
 
struct  CROSS_PROCESS_WORK_LIST
 
struct  _CHPE_V2_CPU_AREA_INFO
 
struct  _CHPEV2_PROCESS_INFO
 
struct  _PEB
 
struct  _TEB
 
struct  _NT_TIB32
 
struct  _NT_TIB64
 
struct  _CLIENT_ID32
 
struct  _CLIENT_ID64
 
struct  _LIST_ENTRY32
 
struct  _LIST_ENTRY64
 
struct  _UNICODE_STRING32
 
struct  _UNICODE_STRING64
 
struct  _ACTIVATION_CONTEXT_STACK32
 
struct  _ACTIVATION_CONTEXT_STACK64
 
struct  _CURDIR32
 
struct  _CURDIR64
 
struct  RTL_DRIVE_LETTER_CURDIR32
 
struct  RTL_DRIVE_LETTER_CURDIR64
 
struct  _RTL_USER_PROCESS_PARAMETERS32
 
struct  _RTL_USER_PROCESS_PARAMETERS64
 
struct  _PEB_LDR_DATA32
 
struct  _PEB_LDR_DATA64
 
struct  _PEB32
 
struct  _PEB64
 
struct  _TEB32
 
struct  _TEB64
 
struct  _FILE_DIRECTORY_INFORMATION
 
struct  _FILE_FULL_DIRECTORY_INFORMATION
 
struct  _FILE_ID_FULL_DIRECTORY_INFORMATION
 
struct  _FILE_BOTH_DIRECTORY_INFORMATION
 
struct  _FILE_ID_BOTH_DIRECTORY_INFORMATION
 
struct  _FILE_ID_GLOBAL_TX_DIR_INFORMATION
 
struct  _FILE_BASIC_INFORMATION
 
struct  _FILE_STANDARD_INFORMATION
 
struct  _FILE_INTERNAL_INFORMATION
 
struct  _FILE_ID_128
 
struct  _FILE_ID_INFORMATION
 
struct  _FILE_EA_INFORMATION
 
struct  _FILE_ACCESS_INFORMATION
 
struct  _FILE_NAME_INFORMATION
 
struct  _FILE_RENAME_INFORMATION
 
struct  _FILE_LINK_INFORMATION
 
struct  _FILE_NAMES_INFORMATION
 
struct  _FILE_DISPOSITION_INFORMATION
 
struct  _FILE_DISPOSITION_INFORMATION_EX
 
struct  _FILE_POSITION_INFORMATION
 
struct  _FILE_ALIGNMENT_INFORMATION
 
struct  _FILE_ALLOCATION_INFORMATION
 
struct  _FILE_END_OF_FILE_INFORMATION
 
struct  _FILE_NETWORK_OPEN_INFORMATION
 
struct  _FILE_FULL_EA_INFORMATION
 
struct  _FILE_MODE_INFORMATION
 
struct  _FILE_STREAM_INFORMATION
 
struct  _FILE_ATTRIBUTE_TAG_INFORMATION
 
struct  _FILE_MAILSLOT_QUERY_INFORMATION
 
struct  _FILE_MAILSLOT_SET_INFORMATION
 
struct  _FILE_PIPE_INFORMATION
 
struct  _FILE_PIPE_LOCAL_INFORMATION
 
struct  _FILE_OBJECTID_BUFFER
 
struct  _FILE_OBJECTID_INFORMATION
 
struct  _FILE_QUOTA_INFORMATION
 
struct  _FILE_REPARSE_POINT_INFORMATION
 
struct  _FILE_ALL_INFORMATION
 
struct  _FILE_STAT_INFORMATION
 
struct  _FILE_IO_COMPLETION_NOTIFICATION_INFORMATION
 
struct  _PROCESS_INSTRUMENTATION_CALLBACK_INFORMATION
 
struct  _SYSTEM_CODEINTEGRITY_INFORMATION
 
struct  _THREAD_BASIC_INFORMATION
 
struct  _THREAD_DESCRIPTOR_INFORMATION
 
struct  _THREAD_NAME_INFORMATION
 
struct  _MANAGE_WRITES_TO_EXECUTABLE_MEMORY
 
struct  _KERNEL_USER_TIMES
 
struct  _MEMORY_SECTION_NAME
 
union  _MEMORY_WORKING_SET_EX_BLOCK
 
struct  _MEMORY_WORKING_SET_EX_INFORMATION
 
struct  _MEMORY_REGION_INFORMATION
 
struct  _MEMORY_IMAGE_INFORMATION
 
struct  _MUTANT_BASIC_INFORMATION
 
struct  _TIMER_BASIC_INFORMATION
 
struct  _MEMORY_RANGE_ENTRY
 
struct  _SYSTEM_THREAD_INFORMATION
 
struct  _SYSTEM_EXTENDED_THREAD_INFORMATION
 
struct  _IO_STATUS_BLOCK
 
struct  _KEY_BASIC_INFORMATION
 
struct  _KEY_NODE_INFORMATION
 
struct  _KEY_FULL_INFORMATION
 
struct  _KEY_NAME_INFORMATION
 
struct  _KEY_CACHED_INFORMATION
 
struct  _KEY_VALUE_ENTRY
 
struct  _KEY_VALUE_BASIC_INFORMATION
 
struct  _KEY_VALUE_FULL_INFORMATION
 
struct  _KEY_VALUE_PARTIAL_INFORMATION
 
struct  _KEY_VALUE_PARTIAL_INFORMATION_ALIGN64
 
struct  _OBJECT_ATTRIBUTES
 
struct  _OBJECT_HANDLE_FLAG_INFORMATION
 
struct  _OBJECT_BASIC_INFORMATION
 
struct  _OBJECT_NAME_INFORMATION
 
struct  __OBJECT_TYPE_INFORMATION
 
struct  _OBJECT_TYPES_INFORMATION
 
struct  _PROCESS_BASIC_INFORMATION
 
struct  _PROCESS_BASIC_INFORMATION64
 
struct  _PROCESS_PRIORITY_CLASS
 
struct  _PROCESS_CYCLE_TIME_INFORMATION
 
struct  _PROCESS_STACK_ALLOCATION_INFORMATION
 
struct  _PROCESS_STACK_ALLOCATION_INFORMATION_EX
 
struct  _RTL_HEAP_PARAMETERS
 
struct  _RTL_RWLOCK
 
struct  _SYSTEM_BASIC_INFORMATION
 
struct  _SYSTEM_CPU_INFORMATION
 
struct  _SYSTEM_PROCESSOR_FEATURES_INFORMATION
 
struct  _SYSTEM_PERFORMANCE_INFORMATION
 
struct  _SYSTEM_TIMEOFDAY_INFORMATION
 
struct  _SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION
 
struct  _SYSTEM_DRIVER_INFORMATION
 
struct  _SYSTEM_HANDLE_ENTRY
 
struct  _SYSTEM_HANDLE_INFORMATION
 
struct  _SYSTEM_HANDLE_TABLE_ENTRY_INFO_EX
 
struct  _SYSTEM_HANDLE_INFORMATION_EX
 
struct  _SYSTEM_CACHE_INFORMATION
 
struct  _SYSTEM_INTERRUPT_INFORMATION
 
struct  _SYSTEM_CONFIGURATION_INFO
 
struct  _SYSTEM_EXCEPTION_INFORMATION
 
struct  _SYSTEM_LOOKASIDE_INFORMATION
 
struct  _SYSTEM_KERNEL_DEBUGGER_INFORMATION
 
struct  _SYSTEM_KERNEL_DEBUGGER_INFORMATION_EX
 
struct  _VM_COUNTERS
 
struct  _VM_COUNTERS_EX
 
struct  _SYSTEM_PROCESS_INFORMATION
 
struct  _SYSTEM_REGISTRY_QUOTA_INFORMATION
 
struct  _SYSTEM_TIME_ADJUSTMENT_QUERY
 
struct  _SYSTEM_TIME_ADJUSTMENT
 
struct  _SYSTEM_FIRMWARE_TABLE_INFORMATION
 
struct  _SYSTEM_PROCESS_ID_INFORMATION
 
struct  _TIME_FIELDS
 
struct  _WINSTATIONINFORMATIONW
 
struct  _LDR_RESOURCE_INFO
 
struct  _DEBUG_BUFFER
 
struct  _DEBUG_MODULE_INFORMATION
 
struct  _DEBUG_HEAP_INFORMATION
 
struct  _DEBUG_LOCK_INFORMATION
 
struct  _PORT_MESSAGE_HEADER
 
struct  _ATOM_BASIC_INFORMATION
 
struct  _RTL_HANDLE
 
struct  _RTL_HANDLE_TABLE
 
struct  _RTL_ATOM_TABLE_ENTRY
 
struct  _RTL_ATOM_TABLE
 
struct  _RTL_QUERY_REGISTRY_TABLE
 
struct  _KEY_MULTIPLE_VALUE_INFORMATION
 
struct  _EVENT_BASIC_INFORMATION
 
struct  _SEMAPHORE_BASIC_INFORMATION
 
struct  _SECTION_BASIC_INFORMATION
 
struct  _SECTION_IMAGE_INFORMATION
 
struct  _LPC_SECTION_WRITE
 
struct  _LPC_SECTION_READ
 
struct  _LPC_MESSAGE
 
struct  _RTL_USER_PROCESS_INFORMATION
 
struct  _DIRECTORY_BASIC_INFORMATION
 
struct  _INITIAL_TEB
 
struct  _FILE_COMPLETION_INFORMATION
 
struct  _FILE_IO_COMPLETION_INFORMATION
 
struct  _CPTABLEINFO
 
struct  _NLSTABLEINFO
 
struct  _LDR_SERVICE_TAG_RECORD
 
struct  _LDRP_CSLIST
 
struct  _LDR_DEPENDENCY
 
struct  _LDR_DDAG_NODE
 
struct  _LDR_DATA_TABLE_ENTRY
 
struct  _LDR_DLL_LOADED_NOTIFICATION_DATA
 
struct  _LDR_DLL_UNLOADED_NOTIFICATION_DATA
 
union  _LDR_DLL_NOTIFICATION_DATA
 
struct  _RTL_PROCESS_MODULE_INFORMATION
 
struct  _RTL_PROCESS_MODULES
 
struct  _RTL_PROCESS_MODULE_INFORMATION_EX
 
struct  _PS_ATTRIBUTE
 
struct  _PS_ATTRIBUTE_LIST
 
struct  _PS_CREATE_INFO
 
struct  _DBGKM_EXCEPTION
 
struct  _DBGKM_CREATE_THREAD
 
struct  _DBGKM_CREATE_PROCESS
 
struct  _DBGKM_EXIT_THREAD
 
struct  _DBGKM_EXIT_PROCESS
 
struct  _DBGKM_LOAD_DLL
 
struct  _DBGKM_UNLOAD_DLL
 
struct  _DBGUI_CREATE_THREAD
 
struct  _DBGUI_CREATE_PROCESS
 
struct  _DBGUI_WAIT_STATE_CHANGE
 
struct  _WOW64_CPURESERVED
 
struct  _WOW64_CPU_AREA_INFO
 
struct  _WOW64INFO
 
struct  SYSTEM_SERVICE_TABLE
 
struct  _API_SET_NAMESPACE
 
struct  _API_SET_HASH_ENTRY
 
struct  _API_SET_NAMESPACE_ENTRY
 
struct  _API_SET_VALUE_ENTRY
 
struct  _KCONTINUE_ARGUMENT
 

Macros

#define WINE_NTSTATUS_DECLARED
 
#define __STRING_DEFINED__
 
#define __UNICODE_STRING_DEFINED__
 
#define _FILETIME_
 
#define PROCESS_PARAMS_FLAG_NORMALIZED   1
 
#define CROSS_PROCESS_LIST_FLUSH   0x80000000
 
#define CROSS_PROCESS_LIST_ENTRY(list, pos)    ((CROSS_PROCESS_WORK_ENTRY *)((char *)(list) + ((pos) & ~CROSS_PROCESS_LIST_FLUSH)))
 
#define TEB_ACTIVE_FRAME_CONTEXT_FLAG_EXTENDED   0x00000001
 
#define TEB_ACTIVE_FRAME_FLAG_EXTENDED   0x00000001
 
#define WOW64_TLS_CPURESERVED   1
 
#define WOW64_TLS_TEMPLIST   3
 
#define WOW64_TLS_USERCALLBACKDATA   5
 
#define WOW64_TLS_APCLIST   7
 
#define WOW64_TLS_FILESYSREDIR   8
 
#define WOW64_TLS_WOW64INFO   10
 
#define WOW64_TLS_MAX_NUMBER   19
 
#define FILE_RENAME_REPLACE_IF_EXISTS   0x00000001
 
#define FILE_RENAME_POSIX_SEMANTICS   0x00000002
 
#define FILE_RENAME_SUPPRESS_PIN_STATE_INHERITANCE   0x00000004
 
#define FILE_RENAME_SUPPRESS_STORAGE_RESERVE_INHERITANCE   0x00000008
 
#define FILE_RENAME_NO_INCREASE_AVAILABLE_SPACE   0x00000010
 
#define FILE_RENAME_NO_DECREASE_AVAILABLE_SPACE   0x00000020
 
#define FILE_RENAME_PRESERVE_AVAILABLE_SPACE   0x00000030
 
#define FILE_RENAME_IGNORE_READONLY_ATTRIBUTE   0x00000040
 
#define FILE_LINK_REPLACE_IF_EXISTS   0x00000001
 
#define FILE_LINK_POSIX_SEMANTICS   0x00000002
 
#define FILE_LINK_SUPPRESS_STORAGE_RESERVE_INHERITANCE   0x00000008
 
#define FILE_LINK_NO_INCREASE_AVAILABLE_SPACE   0x00000010
 
#define FILE_LINK_NO_DECREASE_AVAILABLE_SPACE   0x00000020
 
#define FILE_LINK_PRESERVE_AVAILABLE_SPACE   0x00000030
 
#define FILE_LINK_IGNORE_READONLY_ATTRIBUTE   0x00000040
 
#define FILE_LINK_FORCE_RESIZE_TARGET_SR   0x00000080
 
#define FILE_LINK_FORCE_RESIZE_SOURCE_SR   0x00000100
 
#define FILE_LINK_FORCE_RESIZE_SR   0x00000180
 
#define FILE_DISPOSITION_DO_NOT_DELETE   0x00000000
 
#define FILE_DISPOSITION_DELETE   0x00000001
 
#define FILE_DISPOSITION_POSIX_SEMANTICS   0x00000002
 
#define FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK   0x00000004
 
#define FILE_DISPOSITION_ON_CLOSE   0x00000008
 
#define FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE   0x00000010
 
#define FILE_PIPE_DISCONNECTED_STATE   0x00000001
 
#define FILE_PIPE_LISTENING_STATE   0x00000002
 
#define FILE_PIPE_CONNECTED_STATE   0x00000003
 
#define FILE_PIPE_CLOSING_STATE   0x00000004
 
#define FILE_SKIP_COMPLETION_PORT_ON_SUCCESS   0x1
 
#define FILE_SKIP_SET_EVENT_ON_HANDLE   0x2
 
#define FILE_SKIP_SET_USER_EVENT_ON_FAST_IO   0x4
 
#define MEM_EXECUTE_OPTION_DISABLE   0x01
 
#define MEM_EXECUTE_OPTION_ENABLE   0x02
 
#define MEM_EXECUTE_OPTION_DISABLE_THUNK_EMULATION   0x04
 
#define MEM_EXECUTE_OPTION_PERMANENT   0x08
 
#define CODEINTEGRITY_OPTION_ENABLED   0x0001
 
#define CODEINTEGRITY_OPTION_TESTSIGN   0x0002
 
#define CODEINTEGRITY_OPTION_UMCI_ENABLED   0x0004
 
#define CODEINTEGRITY_OPTION_UMCI_AUDITMODE_ENABLED   0x0008
 
#define CODEINTEGRITY_OPTION_UMCI_EXCLUSIONPATHS_ENABLED   0x0010
 
#define CODEINTEGRITY_OPTION_TEST_BUILD   0x0020
 
#define CODEINTEGRITY_OPTION_PREPRODUCTION_BUILD   0x0040
 
#define CODEINTEGRITY_OPTION_DEBUGMODE_ENABLED   0x0080
 
#define CODEINTEGRITY_OPTION_FLIGHT_BUILD   0x0100
 
#define CODEINTEGRITY_OPTION_FLIGHTING_ENABLED   0x0200
 
#define CODEINTEGRITY_OPTION_HVCI_KMCI_ENABLED   0x0400
 
#define CODEINTEGRITY_OPTION_HVCI_KMCI_AUDITMODE_ENABLED   0x0800
 
#define CODEINTEGRITY_OPTION_HVCI_KMCI_STRICTMODE_ENABLED   0x1000
 
#define CODEINTEGRITY_OPTION_HVCI_IUM_ENABLED   0x2000
 
#define __OBJECT_ATTRIBUTES_DEFINED__
 
#define PROCESS_PRIOCLASS_IDLE   1
 
#define PROCESS_PRIOCLASS_NORMAL   2
 
#define PROCESS_PRIOCLASS_HIGH   3
 
#define PROCESS_PRIOCLASS_REALTIME   4
 
#define PROCESS_PRIOCLASS_BELOW_NORMAL   5
 
#define PROCESS_PRIOCLASS_ABOVE_NORMAL   6
 
#define CPU_FEATURE_VME   0x00000005 /* Virtual 86 Mode Extensions */
 
#define CPU_FEATURE_TSC   0x00000002 /* Time Stamp Counter available */
 
#define CPU_FEATURE_CMOV   0x00000008 /* Conditional Move instruction*/
 
#define CPU_FEATURE_PGE   0x00000014 /* Page table Entry Global bit */
 
#define CPU_FEATURE_PSE   0x00000024 /* Page Size Extension */
 
#define CPU_FEATURE_MTRR   0x00000040 /* Memory Type Range Registers */
 
#define CPU_FEATURE_CX8   0x00000080 /* Compare and eXchange 8 byte instr. */
 
#define CPU_FEATURE_MMX   0x00000100 /* Multi Media eXtensions */
 
#define CPU_FEATURE_X86   0x00000200 /* seems to be always ON, on the '86 */
 
#define CPU_FEATURE_PAT   0x00000400 /* Page Attribute Table */
 
#define CPU_FEATURE_FXSR   0x00000800 /* FXSAVE and FXSTORE instructions */
 
#define CPU_FEATURE_SEP   0x00001000 /* SYSENTER and SYSEXIT instructions */
 
#define CPU_FEATURE_SSE   0x00002000 /* SSE extensions (ext. MMX) */
 
#define CPU_FEATURE_3DNOW   0x00004000 /* 3DNOW instructions available */
 
#define CPU_FEATURE_SSE2   0x00010000 /* SSE2 extensions (XMMI64) */
 
#define CPU_FEATURE_DS   0x00020000 /* Debug Store */
 
#define CPU_FEATURE_HTT   0x00040000 /* Hyper Threading Technology */
 
#define CPU_FEATURE_SSE3   0x00080000 /* SSE3 extensions */
 
#define CPU_FEATURE_CX128   0x00100000 /* cmpxchg16b instruction */
 
#define CPU_FEATURE_XSAVE   0x00800000 /* XSAVE instructions */
 
#define CPU_FEATURE_2NDLEV   0x04000000 /* Second-level address translation */
 
#define CPU_FEATURE_VIRT   0x08000000 /* Virtualization support */
 
#define CPU_FEATURE_RDFS   0x10000000 /* RDFSBASE etc. instructions */
 
#define CPU_FEATURE_NX   0x20000000 /* Data execution prevention */
 
#define CPU_FEATURE_SSSE3   0x00008000 /* SSSE3 instructions */
 
#define CPU_FEATURE_SSE41   0x01000000 /* SSE41 instructions */
 
#define CPU_FEATURE_SSE42   0x02000000 /* SSE42 instructions */
 
#define CPU_FEATURE_AVX   0x40000000 /* AVX instructions */
 
#define CPU_FEATURE_AVX2   0x80000000 /* AVX2 instructions */
 
#define CPU_FEATURE_PAE   0x00200000
 
#define CPU_FEATURE_DAZ   0x00400000
 
#define CPU_FEATURE_ARM_VFP_32   0x00000001
 
#define CPU_FEATURE_ARM_NEON   0x00000002
 
#define CPU_FEATURE_ARM_V8_CRC32   0x00000004
 
#define CPU_FEATURE_ARM_V8_CRYPTO   0x00000008
 
#define CPU_FEATURE_ARM_V81_ATOMIC   0x00000010
 
#define CPU_FEATURE_ARM_V82_DP   0x00000020
 
#define CPU_FEATURE_ARM_V83_JSCVT   0x00000040
 
#define CPU_FEATURE_ARM_V83_LRCPC   0x00000080
 
#define CPU_FEATURE_ARM_SVE   0x00000100
 
#define CPU_FEATURE_ARM_SVE2   0x00000200
 
#define CPU_FEATURE_ARM_SVE2_1   0x00000400
 
#define CPU_FEATURE_ARM_SVE_AES   0x00000800
 
#define CPU_FEATURE_ARM_SVE_PMULL128   0x00001000
 
#define CPU_FEATURE_ARM_SVE_BITPERM   0x00002000
 
#define CPU_FEATURE_ARM_SVE_BF16   0x00004000
 
#define CPU_FEATURE_ARM_SVE_EBF16   0x00008000
 
#define CPU_FEATURE_ARM_SVE_B16B16   0x00010000
 
#define CPU_FEATURE_ARM_SVE_SHA3   0x00020000
 
#define CPU_FEATURE_ARM_SVE_SM4   0x00040000
 
#define CPU_FEATURE_ARM_SVE_I8MM   0x00080000
 
#define CPU_FEATURE_ARM_SVE_F32MM   0x00100000
 
#define CPU_FEATURE_ARM_SVE_F64MM   0x00200000
 
#define PDI_MODULES   0x01
 
#define PDI_BACKTRACE   0x02
 
#define PDI_HEAPS   0x04
 
#define PDI_HEAP_TAGS   0x08
 
#define PDI_HEAP_BLOCKS   0x10
 
#define PDI_LOCKS   0x20
 
#define FILE_DIRECTORY_FILE   0x00000001
 
#define FILE_WRITE_THROUGH   0x00000002
 
#define FILE_SEQUENTIAL_ONLY   0x00000004
 
#define FILE_NO_INTERMEDIATE_BUFFERING   0x00000008
 
#define FILE_SYNCHRONOUS_IO_ALERT   0x00000010
 
#define FILE_SYNCHRONOUS_IO_NONALERT   0x00000020
 
#define FILE_NON_DIRECTORY_FILE   0x00000040
 
#define FILE_CREATE_TREE_CONNECTION   0x00000080
 
#define FILE_COMPLETE_IF_OPLOCKED   0x00000100
 
#define FILE_NO_EA_KNOWLEDGE   0x00000200
 
#define FILE_OPEN_FOR_RECOVERY   0x00000400
 
#define FILE_RANDOM_ACCESS   0x00000800
 
#define FILE_DELETE_ON_CLOSE   0x00001000
 
#define FILE_OPEN_BY_FILE_ID   0x00002000
 
#define FILE_OPEN_FOR_BACKUP_INTENT   0x00004000
 
#define FILE_NO_COMPRESSION   0x00008000
 
#define FILE_RESERVE_OPFILTER   0x00100000
 
#define FILE_OPEN_REPARSE_POINT   0x00200000
 
#define FILE_OPEN_OFFLINE_FILE   0x00400000
 
#define FILE_OPEN_FOR_FREE_SPACE_QUERY   0x00800000
 
#define FILE_ATTRIBUTE_VALID_FLAGS   0x00007fb7
 
#define FILE_ATTRIBUTE_VALID_SET_FLAGS   0x000031a7
 
#define FILE_SUPERSEDED   0
 
#define FILE_OPENED   1
 
#define FILE_CREATED   2
 
#define FILE_OVERWRITTEN   3
 
#define FILE_EXISTS   4
 
#define FILE_DOES_NOT_EXIST   5
 
#define FILE_SUPERSEDE   0
 
#define FILE_OPEN   1
 
#define FILE_CREATE   2
 
#define FILE_OPEN_IF   3
 
#define FILE_OVERWRITE   4
 
#define FILE_OVERWRITE_IF   5
 
#define FILE_MAXIMUM_DISPOSITION   5
 
#define FILE_REMOVABLE_MEDIA   0x00000001
 
#define FILE_READ_ONLY_DEVICE   0x00000002
 
#define FILE_FLOPPY_DISKETTE   0x00000004
 
#define FILE_WRITE_ONE_MEDIA   0x00000008
 
#define FILE_REMOTE_DEVICE   0x00000010
 
#define FILE_DEVICE_IS_MOUNTED   0x00000020
 
#define FILE_VIRTUAL_VOLUME   0x00000040
 
#define FILE_AUTOGENERATED_DEVICE_NAME   0x00000080
 
#define FILE_DEVICE_SECURE_OPEN   0x00000100
 
#define FILE_CHARACTERISTIC_PNP_DEVICE   0x00000800
 
#define FILE_CHARACTERISTIC_TS_DEVICE   0x00001000
 
#define FILE_CHARACTERISTIC_WEBDAV_DEVICE   0x00002000
 
#define FILE_CHARACTERISTIC_CSV   0x00010000
 
#define FILE_DEVICE_ALLOW_APPCONTAINER_TRAVERSAL   0x00020000
 
#define FILE_PORTABLE_DEVICE   0x00040000
 
#define FILE_PIPE_INBOUND   0x00000000
 
#define FILE_PIPE_OUTBOUND   0x00000001
 
#define FILE_PIPE_FULL_DUPLEX   0x00000002
 
#define FILE_PIPE_TYPE_MESSAGE   0x00000001
 
#define FILE_PIPE_TYPE_BYTE   0x00000000
 
#define FILE_PIPE_MESSAGE_MODE   0x00000001
 
#define FILE_PIPE_BYTE_STREAM_MODE   0x00000000
 
#define FILE_PIPE_COMPLETE_OPERATION   0x00000001
 
#define FILE_PIPE_QUEUE_OPERATION   0x00000000
 
#define FILE_PIPE_SERVER_END   0x00000001
 
#define FILE_PIPE_CLIENT_END   0x00000000
 
#define INTERNAL_TS_ACTIVE_CONSOLE_ID   ( *((volatile ULONG*)(0x7ffe02d8)) )
 
#define LOGONID_CURRENT   ((ULONG)-1)
 
#define OBJ_PROTECT_CLOSE   0x00000001
 
#define OBJ_INHERIT   0x00000002
 
#define OBJ_PERMANENT   0x00000010
 
#define OBJ_EXCLUSIVE   0x00000020
 
#define OBJ_CASE_INSENSITIVE   0x00000040
 
#define OBJ_OPENIF   0x00000080
 
#define OBJ_OPENLINK   0x00000100
 
#define OBJ_KERNEL_HANDLE   0x00000200
 
#define OBJ_VALID_ATTRIBUTES   0x000003F2
 
#define SERVERNAME_CURRENT   ((HANDLE)NULL)
 
#define DPFLTR_ERROR_LEVEL   0
 
#define DPFLTR_WARNING_LEVEL   1
 
#define DPFLTR_TRACE_LEVEL   2
 
#define DPFLTR_INFO_LEVEL   3
 
#define DPFLTR_MASK   0x8000000
 
#define SE_MIN_WELL_KNOWN_PRIVILEGE   2
 
#define SE_CREATE_TOKEN_PRIVILEGE   2
 
#define SE_ASSIGNPRIMARYTOKEN_PRIVILEGE   3
 
#define SE_LOCK_MEMORY_PRIVILEGE   4
 
#define SE_INCREASE_QUOTA_PRIVILEGE   5
 
#define SE_UNSOLICITED_INPUT_PRIVILEGE   6 /* obsolete */
 
#define SE_MACHINE_ACCOUNT_PRIVILEGE   6
 
#define SE_TCB_PRIVILEGE   7
 
#define SE_SECURITY_PRIVILEGE   8
 
#define SE_TAKE_OWNERSHIP_PRIVILEGE   9
 
#define SE_LOAD_DRIVER_PRIVILEGE   10
 
#define SE_SYSTEM_PROFILE_PRIVILEGE   11
 
#define SE_SYSTEMTIME_PRIVILEGE   12
 
#define SE_PROF_SINGLE_PROCESS_PRIVILEGE   13
 
#define SE_INC_BASE_PRIORITY_PRIVILEGE   14
 
#define SE_CREATE_PAGEFILE_PRIVILEGE   15
 
#define SE_CREATE_PERMANENT_PRIVILEGE   16
 
#define SE_BACKUP_PRIVILEGE   17
 
#define SE_RESTORE_PRIVILEGE   18
 
#define SE_SHUTDOWN_PRIVILEGE   19
 
#define SE_DEBUG_PRIVILEGE   20
 
#define SE_AUDIT_PRIVILEGE   21
 
#define SE_SYSTEM_ENVIRONMENT_PRIVILEGE   22
 
#define SE_CHANGE_NOTIFY_PRIVILEGE   23
 
#define SE_REMOTE_SHUTDOWN_PRIVILEGE   24
 
#define SE_UNDOCK_PRIVILEGE   25
 
#define SE_SYNC_AGENT_PRIVILEGE   26
 
#define SE_ENABLE_DELEGATION_PRIVILEGE   27
 
#define SE_MANAGE_VOLUME_PRIVILEGE   28
 
#define SE_IMPERSONATE_PRIVILEGE   29
 
#define SE_CREATE_GLOBAL_PRIVILEGE   30
 
#define SE_MAX_WELL_KNOWN_PRIVILEGE   SE_CREATE_GLOBAL_PRIVILEGE
 
#define FLG_STOP_ON_EXCEPTION   0x00000001
 
#define FLG_SHOW_LDR_SNAPS   0x00000002
 
#define FLG_DEBUG_INITIAL_COMMAND   0x00000004
 
#define FLG_STOP_ON_HUNG_GUI   0x00000008
 
#define FLG_HEAP_ENABLE_TAIL_CHECK   0x00000010
 
#define FLG_HEAP_ENABLE_FREE_CHECK   0x00000020
 
#define FLG_HEAP_VALIDATE_PARAMETERS   0x00000040
 
#define FLG_HEAP_VALIDATE_ALL   0x00000080
 
#define FLG_APPLICATION_VERIFIER   0x00000100
 
#define FLG_POOL_ENABLE_TAGGING   0x00000400
 
#define FLG_HEAP_ENABLE_TAGGING   0x00000800
 
#define FLG_USER_STACK_TRACE_DB   0x00001000
 
#define FLG_KERNEL_STACK_TRACE_DB   0x00002000
 
#define FLG_MAINTAIN_OBJECT_TYPELIST   0x00004000
 
#define FLG_HEAP_ENABLE_TAG_BY_DLL   0x00008000
 
#define FLG_DISABLE_STACK_EXTENSION   0x00010000
 
#define FLG_ENABLE_CSRDEBUG   0x00020000
 
#define FLG_ENABLE_KDEBUG_SYMBOL_LOAD   0x00040000
 
#define FLG_DISABLE_PAGE_KERNEL_STACKS   0x00080000
 
#define FLG_ENABLE_SYSTEM_CRIT_BREAKS   0x00100000
 
#define FLG_HEAP_DISABLE_COALESCING   0x00200000
 
#define FLG_ENABLE_CLOSE_EXCEPTIONS   0x00400000
 
#define FLG_ENABLE_EXCEPTION_LOGGING   0x00800000
 
#define FLG_ENABLE_HANDLE_TYPE_TAGGING   0x01000000
 
#define FLG_HEAP_PAGE_ALLOCS   0x02000000
 
#define FLG_DEBUG_INITIAL_COMMAND_EX   0x04000000
 
#define FLG_DISABLE_DBGPRINT   0x08000000
 
#define FLG_CRITSEC_EVENT_CREATION   0x10000000
 
#define FLG_LDR_TOP_DOWN   0x20000000
 
#define FLG_ENABLE_HANDLE_EXCEPTIONS   0x40000000
 
#define FLG_DISABLE_PROTDLLS   0x80000000
 
#define RTL_REGISTRY_ABSOLUTE   0
 
#define RTL_REGISTRY_SERVICES   1
 
#define RTL_REGISTRY_CONTROL   2
 
#define RTL_REGISTRY_WINDOWS_NT   3
 
#define RTL_REGISTRY_DEVICEMAP   4
 
#define RTL_REGISTRY_USER   5
 
#define RTL_REGISTRY_HANDLE   0x40000000
 
#define RTL_REGISTRY_OPTIONAL   0x80000000
 
#define RTL_QUERY_REGISTRY_SUBKEY   0x00000001
 
#define RTL_QUERY_REGISTRY_TOPKEY   0x00000002
 
#define RTL_QUERY_REGISTRY_REQUIRED   0x00000004
 
#define RTL_QUERY_REGISTRY_NOVALUE   0x00000008
 
#define RTL_QUERY_REGISTRY_NOEXPAND   0x00000010
 
#define RTL_QUERY_REGISTRY_DIRECT   0x00000020
 
#define RTL_QUERY_REGISTRY_DELETE   0x00000040
 
#define RTL_QUERY_REGISTRY_TYPECHECK   0x00000100
 
#define RTL_QUERY_REGISTRY_TYPECHECK_SHIFT   24
 
#define IO_COMPLETION_QUERY_STATE   0x0001
 
#define IO_COMPLETION_MODIFY_STATE   0x0002
 
#define IO_COMPLETION_ALL_ACCESS   (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x3)
 
#define LDR_IMAGE_IS_DLL   0x00000004
 
#define LDR_LOAD_IN_PROGRESS   0x00001000
 
#define LDR_UNLOAD_IN_PROGRESS   0x00002000
 
#define LDR_NO_DLL_CALLS   0x00040000
 
#define LDR_PROCESS_ATTACHED   0x00080000
 
#define LDR_COR_IMAGE   0x00400000
 
#define LDR_COR_ILONLY   0x01000000
 
#define LDR_DONT_RESOLVE_REFS   0x40000000
 
#define LDR_WINE_INTERNAL   0x80000000
 
#define LDR_ADDREF_DLL_PIN   0x00000001
 
#define LDR_GET_DLL_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT   0x00000001
 
#define LDR_GET_DLL_HANDLE_EX_FLAG_PIN   0x00000002
 
#define LDR_DLL_NOTIFICATION_REASON_LOADED   1
 
#define LDR_DLL_NOTIFICATION_REASON_UNLOADED   2
 
#define MAXIMUM_FILENAME_LENGTH   256
 
#define PROCESS_CREATE_FLAGS_BREAKAWAY   0x00000001
 
#define PROCESS_CREATE_FLAGS_NO_DEBUG_INHERIT   0x00000002
 
#define PROCESS_CREATE_FLAGS_INHERIT_HANDLES   0x00000004
 
#define PROCESS_CREATE_FLAGS_OVERRIDE_ADDRESS_SPACE   0x00000008
 
#define PROCESS_CREATE_FLAGS_LARGE_PAGES   0x00000010
 
#define PROCESS_CREATE_FLAGS_LARGE_PAGE_SYSTEM_DLL   0x00000020
 
#define PROCESS_CREATE_FLAGS_PROTECTED_PROCESS   0x00000040
 
#define PROCESS_CREATE_FLAGS_CREATE_SESSION   0x00000080
 
#define PROCESS_CREATE_FLAGS_INHERIT_FROM_PARENT   0x00000100
 
#define PROCESS_CREATE_FLAGS_SUSPENDED   0x00000200
 
#define PROCESS_CREATE_FLAGS_EXTENDED_UNKNOWN   0x00000400
 
#define THREAD_CREATE_FLAGS_CREATE_SUSPENDED   0x00000001
 
#define THREAD_CREATE_FLAGS_SKIP_THREAD_ATTACH   0x00000002
 
#define THREAD_CREATE_FLAGS_HIDE_FROM_DEBUGGER   0x00000004
 
#define THREAD_CREATE_FLAGS_HAS_SECURITY_DESCRIPTOR   0x00000010
 
#define THREAD_CREATE_FLAGS_ACCESS_CHECK_IN_TARGET   0x00000020
 
#define THREAD_CREATE_FLAGS_INITIAL_THREAD   0x00000080
 
#define PS_ATTRIBUTE_THREAD   0x00010000
 
#define PS_ATTRIBUTE_INPUT   0x00020000
 
#define PS_ATTRIBUTE_ADDITIVE   0x00040000
 
#define PS_ATTRIBUTE_PARENT_PROCESS   (PsAttributeParentProcess | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
 
#define PS_ATTRIBUTE_DEBUG_PORT   (PsAttributeDebugPort | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
 
#define PS_ATTRIBUTE_TOKEN   (PsAttributeToken | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
 
#define PS_ATTRIBUTE_CLIENT_ID   (PsAttributeClientId | PS_ATTRIBUTE_THREAD)
 
#define PS_ATTRIBUTE_TEB_ADDRESS   (PsAttributeTebAddress | PS_ATTRIBUTE_THREAD)
 
#define PS_ATTRIBUTE_IMAGE_NAME   (PsAttributeImageName | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_IMAGE_INFO   (PsAttributeImageInfo)
 
#define PS_ATTRIBUTE_MEMORY_RESERVE   (PsAttributeMemoryReserve | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_PRIORITY_CLASS   (PsAttributePriorityClass | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_ERROR_MODE   (PsAttributeErrorMode | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_STD_HANDLE_INFO   (PsAttributeStdHandleInfo | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_HANDLE_LIST   (PsAttributeHandleList | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_GROUP_AFFINITY   (PsAttributeGroupAffinity | PS_ATTRIBUTE_THREAD | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_PREFERRED_NODE   (PsAttributePreferredNode | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_IDEAL_PROCESSOR   (PsAttributeIdealProcessor | PS_ATTRIBUTE_THREAD | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_MITIGATION_OPTIONS   (PsAttributeMitigationOptions | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_PROTECTION_LEVEL   (PsAttributeProtectionLevel | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
 
#define PS_ATTRIBUTE_SECURE_PROCESS   (PsAttributeSecureProcess | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_JOB_LIST   (PsAttributeJobList | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_CHILD_PROCESS_POLICY   (PsAttributeChildProcessPolicy | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_ALL_APPLICATION_PACKAGES_POLICY   (PsAttributeAllApplicationPackagesPolicy | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_WIN32K_FILTER   (PsAttributeWin32kFilter | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_SAFE_OPEN_PROMPT_ORIGIN_CLAIM   (PsAttributeSafeOpenPromptOriginClaim | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_BNO_ISOLATION   (PsAttributeBnoIsolation | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_DESKTOP_APP_POLICY   (PsAttributeDesktopAppPolicy | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_CHPE   (PsAttributeChpe | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
 
#define PS_ATTRIBUTE_MITIGATION_AUDIT_OPTIONS   (PsAttributeMitigationAuditOptions | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_MACHINE_TYPE   (PsAttributeMachineType | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
 
#define PS_ATTRIBUTE_COMPONENT_FILTER   (PsAttributeComponentFilter | PS_ATTRIBUTE_INPUT)
 
#define PS_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES   (PsAttributeEnableOptionalXStateFeatures | PS_ATTRIBUTE_THREAD | PS_ATTRIBUTE_INPUT)
 
#define DEBUG_READ_EVENT   0x0001
 
#define DEBUG_PROCESS_ASSIGN   0x0002
 
#define DEBUG_SET_INFORMATION   0x0004
 
#define DEBUG_QUERY_INFORMATION   0x0008
 
#define DEBUG_ALL_ACCESS   (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x0f)
 
#define DEBUG_KILL_ON_CLOSE   0x1
 
#define WOW64_CPURESERVED_FLAG_RESET_STATE   1
 
#define WOW64_CPUFLAGS_MSFT64   0x01
 
#define WOW64_CPUFLAGS_SOFTWARE   0x02
 
#define KCONTINUE_FLAG_TEST_ALERT   0x01
 
#define KCONTINUE_FLAG_DELIVER_APC   0x02
 
#define HASH_STRING_ALGORITHM_DEFAULT   0
 
#define HASH_STRING_ALGORITHM_X65599   1
 
#define HASH_STRING_ALGORITHM_INVALID   0xffffffff
 
#define InitializeObjectAttributes(p, n, a, r, s)
 
#define NtCurrentProcess()   ((HANDLE)~(ULONG_PTR)0)
 
#define NtCurrentThread()   ((HANDLE)~(ULONG_PTR)1)
 
#define RtlFillMemory(Destination, Length, Fill)   memset((Destination),(Fill),(Length))
 
#define RtlMoveMemory(Destination, Source, Length)   memmove((Destination),(Source),(Length))
 
#define RtlStoreUlong(p, v)   do { ULONG _v = (v); memcpy((p), &_v, sizeof(_v)); } while (0)
 
#define RtlStoreUlonglong(p, v)   do { ULONGLONG _v = (v); memcpy((p), &_v, sizeof(_v)); } while (0)
 
#define RtlRetrieveUlong(p, s)   memcpy((p), (s), sizeof(ULONG))
 
#define RtlRetrieveUlonglong(p, s)   memcpy((p), (s), sizeof(ULONGLONG))
 
#define RtlZeroMemory(Destination, Length)   memset((Destination),0,(Length))
 
#define InitializeListHead(le)   (void)((le)->Flink = (le)->Blink = (le))
 
#define InsertHeadList(le, e)   do { PLIST_ENTRY f = (le)->Flink; (e)->Flink = f; (e)->Blink = (le); f->Blink = (e); (le)->Flink = (e); } while (0)
 
#define InsertTailList(le, e)   do { PLIST_ENTRY b = (le)->Blink; (e)->Flink = (le); (e)->Blink = b; b->Flink = (e); (le)->Blink = (e); } while (0)
 
#define IsListEmpty(le)   ((le)->Flink == (le))
 
#define RemoveEntryList(e)   do { PLIST_ENTRY f = (e)->Flink, b = (e)->Blink; f->Blink = b; b->Flink = f; (e)->Flink = (e)->Blink = NULL; } while (0)
 

Typedefs

typedef LONG NTSTATUS
 
typedef const charPCSZ
 
typedef short CSHORT
 
typedef CSHORTPCSHORT
 
typedef struct _STRING STRING
 
typedef struct _STRINGPSTRING
 
typedef STRING ANSI_STRING
 
typedef PSTRING PANSI_STRING
 
typedef const STRINGPCANSI_STRING
 
typedef STRING OEM_STRING
 
typedef PSTRING POEM_STRING
 
typedef const STRINGPCOEM_STRING
 
typedef struct _UNICODE_STRING UNICODE_STRING
 
typedef struct _UNICODE_STRINGPUNICODE_STRING
 
typedef const UNICODE_STRINGPCUNICODE_STRING
 
typedef struct _FILETIME FILETIME
 
typedef struct _FILETIMEPFILETIME
 
typedef struct _FILETIMELPFILETIME
 
typedef struct _RTL_SYSTEM_TIME RTL_SYSTEM_TIME
 
typedef struct _RTL_SYSTEM_TIMEPRTL_SYSTEM_TIME
 
typedef struct _RTL_TIME_ZONE_INFORMATION RTL_TIME_ZONE_INFORMATION
 
typedef struct _RTL_TIME_ZONE_INFORMATIONPRTL_TIME_ZONE_INFORMATION
 
typedef struct _RTL_TIME_DYNAMIC_ZONE_INFORMATION RTL_DYNAMIC_TIME_ZONE_INFORMATION
 
typedef struct _RTL_TIME_DYNAMIC_ZONE_INFORMATIONPRTL_DYNAMIC_TIME_ZONE_INFORMATION
 
typedef struct _CLIENT_ID CLIENT_ID
 
typedef struct _CLIENT_IDPCLIENT_ID
 
typedef struct _CURDIR CURDIR
 
typedef struct _CURDIRPCURDIR
 
typedef struct RTL_DRIVE_LETTER_CURDIR RTL_DRIVE_LETTER_CURDIR
 
typedef struct RTL_DRIVE_LETTER_CURDIRPRTL_DRIVE_LETTER_CURDIR
 
typedef struct _RTL_RELATIVE_NAME RTL_RELATIVE_NAME
 
typedef struct _RTL_RELATIVE_NAMEPRTL_RELATIVE_NAME
 
typedef struct tagRTL_BITMAP RTL_BITMAP
 
typedef struct tagRTL_BITMAPPRTL_BITMAP
 
typedef const RTL_BITMAPPCRTL_BITMAP
 
typedef struct tagRTL_BITMAP_RUN RTL_BITMAP_RUN
 
typedef struct tagRTL_BITMAP_RUNPRTL_BITMAP_RUN
 
typedef const RTL_BITMAP_RUNPCRTL_BITMAP_RUN
 
typedef struct _RTL_USER_PROCESS_PARAMETERS RTL_USER_PROCESS_PARAMETERS
 
typedef struct _RTL_USER_PROCESS_PARAMETERSPRTL_USER_PROCESS_PARAMETERS
 
typedef struct _PEB_LDR_DATA PEB_LDR_DATA
 
typedef struct _PEB_LDR_DATAPPEB_LDR_DATA
 
typedef struct _GDI_TEB_BATCH GDI_TEB_BATCH
 
typedef struct _RTL_ACTIVATION_CONTEXT_STACK_FRAME RTL_ACTIVATION_CONTEXT_STACK_FRAME
 
typedef struct _RTL_ACTIVATION_CONTEXT_STACK_FRAMEPRTL_ACTIVATION_CONTEXT_STACK_FRAME
 
typedef struct _ACTIVATION_CONTEXT_STACK ACTIVATION_CONTEXT_STACK
 
typedef struct _ACTIVATION_CONTEXT_STACKPACTIVATION_CONTEXT_STACK
 
typedef struct _TEB_ACTIVE_FRAME_CONTEXT TEB_ACTIVE_FRAME_CONTEXT
 
typedef struct _TEB_ACTIVE_FRAME_CONTEXTPTEB_ACTIVE_FRAME_CONTEXT
 
typedef struct _TEB_ACTIVE_FRAME_CONTEXT_EX TEB_ACTIVE_FRAME_CONTEXT_EX
 
typedef struct _TEB_ACTIVE_FRAME_CONTEXT_EXPTEB_ACTIVE_FRAME_CONTEXT_EX
 
typedef struct _TEB_ACTIVE_FRAME TEB_ACTIVE_FRAME
 
typedef struct _TEB_ACTIVE_FRAMEPTEB_ACTIVE_FRAME
 
typedef struct _TEB_ACTIVE_FRAME_EX TEB_ACTIVE_FRAME_EX
 
typedef struct _TEB_ACTIVE_FRAME_EXPTEB_ACTIVE_FRAME_EX
 
typedef struct _FLS_CALLBACK FLS_CALLBACK
 
typedef struct _FLS_CALLBACKPFLS_CALLBACK
 
typedef struct _FLS_INFO_CHUNK FLS_INFO_CHUNK
 
typedef struct _FLS_INFO_CHUNKPFLS_INFO_CHUNK
 
typedef struct _GLOBAL_FLS_DATA GLOBAL_FLS_DATA
 
typedef struct _GLOBAL_FLS_DATAPGLOBAL_FLS_DATA
 
typedef struct _TEB_FLS_DATA TEB_FLS_DATA
 
typedef struct _TEB_FLS_DATAPTEB_FLS_DATA
 
typedef struct _CHPE_V2_CPU_AREA_INFO CHPE_V2_CPU_AREA_INFO
 
typedef struct _CHPE_V2_CPU_AREA_INFOPCHPE_V2_CPU_AREA_INFO
 
typedef struct _CHPEV2_PROCESS_INFO CHPEV2_PROCESS_INFO
 
typedef struct _CHPEV2_PROCESS_INFOPCHPEV2_PROCESS_INFO
 
typedef NTSTATUS(WINAPIKERNEL_CALLBACK_PROC) (void *, ULONG)
 
typedef struct _PEB PEB
 
typedef struct _PEBPPEB
 
typedef struct _TEB TEB
 
typedef struct _TEBPTEB
 
typedef struct _NT_TIB32 NT_TIB32
 
typedef struct _NT_TIB64 NT_TIB64
 
typedef struct _CLIENT_ID32 CLIENT_ID32
 
typedef struct _CLIENT_ID64 CLIENT_ID64
 
typedef struct _LIST_ENTRY32 LIST_ENTRY32
 
typedef struct _LIST_ENTRY64 LIST_ENTRY64
 
typedef struct _UNICODE_STRING32 UNICODE_STRING32
 
typedef struct _UNICODE_STRING64 UNICODE_STRING64
 
typedef struct _ACTIVATION_CONTEXT_STACK32 ACTIVATION_CONTEXT_STACK32
 
typedef struct _ACTIVATION_CONTEXT_STACK64 ACTIVATION_CONTEXT_STACK64
 
typedef struct _CURDIR32 CURDIR32
 
typedef struct _CURDIR64 CURDIR64
 
typedef struct RTL_DRIVE_LETTER_CURDIR32 RTL_DRIVE_LETTER_CURDIR32
 
typedef struct RTL_DRIVE_LETTER_CURDIR64 RTL_DRIVE_LETTER_CURDIR64
 
typedef struct _RTL_USER_PROCESS_PARAMETERS32 RTL_USER_PROCESS_PARAMETERS32
 
typedef struct _RTL_USER_PROCESS_PARAMETERS64 RTL_USER_PROCESS_PARAMETERS64
 
typedef struct _PEB_LDR_DATA32 PEB_LDR_DATA32
 
typedef struct _PEB_LDR_DATA32PPEB_LDR_DATA32
 
typedef struct _PEB_LDR_DATA64 PEB_LDR_DATA64
 
typedef struct _PEB_LDR_DATA64PPEB_LDR_DATA64
 
typedef struct _PEB32 PEB32
 
typedef struct _PEB64 PEB64
 
typedef struct _TEB32 TEB32
 
typedef struct _TEB64 TEB64
 
typedef enum _FILE_INFORMATION_CLASS FILE_INFORMATION_CLASS
 
typedef enum _FILE_INFORMATION_CLASSPFILE_INFORMATION_CLASS
 
typedef struct _FILE_DIRECTORY_INFORMATION FILE_DIRECTORY_INFORMATION
 
typedef struct _FILE_DIRECTORY_INFORMATIONPFILE_DIRECTORY_INFORMATION
 
typedef struct _FILE_FULL_DIRECTORY_INFORMATION FILE_FULL_DIRECTORY_INFORMATION
 
typedef struct _FILE_FULL_DIRECTORY_INFORMATIONPFILE_FULL_DIRECTORY_INFORMATION
 
typedef struct _FILE_FULL_DIRECTORY_INFORMATION FILE_FULL_DIR_INFORMATION
 
typedef struct _FILE_FULL_DIRECTORY_INFORMATIONPFILE_FULL_DIR_INFORMATION
 
typedef struct _FILE_ID_FULL_DIRECTORY_INFORMATION FILE_ID_FULL_DIRECTORY_INFORMATION
 
typedef struct _FILE_ID_FULL_DIRECTORY_INFORMATIONPFILE_ID_FULL_DIRECTORY_INFORMATION
 
typedef struct _FILE_BOTH_DIRECTORY_INFORMATION FILE_BOTH_DIRECTORY_INFORMATION
 
typedef struct _FILE_BOTH_DIRECTORY_INFORMATIONPFILE_BOTH_DIRECTORY_INFORMATION
 
typedef struct _FILE_BOTH_DIRECTORY_INFORMATION FILE_BOTH_DIR_INFORMATION
 
typedef struct _FILE_BOTH_DIRECTORY_INFORMATIONPFILE_BOTH_DIR_INFORMATION
 
typedef struct _FILE_ID_BOTH_DIRECTORY_INFORMATION FILE_ID_BOTH_DIRECTORY_INFORMATION
 
typedef struct _FILE_ID_BOTH_DIRECTORY_INFORMATIONPFILE_ID_BOTH_DIRECTORY_INFORMATION
 
typedef struct _FILE_ID_GLOBAL_TX_DIR_INFORMATION FILE_ID_GLOBAL_TX_DIR_INFORMATION
 
typedef struct _FILE_ID_GLOBAL_TX_DIR_INFORMATIONPFILE_ID_GLOBAL_TX_DIR_INFORMATION
 
typedef struct _FILE_BASIC_INFORMATION FILE_BASIC_INFORMATION
 
typedef struct _FILE_BASIC_INFORMATIONPFILE_BASIC_INFORMATION
 
typedef struct _FILE_STANDARD_INFORMATION FILE_STANDARD_INFORMATION
 
typedef struct _FILE_STANDARD_INFORMATIONPFILE_STANDARD_INFORMATION
 
typedef struct _FILE_INTERNAL_INFORMATION FILE_INTERNAL_INFORMATION
 
typedef struct _FILE_INTERNAL_INFORMATIONPFILE_INTERNAL_INFORMATION
 
typedef struct _FILE_ID_128 FILE_ID_128
 
typedef struct _FILE_ID_128PFILE_ID_128
 
typedef struct _FILE_ID_INFORMATION FILE_ID_INFORMATION
 
typedef struct _FILE_ID_INFORMATIONPFILE_ID_INFORMATION
 
typedef struct _FILE_EA_INFORMATION FILE_EA_INFORMATION
 
typedef struct _FILE_EA_INFORMATIONPFILE_EA_INFORMATION
 
typedef struct _FILE_ACCESS_INFORMATION FILE_ACCESS_INFORMATION
 
typedef struct _FILE_ACCESS_INFORMATIONPFILE_ACCESS_INFORMATION
 
typedef struct _FILE_NAME_INFORMATION FILE_NAME_INFORMATION
 
typedef struct _FILE_NAME_INFORMATIONPFILE_NAME_INFORMATION
 
typedef struct _FILE_RENAME_INFORMATION FILE_RENAME_INFORMATION
 
typedef struct _FILE_RENAME_INFORMATIONPFILE_RENAME_INFORMATION
 
typedef struct _FILE_LINK_INFORMATION FILE_LINK_INFORMATION
 
typedef struct _FILE_LINK_INFORMATIONPFILE_LINK_INFORMATION
 
typedef struct _FILE_NAMES_INFORMATION FILE_NAMES_INFORMATION
 
typedef struct _FILE_NAMES_INFORMATIONPFILE_NAMES_INFORMATION
 
typedef struct _FILE_DISPOSITION_INFORMATION FILE_DISPOSITION_INFORMATION
 
typedef struct _FILE_DISPOSITION_INFORMATIONPFILE_DISPOSITION_INFORMATION
 
typedef struct _FILE_DISPOSITION_INFORMATION_EX FILE_DISPOSITION_INFORMATION_EX
 
typedef struct _FILE_DISPOSITION_INFORMATION_EXPFILE_DISPOSITION_INFORMATION_EX
 
typedef struct _FILE_POSITION_INFORMATION FILE_POSITION_INFORMATION
 
typedef struct _FILE_POSITION_INFORMATIONPFILE_POSITION_INFORMATION
 
typedef struct _FILE_ALIGNMENT_INFORMATION FILE_ALIGNMENT_INFORMATION
 
typedef struct _FILE_ALIGNMENT_INFORMATIONPFILE_ALIGNMENT_INFORMATION
 
typedef struct _FILE_ALLOCATION_INFORMATION FILE_ALLOCATION_INFORMATION
 
typedef struct _FILE_ALLOCATION_INFORMATIONPFILE_ALLOCATION_INFORMATION
 
typedef struct _FILE_END_OF_FILE_INFORMATION FILE_END_OF_FILE_INFORMATION
 
typedef struct _FILE_END_OF_FILE_INFORMATIONPFILE_END_OF_FILE_INFORMATION
 
typedef struct _FILE_NETWORK_OPEN_INFORMATION FILE_NETWORK_OPEN_INFORMATION
 
typedef struct _FILE_NETWORK_OPEN_INFORMATIONPFILE_NETWORK_OPEN_INFORMATION
 
typedef struct _FILE_FULL_EA_INFORMATION FILE_FULL_EA_INFORMATION
 
typedef struct _FILE_FULL_EA_INFORMATIONPFILE_FULL_EA_INFORMATION
 
typedef struct _FILE_MODE_INFORMATION FILE_MODE_INFORMATION
 
typedef struct _FILE_MODE_INFORMATIONPFILE_MODE_INFORMATION
 
typedef struct _FILE_STREAM_INFORMATION FILE_STREAM_INFORMATION
 
typedef struct _FILE_STREAM_INFORMATIONPFILE_STREAM_INFORMATION
 
typedef struct _FILE_ATTRIBUTE_TAG_INFORMATION FILE_ATTRIBUTE_TAG_INFORMATION
 
typedef struct _FILE_ATTRIBUTE_TAG_INFORMATIONPFILE_ATTRIBUTE_TAG_INFORMATION
 
typedef struct _FILE_MAILSLOT_QUERY_INFORMATION FILE_MAILSLOT_QUERY_INFORMATION
 
typedef struct _FILE_MAILSLOT_QUERY_INFORMATIONPFILE_MAILSLOT_QUERY_INFORMATION
 
typedef struct _FILE_MAILSLOT_SET_INFORMATION FILE_MAILSLOT_SET_INFORMATION
 
typedef struct _FILE_MAILSLOT_SET_INFORMATIONPFILE_MAILSLOT_SET_INFORMATION
 
typedef struct _FILE_PIPE_INFORMATION FILE_PIPE_INFORMATION
 
typedef struct _FILE_PIPE_INFORMATIONPFILE_PIPE_INFORMATION
 
typedef struct _FILE_PIPE_LOCAL_INFORMATION FILE_PIPE_LOCAL_INFORMATION
 
typedef struct _FILE_PIPE_LOCAL_INFORMATIONPFILE_PIPE_LOCAL_INFORMATION
 
typedef struct _FILE_OBJECTID_BUFFER FILE_OBJECTID_BUFFER
 
typedef struct _FILE_OBJECTID_BUFFERPFILE_OBJECTID_BUFFER
 
typedef struct _FILE_OBJECTID_INFORMATION FILE_OBJECTID_INFORMATION
 
typedef struct _FILE_OBJECTID_INFORMATIONPFILE_OBJECTID_INFORMATION
 
typedef struct _FILE_QUOTA_INFORMATION FILE_QUOTA_INFORMATION
 
typedef struct _FILE_QUOTA_INFORMATIONPFILE_QUOTA_INFORMATION
 
typedef struct _FILE_REPARSE_POINT_INFORMATION FILE_REPARSE_POINT_INFORMATION
 
typedef struct _FILE_REPARSE_POINT_INFORMATIONPFILE_REPARSE_POINT_INFORMATION
 
typedef struct _FILE_ALL_INFORMATION FILE_ALL_INFORMATION
 
typedef struct _FILE_ALL_INFORMATIONPFILE_ALL_INFORMATION
 
typedef struct _FILE_STAT_INFORMATION FILE_STAT_INFORMATION
 
typedef struct _FILE_STAT_INFORMATIONPFILE_STAT_INFORMATION
 
typedef struct _FILE_IO_COMPLETION_NOTIFICATION_INFORMATION FILE_IO_COMPLETION_NOTIFICATION_INFORMATION
 
typedef struct _FILE_IO_COMPLETION_NOTIFICATION_INFORMATIONPFILE_IO_COMPLETION_NOTIFICATION_INFORMATION
 
typedef struct _PROCESS_INSTRUMENTATION_CALLBACK_INFORMATION PROCESS_INSTRUMENTATION_CALLBACK_INFORMATION
 
typedef struct _PROCESS_INSTRUMENTATION_CALLBACK_INFORMATIONPPROCESS_INSTRUMENTATION_CALLBACK_INFORMATION
 
typedef enum _FSINFOCLASS FS_INFORMATION_CLASS
 
typedef enum _FSINFOCLASSPFS_INFORMATION_CLASS
 
typedef enum _KEY_INFORMATION_CLASS KEY_INFORMATION_CLASS
 
typedef enum _KEY_VALUE_INFORMATION_CLASS KEY_VALUE_INFORMATION_CLASS
 
typedef enum _OBJECT_INFORMATION_CLASS OBJECT_INFORMATION_CLASS
 
typedef enum _OBJECT_INFORMATION_CLASSPOBJECT_INFORMATION_CLASS
 
typedef enum _PROCESSINFOCLASS PROCESSINFOCLASS
 
typedef enum _SECTION_INHERIT SECTION_INHERIT
 
typedef enum _SYSTEM_INFORMATION_CLASS SYSTEM_INFORMATION_CLASS
 
typedef enum _SYSTEM_INFORMATION_CLASSPSYSTEM_INFORMATION_CLASS
 
typedef struct _SYSTEM_CODEINTEGRITY_INFORMATION SYSTEM_CODEINTEGRITY_INFORMATION
 
typedef struct _SYSTEM_CODEINTEGRITY_INFORMATIONPSYSTEM_CODEINTEGRITY_INFORMATION
 
typedef enum _THREADINFOCLASS THREADINFOCLASS
 
typedef struct _THREAD_BASIC_INFORMATION THREAD_BASIC_INFORMATION
 
typedef struct _THREAD_BASIC_INFORMATIONPTHREAD_BASIC_INFORMATION
 
typedef struct _THREAD_DESCRIPTOR_INFORMATION THREAD_DESCRIPTOR_INFORMATION
 
typedef struct _THREAD_DESCRIPTOR_INFORMATIONPTHREAD_DESCRIPTOR_INFORMATION
 
typedef struct _THREAD_NAME_INFORMATION THREAD_NAME_INFORMATION
 
typedef struct _THREAD_NAME_INFORMATIONPTHREAD_NAME_INFORMATION
 
typedef struct _MANAGE_WRITES_TO_EXECUTABLE_MEMORY MANAGE_WRITES_TO_EXECUTABLE_MEMORY
 
typedef struct _MANAGE_WRITES_TO_EXECUTABLE_MEMORYPMANAGE_WRITES_TO_EXECUTABLE_MEMORY
 
typedef struct _KERNEL_USER_TIMES KERNEL_USER_TIMES
 
typedef struct _KERNEL_USER_TIMESPKERNEL_USER_TIMES
 
typedef enum _WINSTATIONINFOCLASS WINSTATIONINFOCLASS
 
typedef enum _MEMORY_INFORMATION_CLASS MEMORY_INFORMATION_CLASS
 
typedef struct _MEMORY_SECTION_NAME MEMORY_SECTION_NAME
 
typedef struct _MEMORY_SECTION_NAMEPMEMORY_SECTION_NAME
 
typedef union _MEMORY_WORKING_SET_EX_BLOCK MEMORY_WORKING_SET_EX_BLOCK
 
typedef union _MEMORY_WORKING_SET_EX_BLOCKPMEMORY_WORKING_SET_EX_BLOCK
 
typedef struct _MEMORY_WORKING_SET_EX_INFORMATION MEMORY_WORKING_SET_EX_INFORMATION
 
typedef struct _MEMORY_WORKING_SET_EX_INFORMATIONPMEMORY_WORKING_SET_EX_INFORMATION
 
typedef struct _MEMORY_REGION_INFORMATION MEMORY_REGION_INFORMATION
 
typedef struct _MEMORY_REGION_INFORMATIONPMEMORY_REGION_INFORMATION
 
typedef struct _MEMORY_IMAGE_INFORMATION MEMORY_IMAGE_INFORMATION
 
typedef struct _MEMORY_IMAGE_INFORMATIONPMEMORY_IMAGE_INFORMATION
 
typedef enum _MUTANT_INFORMATION_CLASS MUTANT_INFORMATION_CLASS
 
typedef enum _MUTANT_INFORMATION_CLASSPMUTANT_INFORMATION_CLASS
 
typedef struct _MUTANT_BASIC_INFORMATION MUTANT_BASIC_INFORMATION
 
typedef struct _MUTANT_BASIC_INFORMATIONPMUTANT_BASIC_INFORMATION
 
typedef enum _TIMER_INFORMATION_CLASS TIMER_INFORMATION_CLASS
 
typedef struct _TIMER_BASIC_INFORMATION TIMER_BASIC_INFORMATION
 
typedef struct _TIMER_BASIC_INFORMATIONPTIMER_BASIC_INFORMATION
 
typedef enum VIRTUAL_MEMORY_INFORMATION_CLASSPVIRTUAL_MEMORY_INFORMATION_CLASS
 
typedef struct _MEMORY_RANGE_ENTRY MEMORY_RANGE_ENTRY
 
typedef struct _MEMORY_RANGE_ENTRYPMEMORY_RANGE_ENTRY
 
typedef struct _SYSTEM_THREAD_INFORMATION SYSTEM_THREAD_INFORMATION
 
typedef struct _SYSTEM_THREAD_INFORMATIONPSYSTEM_THREAD_INFORMATION
 
typedef struct _SYSTEM_EXTENDED_THREAD_INFORMATION SYSTEM_EXTENDED_THREAD_INFORMATION
 
typedef struct _SYSTEM_EXTENDED_THREAD_INFORMATIONPSYSTEM_EXTENDED_THREAD_INFORMATION
 
typedef struct _IO_STATUS_BLOCK IO_STATUS_BLOCK
 
typedef struct _IO_STATUS_BLOCKPIO_STATUS_BLOCK
 
typedef void(WINAPIPIO_APC_ROUTINE) (PVOID, PIO_STATUS_BLOCK, ULONG)
 
typedef struct _KEY_BASIC_INFORMATION KEY_BASIC_INFORMATION
 
typedef struct _KEY_BASIC_INFORMATIONPKEY_BASIC_INFORMATION
 
typedef struct _KEY_NODE_INFORMATION KEY_NODE_INFORMATION
 
typedef struct _KEY_NODE_INFORMATIONPKEY_NODE_INFORMATION
 
typedef struct _KEY_FULL_INFORMATION KEY_FULL_INFORMATION
 
typedef struct _KEY_FULL_INFORMATIONPKEY_FULL_INFORMATION
 
typedef struct _KEY_NAME_INFORMATION KEY_NAME_INFORMATION
 
typedef struct _KEY_NAME_INFORMATIONPKEY_NAME_INFORMATION
 
typedef struct _KEY_CACHED_INFORMATION KEY_CACHED_INFORMATION
 
typedef struct _KEY_CACHED_INFORMATIONPKEY_CACHED_INFORMATION
 
typedef struct _KEY_VALUE_ENTRY KEY_VALUE_ENTRY
 
typedef struct _KEY_VALUE_ENTRYPKEY_VALUE_ENTRY
 
typedef struct _KEY_VALUE_BASIC_INFORMATION KEY_VALUE_BASIC_INFORMATION
 
typedef struct _KEY_VALUE_BASIC_INFORMATIONPKEY_VALUE_BASIC_INFORMATION
 
typedef struct _KEY_VALUE_FULL_INFORMATION KEY_VALUE_FULL_INFORMATION
 
typedef struct _KEY_VALUE_FULL_INFORMATIONPKEY_VALUE_FULL_INFORMATION
 
typedef struct _KEY_VALUE_PARTIAL_INFORMATION KEY_VALUE_PARTIAL_INFORMATION
 
typedef struct _KEY_VALUE_PARTIAL_INFORMATIONPKEY_VALUE_PARTIAL_INFORMATION
 
typedef struct _KEY_VALUE_PARTIAL_INFORMATION_ALIGN64 KEY_VALUE_PARTIAL_INFORMATION_ALIGN64
 
typedef struct _KEY_VALUE_PARTIAL_INFORMATION_ALIGN64PKEY_VALUE_PARTIAL_INFORMATION_ALIGN64
 
typedef enum _MEMORY_RESERVE_OBJECT_TYPE MEMORY_RESERVE_OBJECT_TYPE
 
typedef enum _MEMORY_RESERVE_OBJECT_TYPE PMEMORY_RESERVE_OBJECT_TYPE
 
typedef struct _OBJECT_ATTRIBUTES OBJECT_ATTRIBUTES
 
typedef struct _OBJECT_ATTRIBUTESPOBJECT_ATTRIBUTES
 
typedef struct _OBJECT_HANDLE_FLAG_INFORMATION OBJECT_HANDLE_FLAG_INFORMATION
 
typedef struct _OBJECT_HANDLE_FLAG_INFORMATIONPOBJECT_HANDLE_FLAG_INFORMATION
 
typedef struct _OBJECT_BASIC_INFORMATION OBJECT_BASIC_INFORMATION
 
typedef struct _OBJECT_BASIC_INFORMATIONPOBJECT_BASIC_INFORMATION
 
typedef struct _OBJECT_NAME_INFORMATION OBJECT_NAME_INFORMATION
 
typedef struct _OBJECT_NAME_INFORMATIONPOBJECT_NAME_INFORMATION
 
typedef struct __OBJECT_TYPE_INFORMATION OBJECT_TYPE_INFORMATION
 
typedef struct __OBJECT_TYPE_INFORMATIONPOBJECT_TYPE_INFORMATION
 
typedef struct _OBJECT_TYPES_INFORMATION OBJECT_TYPES_INFORMATION
 
typedef struct _OBJECT_TYPES_INFORMATIONPOBJECT_TYPES_INFORMATION
 
typedef struct _PROCESS_BASIC_INFORMATION PROCESS_BASIC_INFORMATION
 
typedef struct _PROCESS_BASIC_INFORMATIONPPROCESS_BASIC_INFORMATION
 
typedef struct _PROCESS_BASIC_INFORMATION64 PROCESS_BASIC_INFORMATION64
 
typedef struct _PROCESS_PRIORITY_CLASS PROCESS_PRIORITY_CLASS
 
typedef struct _PROCESS_PRIORITY_CLASSPPROCESS_PRIORITY_CLASS
 
typedef struct _PROCESS_CYCLE_TIME_INFORMATION PROCESS_CYCLE_TIME_INFORMATION
 
typedef struct _PROCESS_CYCLE_TIME_INFORMATIONPPROCESS_CYCLE_TIME_INFORMATION
 
typedef struct _PROCESS_STACK_ALLOCATION_INFORMATION PROCESS_STACK_ALLOCATION_INFORMATION
 
typedef struct _PROCESS_STACK_ALLOCATION_INFORMATIONPPROCESS_STACK_ALLOCATION_INFORMATION
 
typedef struct _PROCESS_STACK_ALLOCATION_INFORMATION_EX PROCESS_STACK_ALLOCATION_INFORMATION_EX
 
typedef struct _PROCESS_STACK_ALLOCATION_INFORMATION_EXPPROCESS_STACK_ALLOCATION_INFORMATION_EX
 
typedef PVOIDaddress
 
typedef PVOID PSIZE_T size
 
typedef RTL_HEAP_COMMIT_ROUTINE * PRTL_HEAP_COMMIT_ROUTINE
 
typedef struct _RTL_HEAP_PARAMETERS RTL_HEAP_PARAMETERS
 
typedef struct _RTL_HEAP_PARAMETERSPRTL_HEAP_PARAMETERS
 
typedef struct _RTL_RWLOCK RTL_RWLOCK
 
typedef struct _RTL_RWLOCKLPRTL_RWLOCK
 
typedef struct _SYSTEM_BASIC_INFORMATION SYSTEM_BASIC_INFORMATION
 
typedef struct _SYSTEM_BASIC_INFORMATIONPSYSTEM_BASIC_INFORMATION
 
typedef struct _SYSTEM_CPU_INFORMATION SYSTEM_CPU_INFORMATION
 
typedef struct _SYSTEM_CPU_INFORMATIONPSYSTEM_CPU_INFORMATION
 
typedef struct _SYSTEM_PROCESSOR_FEATURES_INFORMATION SYSTEM_PROCESSOR_FEATURES_INFORMATION
 
typedef struct _SYSTEM_PROCESSOR_FEATURES_INFORMATIONPSYSTEM_PROCESSOR_FEATURES_INFORMATION
 
typedef struct _SYSTEM_PERFORMANCE_INFORMATION SYSTEM_PERFORMANCE_INFORMATION
 
typedef struct _SYSTEM_PERFORMANCE_INFORMATIONPSYSTEM_PERFORMANCE_INFORMATION
 
typedef struct _SYSTEM_TIMEOFDAY_INFORMATION SYSTEM_TIMEOFDAY_INFORMATION
 
typedef struct _SYSTEM_TIMEOFDAY_INFORMATIONPSYSTEM_TIMEOFDAY_INFORMATION
 
typedef struct _SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION
 
typedef struct _SYSTEM_PROCESSOR_PERFORMANCE_INFORMATIONPSYSTEM_PROCESSOR_PERFORMANCE_INFORMATION
 
typedef struct _SYSTEM_DRIVER_INFORMATION SYSTEM_DRIVER_INFORMATION
 
typedef struct _SYSTEM_DRIVER_INFORMATIONPSYSTEM_DRIVER_INFORMATION
 
typedef struct _SYSTEM_HANDLE_ENTRY SYSTEM_HANDLE_ENTRY
 
typedef struct _SYSTEM_HANDLE_ENTRYPSYSTEM_HANDLE_ENTRY
 
typedef struct _SYSTEM_HANDLE_INFORMATION SYSTEM_HANDLE_INFORMATION
 
typedef struct _SYSTEM_HANDLE_INFORMATIONPSYSTEM_HANDLE_INFORMATION
 
typedef struct _SYSTEM_HANDLE_TABLE_ENTRY_INFO_EX SYSTEM_HANDLE_TABLE_ENTRY_INFO_EX
 
typedef struct _SYSTEM_HANDLE_INFORMATION_EX SYSTEM_HANDLE_INFORMATION_EX
 
typedef struct _SYSTEM_CACHE_INFORMATION SYSTEM_CACHE_INFORMATION
 
typedef struct _SYSTEM_CACHE_INFORMATIONPSYSTEM_CACHE_INFORMATION
 
typedef struct _SYSTEM_INTERRUPT_INFORMATION SYSTEM_INTERRUPT_INFORMATION
 
typedef struct _SYSTEM_INTERRUPT_INFORMATIONPSYSTEM_INTERRUPT_INFORMATION
 
typedef struct _SYSTEM_CONFIGURATION_INFO SYSTEM_CONFIGURATION_INFO
 
typedef struct _SYSTEM_CONFIGURATION_INFOPSYSTEM_CONFIGURATION_INFO
 
typedef struct _SYSTEM_EXCEPTION_INFORMATION SYSTEM_EXCEPTION_INFORMATION
 
typedef struct _SYSTEM_EXCEPTION_INFORMATIONPSYSTEM_EXCEPTION_INFORMATION
 
typedef struct _SYSTEM_LOOKASIDE_INFORMATION SYSTEM_LOOKASIDE_INFORMATION
 
typedef struct _SYSTEM_LOOKASIDE_INFORMATIONPSYSTEM_LOOKASIDE_INFORMATION
 
typedef struct _SYSTEM_KERNEL_DEBUGGER_INFORMATION SYSTEM_KERNEL_DEBUGGER_INFORMATION
 
typedef struct _SYSTEM_KERNEL_DEBUGGER_INFORMATIONPSYSTEM_KERNEL_DEBUGGER_INFORMATION
 
typedef struct _SYSTEM_KERNEL_DEBUGGER_INFORMATION_EX SYSTEM_KERNEL_DEBUGGER_INFORMATION_EX
 
typedef struct _SYSTEM_KERNEL_DEBUGGER_INFORMATION_EXPSYSTEM_KERNEL_DEBUGGER_INFORMATION_EX
 
typedef struct _VM_COUNTERS VM_COUNTERS
 
typedef struct _VM_COUNTERSPVM_COUNTERS
 
typedef struct _VM_COUNTERS_EX VM_COUNTERS_EX
 
typedef struct _VM_COUNTERS_EXPVM_COUNTERS_EX
 
typedef struct _SYSTEM_PROCESS_INFORMATION SYSTEM_PROCESS_INFORMATION
 
typedef struct _SYSTEM_PROCESS_INFORMATIONPSYSTEM_PROCESS_INFORMATION
 
typedef struct _SYSTEM_REGISTRY_QUOTA_INFORMATION SYSTEM_REGISTRY_QUOTA_INFORMATION
 
typedef struct _SYSTEM_REGISTRY_QUOTA_INFORMATIONPSYSTEM_REGISTRY_QUOTA_INFORMATION
 
typedef struct _SYSTEM_TIME_ADJUSTMENT_QUERY SYSTEM_TIME_ADJUSTMENT_QUERY
 
typedef struct _SYSTEM_TIME_ADJUSTMENT_QUERYPSYSTEM_TIME_ADJUSTMENT_QUERY
 
typedef struct _SYSTEM_TIME_ADJUSTMENT SYSTEM_TIME_ADJUSTMENT
 
typedef struct _SYSTEM_TIME_ADJUSTMENTPSYSTEM_TIME_ADJUSTMENT
 
typedef enum _SYSTEM_FIRMWARE_TABLE_ACTION SYSTEM_FIRMWARE_TABLE_ACTION
 
typedef enum _SYSTEM_FIRMWARE_TABLE_ACTIONPSYSTEM_FIRMWARE_TABLE_ACTION
 
typedef struct _SYSTEM_FIRMWARE_TABLE_INFORMATION SYSTEM_FIRMWARE_TABLE_INFORMATION
 
typedef struct _SYSTEM_FIRMWARE_TABLE_INFORMATIONPSYSTEM_FIRMWARE_TABLE_INFORMATION
 
typedef struct _SYSTEM_PROCESS_ID_INFORMATION SYSTEM_PROCESS_ID_INFORMATION
 
typedef struct _SYSTEM_PROCESS_ID_INFORMATIONPSYSTEM_PROCESS_ID_INFORMATION
 
typedef struct _TIME_FIELDS TIME_FIELDS
 
typedef struct _TIME_FIELDSPTIME_FIELDS
 
typedef struct _WINSTATIONINFORMATIONW WINSTATIONINFORMATIONW
 
typedef struct _WINSTATIONINFORMATIONWPWINSTATIONINFORMATIONW
 
typedef BOOLEAN(WINAPIPWINSTATIONQUERYINFORMATIONW) (HANDLE, ULONG, WINSTATIONINFOCLASS, PVOID, ULONG, PULONG)
 
typedef struct _LDR_RESOURCE_INFO LDR_RESOURCE_INFO
 
typedef struct _LDR_RESOURCE_INFOPLDR_RESOURCE_INFO
 
typedef struct _DEBUG_BUFFER DEBUG_BUFFER
 
typedef struct _DEBUG_BUFFERPDEBUG_BUFFER
 
typedef struct _DEBUG_MODULE_INFORMATION DEBUG_MODULE_INFORMATION
 
typedef struct _DEBUG_MODULE_INFORMATIONPDEBUG_MODULE_INFORMATION
 
typedef struct _DEBUG_HEAP_INFORMATION DEBUG_HEAP_INFORMATION
 
typedef struct _DEBUG_HEAP_INFORMATIONPDEBUG_HEAP_INFORMATION
 
typedef struct _DEBUG_LOCK_INFORMATION DEBUG_LOCK_INFORMATION
 
typedef struct _DEBUG_LOCK_INFORMATIONPDEBUG_LOCK_INFORMATION
 
typedef struct _PORT_MESSAGE_HEADER PORT_MESSAGE_HEADER
 
typedef struct _PORT_MESSAGE_HEADERPPORT_MESSAGE_HEADER
 
typedef struct _PORT_MESSAGE_HEADER PORT_MESSAGE
 
typedef struct _PORT_MESSAGE_HEADERPPORT_MESSAGE
 
typedef unsigned short RTL_ATOM
 
typedef unsigned shortPRTL_ATOM
 
typedef enum _ATOM_INFORMATION_CLASS ATOM_INFORMATION_CLASS
 
typedef struct _ATOM_BASIC_INFORMATION ATOM_BASIC_INFORMATION
 
typedef struct _ATOM_BASIC_INFORMATIONPATOM_BASIC_INFORMATION
 
typedef struct _RTL_HANDLE RTL_HANDLE
 
typedef struct _RTL_HANDLE_TABLE RTL_HANDLE_TABLE
 
typedef struct _RTL_ATOM_TABLE_ENTRY RTL_ATOM_TABLE_ENTRY
 
typedef struct _RTL_ATOM_TABLE_ENTRYPRTL_ATOM_TABLE_ENTRY
 
typedef struct _RTL_ATOM_TABLERTL_ATOM_TABLE
 
typedef struct _RTL_ATOM_TABLE ** PRTL_ATOM_TABLE
 
typedef void(CALLBACKPNTAPCFUNC) (ULONG_PTR, ULONG_PTR, ULONG_PTR)
 
typedef void(CALLBACKPRTL_THREAD_START_ROUTINE) (LPVOID)
 
typedef DWORD(CALLBACKPRTL_WORK_ITEM_ROUTINE) (LPVOID)
 
typedef void(NTAPIRTL_WAITORTIMERCALLBACKFUNC) (PVOID, BOOLEAN)
 
typedef NTSTATUS(WINAPIPRTL_QUERY_REGISTRY_ROUTINE) (PCWSTR ValueName, ULONG ValueType, PVOID ValueData, ULONG ValueLength, PVOID Context, PVOID EntryContext)
 
typedef struct _RTL_QUERY_REGISTRY_TABLE RTL_QUERY_REGISTRY_TABLE
 
typedef struct _RTL_QUERY_REGISTRY_TABLEPRTL_QUERY_REGISTRY_TABLE
 
typedef struct _KEY_MULTIPLE_VALUE_INFORMATION KEY_MULTIPLE_VALUE_INFORMATION
 
typedef struct _KEY_MULTIPLE_VALUE_INFORMATIONPKEY_MULTIPLE_VALUE_INFORMATION
 
typedef VOID(CALLBACKPRTL_OVERLAPPED_COMPLETION_ROUTINE) (DWORD, DWORD, LPVOID)
 
typedef VOID(CALLBACKPTIMER_APC_ROUTINE) (PVOID, ULONG, LONG)
 
typedef enum _EVENT_INFORMATION_CLASS EVENT_INFORMATION_CLASS
 
typedef enum _EVENT_INFORMATION_CLASSPEVENT_INFORMATION_CLASS
 
typedef struct _EVENT_BASIC_INFORMATION EVENT_BASIC_INFORMATION
 
typedef struct _EVENT_BASIC_INFORMATIONPEVENT_BASIC_INFORMATION
 
typedef enum _SEMAPHORE_INFORMATION_CLASS SEMAPHORE_INFORMATION_CLASS
 
typedef enum _SEMAPHORE_INFORMATION_CLASSPSEMAPHORE_INFORMATION_CLASS
 
typedef struct _SEMAPHORE_BASIC_INFORMATION SEMAPHORE_BASIC_INFORMATION
 
typedef struct _SEMAPHORE_BASIC_INFORMATIONPSEMAPHORE_BASIC_INFORMATION
 
typedef enum _SECTION_INFORMATION_CLASS SECTION_INFORMATION_CLASS
 
typedef struct _SECTION_BASIC_INFORMATION SECTION_BASIC_INFORMATION
 
typedef struct _SECTION_BASIC_INFORMATIONPSECTION_BASIC_INFORMATION
 
typedef struct _SECTION_IMAGE_INFORMATION SECTION_IMAGE_INFORMATION
 
typedef struct _SECTION_IMAGE_INFORMATIONPSECTION_IMAGE_INFORMATION
 
typedef struct _LPC_SECTION_WRITE LPC_SECTION_WRITE
 
typedef struct _LPC_SECTION_WRITEPLPC_SECTION_WRITE
 
typedef struct _LPC_SECTION_READ LPC_SECTION_READ
 
typedef struct _LPC_SECTION_READPLPC_SECTION_READ
 
typedef struct _LPC_MESSAGE LPC_MESSAGE
 
typedef struct _LPC_MESSAGEPLPC_MESSAGE
 
typedef struct _RTL_USER_PROCESS_INFORMATION RTL_USER_PROCESS_INFORMATION
 
typedef struct _RTL_USER_PROCESS_INFORMATIONPRTL_USER_PROCESS_INFORMATION
 
typedef enum _SHUTDOWN_ACTION SHUTDOWN_ACTION
 
typedef enum _SHUTDOWN_ACTIONPSHUTDOWN_ACTION
 
typedef enum _KPROFILE_SOURCE KPROFILE_SOURCE
 
typedef enum _KPROFILE_SOURCEPKPROFILE_SOURCE
 
typedef struct _DIRECTORY_BASIC_INFORMATION DIRECTORY_BASIC_INFORMATION
 
typedef struct _DIRECTORY_BASIC_INFORMATIONPDIRECTORY_BASIC_INFORMATION
 
typedef struct _INITIAL_TEB INITIAL_TEB
 
typedef struct _INITIAL_TEBPINITIAL_TEB
 
typedef enum _PORT_INFORMATION_CLASS PORT_INFORMATION_CLASS
 
typedef enum _PORT_INFORMATION_CLASSPPORT_INFORMATION_CLASS
 
typedef enum _IO_COMPLETION_INFORMATION_CLASS IO_COMPLETION_INFORMATION_CLASS
 
typedef enum _IO_COMPLETION_INFORMATION_CLASSPIO_COMPLETION_INFORMATION_CLASS
 
typedef struct _FILE_COMPLETION_INFORMATION FILE_COMPLETION_INFORMATION
 
typedef struct _FILE_COMPLETION_INFORMATIONPFILE_COMPLETION_INFORMATION
 
typedef struct _FILE_IO_COMPLETION_INFORMATION FILE_IO_COMPLETION_INFORMATION
 
typedef struct _FILE_IO_COMPLETION_INFORMATIONPFILE_IO_COMPLETION_INFORMATION
 
typedef enum _HARDERROR_RESPONSE_OPTION HARDERROR_RESPONSE_OPTION
 
typedef enum _HARDERROR_RESPONSE_OPTIONPHARDERROR_RESPONSE_OPTION
 
typedef enum _HARDERROR_RESPONSE HARDERROR_RESPONSE
 
typedef enum _HARDERROR_RESPONSEPHARDERROR_RESPONSE
 
typedef enum _SYSDBG_COMMAND SYSDBG_COMMAND
 
typedef enum _SYSDBG_COMMANDPSYSDBG_COMMAND
 
typedef struct _CPTABLEINFO CPTABLEINFO
 
typedef struct _CPTABLEINFOPCPTABLEINFO
 
typedef struct _NLSTABLEINFO NLSTABLEINFO
 
typedef struct _NLSTABLEINFOPNLSTABLEINFO
 
typedef struct _LDR_SERVICE_TAG_RECORD LDR_SERVICE_TAG_RECORD
 
typedef struct _LDR_SERVICE_TAG_RECORDPLDR_SERVICE_TAG_RECORD
 
typedef struct _LDRP_CSLIST LDRP_CSLIST
 
typedef struct _LDRP_CSLISTPLDRP_CSLIST
 
typedef struct _LDR_DEPENDENCY LDR_DEPENDENCY
 
typedef struct _LDR_DEPENDENCYPLDR_DEPENDENCY
 
typedef enum _LDR_DDAG_STATE LDR_DDAG_STATE
 
typedef struct _LDR_DDAG_NODE LDR_DDAG_NODE
 
typedef struct _LDR_DDAG_NODEPLDR_DDAG_NODE
 
typedef enum _LDR_DLL_LOAD_REASON LDR_DLL_LOAD_REASON
 
typedef enum _LDR_DLL_LOAD_REASONPLDR_DLL_LOAD_REASON
 
typedef struct _LDR_DATA_TABLE_ENTRY LDR_DATA_TABLE_ENTRY
 
typedef struct _LDR_DATA_TABLE_ENTRYPLDR_DATA_TABLE_ENTRY
 
typedef struct _LDR_DLL_LOADED_NOTIFICATION_DATA LDR_DLL_LOADED_NOTIFICATION_DATA
 
typedef struct _LDR_DLL_LOADED_NOTIFICATION_DATAPLDR_DLL_LOADED_NOTIFICATION_DATA
 
typedef struct _LDR_DLL_UNLOADED_NOTIFICATION_DATA LDR_DLL_UNLOADED_NOTIFICATION_DATA
 
typedef struct _LDR_DLL_UNLOADED_NOTIFICATION_DATAPLDR_DLL_UNLOADED_NOTIFICATION_DATA
 
typedef union _LDR_DLL_NOTIFICATION_DATA LDR_DLL_NOTIFICATION_DATA
 
typedef union _LDR_DLL_NOTIFICATION_DATAPLDR_DLL_NOTIFICATION_DATA
 
typedef void(CALLBACKPLDR_DLL_NOTIFICATION_FUNCTION) (ULONG, LDR_DLL_NOTIFICATION_DATA *, void *)
 
typedef struct _RTL_PROCESS_MODULE_INFORMATION RTL_PROCESS_MODULE_INFORMATION
 
typedef struct _RTL_PROCESS_MODULE_INFORMATIONPRTL_PROCESS_MODULE_INFORMATION
 
typedef struct _RTL_PROCESS_MODULES RTL_PROCESS_MODULES
 
typedef struct _RTL_PROCESS_MODULESPRTL_PROCESS_MODULES
 
typedef struct _RTL_PROCESS_MODULE_INFORMATION_EX RTL_PROCESS_MODULE_INFORMATION_EX
 
typedef LONG(CALLBACKPRTL_EXCEPTION_FILTER) (PEXCEPTION_POINTERS)
 
typedef void(CALLBACKPTP_IO_CALLBACK) (PTP_CALLBACK_INSTANCE, void *, void *, IO_STATUS_BLOCK *, PTP_IO)
 
typedef enum _PS_ATTRIBUTE_NUM PS_ATTRIBUTE_NUM
 
typedef struct _PS_ATTRIBUTE PS_ATTRIBUTE
 
typedef struct _PS_ATTRIBUTE_LIST PS_ATTRIBUTE_LIST
 
typedef struct _PS_ATTRIBUTE_LISTPPS_ATTRIBUTE_LIST
 
typedef enum _PS_CREATE_STATE PS_CREATE_STATE
 
typedef struct _PS_CREATE_INFO PS_CREATE_INFO
 
typedef struct _PS_CREATE_INFOPPS_CREATE_INFO
 
typedef struct _DBGKM_EXCEPTION DBGKM_EXCEPTION
 
typedef struct _DBGKM_EXCEPTIONPDBGKM_EXCEPTION
 
typedef struct _DBGKM_CREATE_THREAD DBGKM_CREATE_THREAD
 
typedef struct _DBGKM_CREATE_THREADPDBGKM_CREATE_THREAD
 
typedef struct _DBGKM_CREATE_PROCESS DBGKM_CREATE_PROCESS
 
typedef struct _DBGKM_CREATE_PROCESSPDBGKM_CREATE_PROCESS
 
typedef struct _DBGKM_EXIT_THREAD DBGKM_EXIT_THREAD
 
typedef struct _DBGKM_EXIT_THREADPDBGKM_EXIT_THREAD
 
typedef struct _DBGKM_EXIT_PROCESS DBGKM_EXIT_PROCESS
 
typedef struct _DBGKM_EXIT_PROCESSPDBGKM_EXIT_PROCESS
 
typedef struct _DBGKM_LOAD_DLL DBGKM_LOAD_DLL
 
typedef struct _DBGKM_LOAD_DLLPDBGKM_LOAD_DLL
 
typedef struct _DBGKM_UNLOAD_DLL DBGKM_UNLOAD_DLL
 
typedef struct _DBGKM_UNLOAD_DLLPDBGKM_UNLOAD_DLL
 
typedef enum _DBG_STATE DBG_STATE
 
typedef enum _DBG_STATEPDBG_STATE
 
typedef struct _DBGUI_CREATE_THREAD DBGUI_CREATE_THREAD
 
typedef struct _DBGUI_CREATE_THREADPDBGUI_CREATE_THREAD
 
typedef struct _DBGUI_CREATE_PROCESS DBGUI_CREATE_PROCESS
 
typedef struct _DBGUI_CREATE_PROCESSPDBGUI_CREATE_PROCESS
 
typedef struct _DBGUI_WAIT_STATE_CHANGE DBGUI_WAIT_STATE_CHANGE
 
typedef struct _DBGUI_WAIT_STATE_CHANGEPDBGUI_WAIT_STATE_CHANGE
 
typedef enum _DEBUGOBJECTINFOCLASS DEBUGOBJECTINFOCLASS
 
typedef enum _DEBUGOBJECTINFOCLASSPDEBUGOBJECTINFOCLASS
 
typedef struct _WOW64_CPURESERVED WOW64_CPURESERVED
 
typedef struct _WOW64_CPURESERVEDPWOW64_CPURESERVED
 
typedef struct _WOW64_CPU_AREA_INFO WOW64_CPU_AREA_INFO
 
typedef struct _WOW64_CPU_AREA_INFOPWOW64_CPU_AREA_INFO
 
typedef struct _WOW64INFO WOW64INFO
 
typedef struct _API_SET_NAMESPACE API_SET_NAMESPACE
 
typedef struct _API_SET_HASH_ENTRY API_SET_HASH_ENTRY
 
typedef struct _API_SET_NAMESPACE_ENTRY API_SET_NAMESPACE_ENTRY
 
typedef struct _API_SET_VALUE_ENTRY API_SET_VALUE_ENTRY
 
typedef enum _KCONTINUE_TYPE KCONTINUE_TYPE
 
typedef struct _KCONTINUE_ARGUMENT KCONTINUE_ARGUMENT
 
typedef struct _KCONTINUE_ARGUMENTPKCONTINUE_ARGUMENT
 

Enumerations

enum  CROSS_PROCESS_NOTIFICATION {
  CrossProcessPreVirtualAlloc = 0 , CrossProcessPostVirtualAlloc = 1 , CrossProcessPreVirtualFree = 2 , CrossProcessPostVirtualFree = 3 ,
  CrossProcessPreVirtualProtect = 4 , CrossProcessPostVirtualProtect = 5 , CrossProcessFlushCache = 6 , CrossProcessFlushCacheHeavy = 7 ,
  CrossProcessMemoryWrite = 8
}
 
enum  _FILE_INFORMATION_CLASS {
  FileDirectoryInformation = 1 , FileFullDirectoryInformation , FileBothDirectoryInformation , FileBasicInformation ,
  FileStandardInformation , FileInternalInformation , FileEaInformation , FileAccessInformation ,
  FileNameInformation , FileRenameInformation , FileLinkInformation , FileNamesInformation ,
  FileDispositionInformation , FilePositionInformation , FileFullEaInformation , FileModeInformation ,
  FileAlignmentInformation , FileAllInformation , FileAllocationInformation , FileEndOfFileInformation ,
  FileAlternateNameInformation , FileStreamInformation , FilePipeInformation , FilePipeLocalInformation ,
  FilePipeRemoteInformation , FileMailslotQueryInformation , FileMailslotSetInformation , FileCompressionInformation ,
  FileObjectIdInformation , FileCompletionInformation , FileMoveClusterInformation , FileQuotaInformation ,
  FileReparsePointInformation , FileNetworkOpenInformation , FileAttributeTagInformation , FileTrackingInformation ,
  FileIdBothDirectoryInformation , FileIdFullDirectoryInformation , FileValidDataLengthInformation , FileShortNameInformation ,
  FileIoCompletionNotificationInformation , FileIoStatusBlockRangeInformation , FileIoPriorityHintInformation , FileSfioReserveInformation ,
  FileSfioVolumeInformation , FileHardLinkInformation , FileProcessIdsUsingFileInformation , FileNormalizedNameInformation ,
  FileNetworkPhysicalNameInformation , FileIdGlobalTxDirectoryInformation , FileMaximumInformation , FileDirectoryInformation = 1 ,
  FileFullDirectoryInformation , FileBothDirectoryInformation , FileBasicInformation , FileStandardInformation ,
  FileInternalInformation , FileEaInformation , FileAccessInformation , FileNameInformation ,
  FileRenameInformation , FileLinkInformation , FileNamesInformation , FileDispositionInformation ,
  FilePositionInformation , FileFullEaInformation , FileModeInformation , FileAlignmentInformation ,
  FileAllInformation , FileAllocationInformation , FileEndOfFileInformation , FileAlternateNameInformation ,
  FileStreamInformation , FilePipeInformation , FilePipeLocalInformation , FilePipeRemoteInformation ,
  FileMailslotQueryInformation , FileMailslotSetInformation , FileCompressionInformation , FileCopyOnWriteInformation ,
  FileCompletionInformation , FileMoveClusterInformation , FileOleClassIdInformation , FileOleStateBitsInformation ,
  FileNetworkOpenInformation , FileObjectIdInformation , FileOleAllInformation , FileOleDirectoryInformation ,
  FileContentIndexInformation , FileInheritContentIndexInformation , FileOleInformation , FileMaximumInformation ,
  FileDirectoryInformation = 1 , FileFullDirectoryInformation , FileBothDirectoryInformation , FileBasicInformation ,
  FileStandardInformation , FileInternalInformation , FileEaInformation , FileAccessInformation ,
  FileNameInformation , FileRenameInformation , FileLinkInformation , FileNamesInformation ,
  FileDispositionInformation , FilePositionInformation , FileFullEaInformation , FileModeInformation ,
  FileAlignmentInformation , FileAllInformation , FileAllocationInformation , FileEndOfFileInformation ,
  FileAlternateNameInformation , FileStreamInformation , FilePipeInformation , FilePipeLocalInformation ,
  FilePipeRemoteInformation , FileMailslotQueryInformation , FileMailslotSetInformation , FileCompressionInformation ,
  FileCopyOnWriteInformation , FileCompletionInformation , FileMoveClusterInformation , FileOleClassIdInformation ,
  FileOleStateBitsInformation , FileNetworkOpenInformation , FileObjectIdInformation , FileOleAllInformation ,
  FileOleDirectoryInformation , FileContentIndexInformation , FileInheritContentIndexInformation , FileOleInformation ,
  FileMaximumInformation , FileDirectoryInformation = 1 , FileDirectoryInformation = 1 , FileFullDirectoryInformation ,
  FileBothDirectoryInformation , FileBasicInformation , FileStandardInformation , FileInternalInformation ,
  FileEaInformation , FileAccessInformation , FileNameInformation , FileRenameInformation ,
  FileLinkInformation , FileNamesInformation , FileDispositionInformation , FilePositionInformation ,
  FileFullEaInformation , FileModeInformation , FileAlignmentInformation , FileAllInformation ,
  FileAllocationInformation , FileEndOfFileInformation , FileAlternateNameInformation , FileStreamInformation ,
  FilePipeInformation , FilePipeLocalInformation , FilePipeRemoteInformation , FileMailslotQueryInformation ,
  FileMailslotSetInformation , FileCompressionInformation , FileObjectIdInformation , FileCompletionInformation ,
  FileMoveClusterInformation , FileQuotaInformation , FileReparsePointInformation , FileNetworkOpenInformation ,
  FileAttributeTagInformation , FileTrackingInformation , FileIdBothDirectoryInformation , FileIdFullDirectoryInformation ,
  FileValidDataLengthInformation , FileShortNameInformation , FileIoCompletionNotificationInformation , FileIoStatusBlockRangeInformation ,
  FileIoPriorityHintInformation , FileSfioReserveInformation , FileSfioVolumeInformation , FileHardLinkInformation ,
  FileProcessIdsUsingFileInformation , FileNormalizedNameInformation , FileNetworkPhysicalNameInformation , FileIdGlobalTxDirectoryInformation ,
  FileIsRemoteDeviceInformation , FileAttributeCacheInformation , FileNumaNodeInformation , FileStandardLinkInformation ,
  FileRemoteProtocolInformation , FileRenameInformationBypassAccessCheck , FileLinkInformationBypassAccessCheck , FileVolumeNameInformation ,
  FileIdInformation , FileIdExtdDirectoryInformation , FileReplaceCompletionInformation , FileHardLinkFullIdInformation ,
  FileIdExtdBothDirectoryInformation , FileDispositionInformationEx , FileRenameInformationEx , FileRenameInformationExBypassAccessCheck ,
  FileDesiredStorageClassInformation , FileStatInformation , FileMemoryPartitionInformation , FileStatLxInformation ,
  FileCaseSensitiveInformation , FileLinkInformationEx , FileLinkInformationExBypassAccessCheck , FileStorageReserveIdInformation ,
  FileCaseSensitiveInformationForceAccessCheck , FileKnownFolderInformation , FileMaximumInformation , FileDirectoryInformation = 1 ,
  FileFullDirectoryInformation , FileBothDirectoryInformation , FileBasicInformation , FileStandardInformation ,
  FileInternalInformation , FileEaInformation , FileAccessInformation , FileNameInformation ,
  FileRenameInformation , FileLinkInformation , FileNamesInformation , FileDispositionInformation ,
  FilePositionInformation , FileFullEaInformation , FileModeInformation , FileAlignmentInformation ,
  FileAllInformation , FileAllocationInformation , FileEndOfFileInformation , FileAlternateNameInformation ,
  FileStreamInformation , FilePipeInformation , FilePipeLocalInformation , FilePipeRemoteInformation ,
  FileMailslotQueryInformation , FileMailslotSetInformation , FileCompressionInformation , FileObjectIdInformation ,
  FileCompletionInformation , FileMoveClusterInformation , FileQuotaInformation , FileReparsePointInformation ,
  FileNetworkOpenInformation , FileAttributeTagInformation , FileTrackingInformation , FileIdBothDirectoryInformation ,
  FileIdFullDirectoryInformation , FileValidDataLengthInformation , FileShortNameInformation , FileIoCompletionNotificationInformation ,
  FileIoStatusBlockRangeInformation , FileIoPriorityHintInformation , FileSfioReserveInformation , FileSfioVolumeInformation ,
  FileHardLinkInformation , FileProcessIdsUsingFileInformation , FileNormalizedNameInformation , FileNetworkPhysicalNameInformation ,
  FileIdGlobalTxDirectoryInformation , FileIsRemoteDeviceInformation , FileAttributeCacheInformation , FileNumaNodeInformation ,
  FileStandardLinkInformation , FileRemoteProtocolInformation , FileMaximumInformation
}
 
enum  _FSINFOCLASS {
  FileFsVolumeInformation = 1 , FileFsLabelInformation , FileFsSizeInformation , FileFsDeviceInformation ,
  FileFsAttributeInformation , FileFsControlInformation , FileFsFullSizeInformation , FileFsObjectIdInformation ,
  FileFsDriverPathInformation , FileFsVolumeFlagsInformation , FileFsMaximumInformation , FileFsVolumeInformation = 1 ,
  FileFsLabelInformation , FileFsSizeInformation , FileFsDeviceInformation , FileFsAttributeInformation ,
  FileFsControlInformation , FileFsQuotaQueryInformation , FileFsQuotaSetInformation , FileFsMaximumInformation ,
  FileFsVolumeInformation = 1 , FileFsLabelInformation , FileFsSizeInformation , FileFsDeviceInformation ,
  FileFsAttributeInformation , FileFsControlInformation , FileFsFullSizeInformation , FileFsObjectIdInformation ,
  FileFsDriverPathInformation , FileFsMaximumInformation , FileFsVolumeInformation = 1 , FileFsLabelInformation ,
  FileFsSizeInformation , FileFsDeviceInformation , FileFsAttributeInformation , FileFsControlInformation ,
  FileFsFullSizeInformation , FileFsObjectIdInformation , FileFsDriverPathInformation , FileFsVolumeFlagsInformation ,
  FileFsSectorSizeInformation , FileFsDataCopyInformation , FileFsMetadataSizeInformation , FileFsFullSizeInformationEx ,
  FileFsMaximumInformation , FileFsVolumeInformation = 1 , FileFsLabelInformation , FileFsSizeInformation ,
  FileFsDeviceInformation , FileFsAttributeInformation , FileFsControlInformation , FileFsFullSizeInformation ,
  FileFsObjectIdInformation , FileFsDriverPathInformation , FileFsVolumeFlagsInformation , FileFsMaximumInformation
}
 
enum  _KEY_INFORMATION_CLASS {
  KeyBasicInformation , KeyNodeInformation , KeyFullInformation , KeyBasicInformation ,
  KeyNodeInformation , KeyFullInformation , KeyNameInformation , KeyCachedInformation ,
  KeyFlagsInformation , KeyVirtualizationInformation , KeyHandleTagsInformation , KeyTrustInformation ,
  KeyLayerInformation , MaxKeyInfoClass , KeyBasicInformation , KeyNodeInformation ,
  KeyFullInformation , KeyNameInformation , KeyCachedInformation , KeyFlagsInformation ,
  KeyVirtualizationInformation , KeyHandleTagsInformation , MaxKeyInfoClass
}
 
enum  _KEY_VALUE_INFORMATION_CLASS {
  KeyValueBasicInformation , KeyValueFullInformation , KeyValuePartialInformation , KeyValueBasicInformation ,
  KeyValueFullInformation , KeyValuePartialInformation , KeyValueFullInformationAlign64 , KeyValuePartialInformationAlign64 ,
  KeyValueBasicInformation , KeyValueFullInformation , KeyValuePartialInformation , KeyValueFullInformationAlign64 ,
  KeyValuePartialInformationAlign64 , KeyValueLayerInformation , KeyValueBasicInformation , KeyValueFullInformation ,
  KeyValuePartialInformation , KeyValueFullInformationAlign64 , KeyValuePartialInformationAlign64
}
 
enum  _OBJECT_INFORMATION_CLASS {
  ObjectBasicInformation , ObjectNameInformation , ObjectTypeInformation , ObjectAllTypesInformation ,
  ObjectHandleInformation , ObjectBasicInformation = 0 , ObjectTypeInformation = 2 , ObjectBasicInformation ,
  ObjectNameInformation , ObjectTypeInformation , ObjectTypesInformation , ObjectHandleFlagInformation ,
  ObjectSessionInformation , ObjectSessionObjectInformation
}
 
enum  _PROCESSINFOCLASS {
  ProcessBasicInformation = 0 , ProcessDebugPort = 7 , ProcessWow64Information = 26 , ProcessImageFileName = 27 ,
  ProcessBreakOnTermination = 29 , ProcessBasicInformation = 0 , ProcessDebugPort = 7 , ProcessWow64Information = 26 ,
  ProcessImageFileName = 27 , ProcessBreakOnTermination = 29 , ProcessBasicInformation = 0 , ProcessQuotaLimits = 1 ,
  ProcessIoCounters = 2 , ProcessVmCounters = 3 , ProcessTimes = 4 , ProcessBasePriority = 5 ,
  ProcessRaisePriority = 6 , ProcessDebugPort = 7 , ProcessExceptionPort = 8 , ProcessAccessToken = 9 ,
  ProcessLdtInformation = 10 , ProcessLdtSize = 11 , ProcessDefaultHardErrorMode = 12 , ProcessIoPortHandlers = 13 ,
  ProcessPooledUsageAndLimits = 14 , ProcessWorkingSetWatch = 15 , ProcessUserModeIOPL = 16 , ProcessEnableAlignmentFaultFixup = 17 ,
  ProcessPriorityClass = 18 , ProcessWx86Information = 19 , ProcessHandleCount = 20 , ProcessAffinityMask = 21 ,
  ProcessPriorityBoost = 22 , ProcessDeviceMap = 23 , ProcessSessionInformation = 24 , ProcessForegroundInformation = 25 ,
  ProcessWow64Information = 26 , ProcessImageFileName = 27 , ProcessLUIDDeviceMapsEnabled = 28 , ProcessBreakOnTermination = 29 ,
  ProcessDebugObjectHandle = 30 , ProcessDebugFlags = 31 , ProcessHandleTracing = 32 , ProcessIoPriority = 33 ,
  ProcessExecuteFlags = 34 , ProcessTlsInformation = 35 , ProcessCookie = 36 , ProcessImageInformation = 37 ,
  ProcessCycleTime = 38 , ProcessPagePriority = 39 , ProcessInstrumentationCallback = 40 , ProcessThreadStackAllocation = 41 ,
  ProcessWorkingSetWatchEx = 42 , ProcessImageFileNameWin32 = 43 , ProcessImageFileMapping = 44 , ProcessAffinityUpdateMode = 45 ,
  ProcessMemoryAllocationMode = 46 , ProcessGroupInformation = 47 , ProcessTokenVirtualizationEnabled = 48 , ProcessConsoleHostProcess = 49 ,
  ProcessWindowInformation = 50 , ProcessHandleInformation = 51 , ProcessMitigationPolicy = 52 , ProcessDynamicFunctionTableInformation = 53 ,
  ProcessHandleCheckingMode = 54 , ProcessKeepAliveCount = 55 , ProcessRevokeFileHandles = 56 , ProcessWorkingSetControl = 57 ,
  ProcessHandleTable = 58 , ProcessCheckStackExtentsMode = 59 , ProcessCommandLineInformation = 60 , ProcessProtectionInformation = 61 ,
  ProcessMemoryExhaustion = 62 , ProcessFaultInformation = 63 , ProcessTelemetryIdInformation = 64 , ProcessCommitReleaseInformation = 65 ,
  ProcessDefaultCpuSetsInformation = 66 , ProcessAllowedCpuSetsInformation = 67 , ProcessSubsystemProcess = 68 , ProcessJobMemoryInformation = 69 ,
  ProcessInPrivate = 70 , ProcessRaiseUMExceptionOnInvalidHandleClose = 71 , ProcessIumChallengeResponse = 72 , ProcessChildProcessInformation = 73 ,
  ProcessHighGraphicsPriorityInformation = 74 , ProcessSubsystemInformation = 75 , ProcessEnergyValues = 76 , ProcessPowerThrottlingState = 77 ,
  ProcessReserved3Information = 78 , ProcessWin32kSyscallFilterInformation = 79 , ProcessDisableSystemAllowedCpuSets = 80 , ProcessWakeInformation = 81 ,
  ProcessEnergyTrackingState = 82 , ProcessManageWritesToExecutableMemory = 83 , ProcessCaptureTrustletLiveDump = 84 , ProcessTelemetryCoverage = 85 ,
  ProcessEnclaveInformation = 86 , ProcessEnableReadWriteVmLogging = 87 , ProcessUptimeInformation = 88 , ProcessImageSection = 89 ,
  ProcessDebugAuthInformation = 90 , ProcessSystemResourceManagement = 91 , ProcessSequenceNumber = 92 , ProcessLoaderDetour = 93 ,
  ProcessSecurityDomainInformation = 94 , ProcessCombineSecurityDomainsInformation = 95 , ProcessEnableLogging = 96 , ProcessLeapSecondInformation = 97 ,
  ProcessFiberShadowStackAllocation = 98 , ProcessFreeFiberShadowStackAllocation = 99 , ProcessAltSystemCallInformation = 100 , ProcessDynamicEHContinuationTargets = 101 ,
  ProcessDynamicEnforcedCetCompatibleRanges = 102 , ProcessCreateStateChange = 103 , ProcessApplyStateChange = 104 , ProcessEnableOptionalXStateFeatures = 105 ,
  ProcessAltPrefetchParam = 106 , ProcessAssignCpuPartitions = 107 , ProcessPriorityClassEx = 108 , ProcessMembershipInformation = 109 ,
  ProcessEffectiveIoPriority = 110 , ProcessEffectivePagePriority = 111 , MaxProcessInfoClass , ProcessBasicInformation ,
  ProcessQuotaLimits , ProcessIoCounters , ProcessVmCounters , ProcessTimes ,
  ProcessBasePriority , ProcessRaisePriority , ProcessDebugPort , ProcessExceptionPort ,
  ProcessAccessToken , ProcessLdtInformation , ProcessLdtSize , ProcessDefaultHardErrorMode ,
  ProcessIoPortHandlers , ProcessPooledUsageAndLimits , ProcessWorkingSetWatch , ProcessUserModeIOPL ,
  ProcessEnableAlignmentFaultFixup , ProcessPriorityClass , ProcessWx86Information , ProcessHandleCount ,
  ProcessAffinityMask , ProcessPriorityBoost , ProcessDeviceMap , ProcessSessionInformation ,
  ProcessForegroundInformation , ProcessWow64Information , ProcessImageFileName , ProcessLUIDDeviceMapsEnabled ,
  ProcessBreakOnTermination , ProcessDebugObjectHandle , ProcessDebugFlags , ProcessHandleTracing ,
  ProcessIoPriority , ProcessExecuteFlags , ProcessTlsInformation , ProcessCookie ,
  ProcessImageInformation , ProcessCycleTime , ProcessPagePriority , ProcessInstrumentationCallback ,
  ProcessThreadStackAllocation , ProcessWorkingSetWatchEx , ProcessImageFileNameWin32 , ProcessImageFileMapping ,
  ProcessAffinityUpdateMode , ProcessMemoryAllocationMode , ProcessGroupInformation , ProcessTokenVirtualizationEnabled ,
  ProcessConsoleHostProcess , ProcessWindowInformation , MaxProcessInfoClass
}
 
enum  _SECTION_INHERIT {
  ViewShare = 1 , ViewUnmap = 2 , ViewShare = 1 , ViewUnmap = 2 ,
  ViewShare = 1 , ViewUnmap = 2
}
 
enum  _SYSTEM_INFORMATION_CLASS {
  SystemBasicInformation , SystemProcessorInformation , SystemPerformanceInformation , SystemTimeOfDayInformation ,
  SystemPathInformation , SystemProcessInformation , SystemCallCountInformation , SystemDeviceInformation ,
  SystemProcessorPerformanceInformation , SystemFlagsInformation , SystemCallTimeInformation , SystemModuleInformation ,
  SystemLocksInformation , SystemStackTraceInformation , SystemPagedPoolInformation , SystemNonPagedPoolInformation ,
  SystemHandleInformation , SystemObjectInformation , SystemPageFileInformation , SystemVdmInstemulInformation ,
  SystemVdmBopInformation , SystemFileCacheInformation , SystemPoolTagInformation , SystemInterruptInformation ,
  SystemDpcBehaviorInformation , SystemFullMemoryInformation , SystemLoadGdiDriverInformation , SystemUnloadGdiDriverInformation ,
  SystemTimeAdjustmentInformation , SystemSummaryMemoryInformation , SystemNextEventIdInformation , SystemEventIdsInformation ,
  SystemCrashDumpInformation , SystemExceptionInformation , SystemCrashDumpStateInformation , SystemKernelDebuggerInformation ,
  SystemContextSwitchInformation , SystemRegistryQuotaInformation , SystemExtendServiceTableInformation , SystemPrioritySeperation ,
  SystemPlugPlayBusInformation , SystemDockInformation , SystemPowerInformation , SystemProcessorSpeedInformation ,
  SystemCurrentTimeZoneInformation , SystemLookasideInformation , SystemBasicInformation , SystemProcessorInformation ,
  SystemPerformanceInformation , SystemTimeOfDayInformation , SystemPathInformation , SystemProcessInformation ,
  SystemCallCountInformation , SystemDeviceInformation , SystemProcessorPerformanceInformation , SystemFlagsInformation ,
  SystemCallTimeInformation , SystemModuleInformation , SystemLocksInformation , SystemStackTraceInformation ,
  SystemPagedPoolInformation , SystemNonPagedPoolInformation , SystemHandleInformation , SystemObjectInformation ,
  SystemPageFileInformation , SystemVdmInstemulInformation , SystemVdmBopInformation , SystemFileCacheInformation ,
  SystemPoolTagInformation , SystemInterruptInformation , SystemDpcBehaviorInformation , SystemFullMemoryInformation ,
  SystemLoadGdiDriverInformation , SystemUnloadGdiDriverInformation , SystemTimeAdjustmentInformation , SystemSummaryMemoryInformation ,
  SystemNextEventIdInformation , SystemEventIdsInformation , SystemCrashDumpInformation , SystemExceptionInformation ,
  SystemCrashDumpStateInformation , SystemKernelDebuggerInformation , SystemContextSwitchInformation , SystemRegistryQuotaInformation ,
  SystemExtendServiceTableInformation , SystemPrioritySeperation , SystemPlugPlayBusInformation , SystemDockInformation ,
  SystemPowerInformation , SystemProcessorSpeedInformation , SystemCurrentTimeZoneInformation , SystemLookasideInformation ,
  SystemBasicInformation = 0 , SystemProcessorInformation = 1 , SystemPerformanceInformation = 2 , SystemTimeOfDayInformation = 3 ,
  SystemPathInformation = 4 , SystemProcessInformation = 5 , SystemCallCountInformation = 6 , SystemDeviceInformation = 7 ,
  SystemProcessorPerformanceInformation = 8 , SystemFlagsInformation = 9 , SystemCallTimeInformation = 10 , SystemModuleInformation = 11 ,
  SystemLocksInformation = 12 , SystemStackTraceInformation = 13 , SystemPagedPoolInformation = 14 , SystemNonPagedPoolInformation = 15 ,
  SystemHandleInformation = 16 , SystemObjectInformation = 17 , SystemPageFileInformation = 18 , SystemVdmInstemulInformation = 19 ,
  SystemVdmBopInformation = 20 , SystemFileCacheInformation = 21 , SystemPoolTagInformation = 22 , SystemInterruptInformation = 23 ,
  SystemDpcBehaviorInformation = 24 , SystemFullMemoryInformation = 25 , SystemLoadGdiDriverInformation = 26 , SystemUnloadGdiDriverInformation = 27 ,
  SystemTimeAdjustmentInformation = 28 , SystemSummaryMemoryInformation = 29 , SystemMirrorMemoryInformation = 30 , SystemPerformanceTraceInformation = 31 ,
  SystemObsolete0 = 32 , SystemExceptionInformation = 33 , SystemCrashDumpStateInformation = 34 , SystemKernelDebuggerInformation = 35 ,
  SystemContextSwitchInformation = 36 , SystemRegistryQuotaInformation = 37 , SystemExtendServiceTableInformation = 38 , SystemPrioritySeperation = 39 ,
  SystemVerifierAddDriverInformation = 40 , SystemVerifierRemoveDriverInformation = 41 , SystemProcessorIdleInformation = 42 , SystemLegacyDriverInformation = 43 ,
  SystemCurrentTimeZoneInformation = 44 , SystemLookasideInformation = 45 , SystemTimeSlipNotification = 46 , SystemSessionCreate = 47 ,
  SystemSessionDetach = 48 , SystemSessionInformation = 49 , SystemRangeStartInformation = 50 , SystemVerifierInformation = 51 ,
  SystemVerifierThunkExtend = 52 , SystemSessionProcessInformation = 53 , SystemLoadGdiDriverInSystemSpace = 54 , SystemNumaProcessorMap = 55 ,
  SystemPrefetcherInformation = 56 , SystemExtendedProcessInformation = 57 , SystemRecommendedSharedDataAlignment = 58 , SystemComPlusPackage = 59 ,
  SystemNumaAvailableMemory = 60 , SystemProcessorPowerInformation = 61 , SystemEmulationBasicInformation = 62 , SystemEmulationProcessorInformation = 63 ,
  SystemExtendedHandleInformation = 64 , SystemLostDelayedWriteInformation = 65 , SystemBigPoolInformation = 66 , SystemSessionPoolTagInformation = 67 ,
  SystemSessionMappedViewInformation = 68 , SystemHotpatchInformation = 69 , SystemObjectSecurityMode = 70 , SystemWatchdogTimerHandler = 71 ,
  SystemWatchdogTimerInformation = 72 , SystemLogicalProcessorInformation = 73 , SystemWow64SharedInformationObsolete = 74 , SystemRegisterFirmwareTableInformationHandler = 75 ,
  SystemFirmwareTableInformation = 76 , SystemModuleInformationEx = 77 , SystemVerifierTriageInformation = 78 , SystemSuperfetchInformation = 79 ,
  SystemMemoryListInformation = 80 , SystemFileCacheInformationEx = 81 , SystemThreadPriorityClientIdInformation = 82 , SystemProcessorIdleCycleTimeInformation = 83 ,
  SystemVerifierCancellationInformation = 84 , SystemProcessorPowerInformationEx = 85 , SystemRefTraceInformation = 86 , SystemSpecialPoolInformation = 87 ,
  SystemProcessIdInformation = 88 , SystemErrorPortInformation = 89 , SystemBootEnvironmentInformation = 90 , SystemHypervisorInformation = 91 ,
  SystemVerifierInformationEx = 92 , SystemTimeZoneInformation = 93 , SystemImageFileExecutionOptionsInformation = 94 , SystemCoverageInformation = 95 ,
  SystemPrefetchPatchInformation = 96 , SystemVerifierFaultsInformation = 97 , SystemSystemPartitionInformation = 98 , SystemSystemDiskInformation = 99 ,
  SystemProcessorPerformanceDistribution = 100 , SystemNumaProximityNodeInformation = 101 , SystemDynamicTimeZoneInformation = 102 , SystemCodeIntegrityInformation = 103 ,
  SystemProcessorMicrocodeUpdateInformation = 104 , SystemProcessorBrandString = 105 , SystemVirtualAddressInformation = 106 , SystemLogicalProcessorAndGroupInformation = 107 ,
  SystemProcessorCycleTimeInformation = 108 , SystemStoreInformation = 109 , SystemRegistryAppendString = 110 , SystemAitSamplingValue = 111 ,
  SystemVhdBootInformation = 112 , SystemCpuQuotaInformation = 113 , SystemNativeBasicInformation = 114 , SystemErrorPortTimeouts = 115 ,
  SystemLowPriorityIoInformation = 116 , SystemBootEntropyInformation = 117 , SystemVerifierCountersInformation = 118 , SystemPagedPoolInformationEx = 119 ,
  SystemSystemPtesInformationEx = 120 , SystemNodeDistanceInformation = 121 , SystemAcpiAuditInformation = 122 , SystemBasicPerformanceInformation = 123 ,
  SystemQueryPerformanceCounterInformation = 124 , SystemSessionBigPoolInformation = 125 , SystemBootGraphicsInformation = 126 , SystemScrubPhysicalMemoryInformation = 127 ,
  SystemBadPageInformation = 128 , SystemProcessorProfileControlArea = 129 , SystemCombinePhysicalMemoryInformation = 130 , SystemEntropyInterruptTimingInformation = 131 ,
  SystemConsoleInformation = 132 , SystemPlatformBinaryInformation = 133 , SystemThrottleNotificationInformation = 134 , SystemPolicyInformation = 134 ,
  SystemHypervisorProcessorCountInformation = 135 , SystemDeviceDataInformation = 136 , SystemDeviceDataEnumerationInformation = 137 , SystemMemoryTopologyInformation = 138 ,
  SystemMemoryChannelInformation = 139 , SystemBootLogoInformation = 140 , SystemProcessorPerformanceInformationEx = 141 , SystemSpare0 = 142 ,
  SystemCriticalProcessErrorLogInformation = 142 , SystemSecureBootPolicyInformation = 143 , SystemPageFileInformationEx = 144 , SystemSecureBootInformation = 145 ,
  SystemEntropyInterruptTimingRawInformation = 146 , SystemPortableWorkspaceEfiLauncherInformation = 147 , SystemFullProcessInformation = 148 , SystemKernelDebuggerInformationEx = 149 ,
  SystemBootMetadataInformation = 150 , SystemSoftRebootInformation = 151 , SystemElamCertificateInformation = 152 , SystemOfflineDumpConfigInformation = 153 ,
  SystemProcessorFeaturesInformation = 154 , SystemRegistryReconciliationInformation = 155 , SystemEdidInformation = 156 , SystemManufacturingInformation = 157 ,
  SystemEnergyEstimationConfigInformation = 158 , SystemHypervisorDetailInformation = 159 , SystemProcessorCycleStatsInformation = 160 , SystemVmGenerationCountInformation = 161 ,
  SystemTrustedPlatformModuleInformation = 162 , SystemKernelDebuggerFlags = 163 , SystemCodeIntegrityPolicyInformation = 164 , SystemIsolatedUserModeInformation = 165 ,
  SystemHardwareSecurityTestInterfaceResultsInformation = 166 , SystemSingleModuleInformation = 167 , SystemAllowedCpuSetsInformation = 168 , SystemVsmProtectionInformation = 169 ,
  SystemInterruptCpuSetsInformation = 170 , SystemSecureBootPolicyFullInformation = 171 , SystemCodeIntegrityPolicyFullInformation = 172 , SystemAffinitizedInterruptProcessorInformation = 173 ,
  SystemRootSiloInformation = 174 , SystemCpuSetInformation = 175 , SystemCpuSetTagInformation = 176 , SystemWin32WerStartCallout = 177 ,
  SystemSecureKernelProfileInformation = 178 , SystemCodeIntegrityPlatformManifestInformation = 179 , SystemInterruptSteeringInformation = 180 , SystemSupportedProcessorArchitectures = 181 ,
  SystemMemoryUsageInformation = 182 , SystemCodeIntegrityCertificateInformation = 183 , SystemPhysicalMemoryInformation = 184 , SystemControlFlowTransition = 185 ,
  SystemKernelDebuggingAllowed = 186 , SystemActivityModerationExeState = 187 , SystemActivityModerationUserSettings = 188 , SystemCodeIntegrityPoliciesFullInformation = 189 ,
  SystemCodeIntegrityUnlockInformation = 190 , SystemIntegrityQuotaInformation = 191 , SystemFlushInformation = 192 , SystemProcessorIdleMaskInformation = 193 ,
  SystemSecureDumpEncryptionInformation = 194 , SystemWriteConstraintInformation = 195 , SystemKernelVaShadowInformation = 196 , SystemHypervisorSharedPageInformation = 197 ,
  SystemFirmwareBootPerformanceInformation = 198 , SystemCodeIntegrityVerificationInformation = 199 , SystemFirmwarePartitionInformation = 200 , SystemSpeculationControlInformation = 201 ,
  SystemDmaGuardPolicyInformation = 202 , SystemEnclaveLaunchControlInformation = 203 , SystemWorkloadAllowedCpuSetsInformation = 204 , SystemCodeIntegrityUnlockModeInformation = 205 ,
  SystemLeapSecondInformation = 206 , SystemFlags2Information = 207 , SystemSecurityModelInformation = 208 , SystemCodeIntegritySyntheticCacheInformation = 209 ,
  SystemFeatureConfigurationInformation = 210 , SystemFeatureConfigurationSectionInformation = 211 , SystemFeatureUsageSubscriptionInformation = 212 , SystemSecureSpeculationControlInformation = 213 ,
  SystemSpacesBootInformation = 214 , SystemFwRamdiskInformation = 215 , SystemWheaIpmiHardwareInformation = 216 , SystemDifSetRuleClassInformation = 217 ,
  SystemDifClearRuleClassInformation = 218 , SystemDifApplyPluginVerificationOnDriver = 219 , SystemDifRemovePluginVerificationOnDriver = 220 , SystemShadowStackInformation = 221 ,
  SystemBuildVersionInformation = 222 , SystemPoolLimitInformation = 223 , SystemCodeIntegrityAddDynamicStore = 224 , SystemCodeIntegrityClearDynamicStores = 225 ,
  SystemDifPoolTrackingInformation = 226 , SystemPoolZeroingInformation = 227 , SystemDpcWatchdogInformation = 228 , SystemDpcWatchdogInformation2 = 229 ,
  SystemSupportedProcessorArchitectures2 = 230 , SystemSingleProcessorRelationshipInformation = 231 , SystemXfgCheckFailureInformation = 232 , SystemIommuStateInformation = 233 ,
  SystemHypervisorMinrootInformation = 234 , SystemHypervisorBootPagesInformation = 235 , SystemPointerAuthInformation = 236 , SystemSecureKernelDebuggerInformation = 237 ,
  SystemOriginalImageFeatureInformation = 238 , SystemMemoryNumaInformation = 239 , SystemMemoryNumaPerformanceInformation = 240 , SystemCodeIntegritySignedPoliciesFullInformation = 241 ,
  SystemSecureSecretsInformation = 242 , SystemTrustedAppsRuntimeInformation = 243 , SystemBadPageInformationEx = 244 , SystemResourceDeadlockTimeout = 245 ,
  SystemBreakOnContextUnwindFailureInformation = 246 , SystemOslRamdiskInformation = 247 , MaxSystemInfoClass , SystemBasicInformation = 0 ,
  SystemPerformanceInformation = 2 , SystemTimeOfDayInformation = 3 , SystemProcessInformation = 5 , SystemProcessorPerformanceInformation = 8 ,
  SystemInterruptInformation = 23 , SystemExceptionInformation = 33 , SystemRegistryQuotaInformation = 37 , SystemLookasideInformation = 45 ,
  SystemPolicyInformation = 134 , SystemBasicInformation = 0 , SystemCpuInformation = 1 , SystemPerformanceInformation = 2 ,
  SystemTimeOfDayInformation = 3 , SystemPathInformation = 4 , SystemProcessInformation = 5 , SystemCallCountInformation = 6 ,
  SystemDeviceInformation = 7 , SystemProcessorPerformanceInformation = 8 , SystemFlagsInformation = 9 , SystemCallTimeInformation = 10 ,
  SystemModuleInformation = 11 , SystemLocksInformation = 12 , SystemStackTraceInformation = 13 , SystemPagedPoolInformation = 14 ,
  SystemNonPagedPoolInformation = 15 , SystemHandleInformation = 16 , SystemObjectInformation = 17 , SystemPageFileInformation = 18 ,
  SystemVdmInstemulInformation = 19 , SystemVdmBopInformation = 20 , SystemFileCacheInformation = 21 , SystemPoolTagInformation = 22 ,
  SystemInterruptInformation = 23 , SystemDpcBehaviorInformation = 24 , SystemFullMemoryInformation = 25 , SystemNotImplemented6 = 25 ,
  SystemLoadGdiDriverInformation = 26 , SystemUnloadGdiDriverInformation = 27 , SystemTimeAdjustmentInformation = 28 , SystemTimeAdjustment = 28 ,
  SystemSummaryMemoryInformation = 29 , SystemMirrorMemoryInformation = 30 , SystemPerformanceTraceInformation = 31 , SystemObsolete0 = 32 ,
  SystemExceptionInformation = 33 , SystemCrashDumpStateInformation = 34 , SystemKernelDebuggerInformation = 35 , SystemContextSwitchInformation = 36 ,
  SystemRegistryQuotaInformation = 37 , SystemExtendServiceTableInformation = 38 , SystemPrioritySeparation = 39 , SystemVerifierAddDriverInformation = 40 ,
  SystemVerifierRemoveDriverInformation = 41 , SystemProcessorIdleInformation = 42 , SystemLegacyDriverInformation = 43 , SystemCurrentTimeZoneInformation = 44 ,
  SystemLookasideInformation = 45 , SystemTimeSlipNotification = 46 , SystemSessionCreate = 47 , SystemSessionDetach = 48 ,
  SystemSessionInformation = 49 , SystemRangeStartInformation = 50 , SystemVerifierInformation = 51 , SystemVerifierThunkExtend = 52 ,
  SystemSessionProcessesInformation = 53 , SystemLoadGdiDriverInSystemSpace = 54 , SystemNumaProcessorMap = 55 , SystemPrefetcherInformation = 56 ,
  SystemExtendedProcessInformation = 57 , SystemRecommendedSharedDataAlignment = 58 , SystemComPlusPackage = 59 , SystemNumaAvailableMemory = 60 ,
  SystemProcessorPowerInformation = 61 , SystemEmulationBasicInformation = 62 , SystemEmulationProcessorInformation = 63 , SystemExtendedHandleInformation = 64 ,
  SystemLostDelayedWriteInformation = 65 , SystemBigPoolInformation = 66 , SystemSessionPoolTagInformation = 67 , SystemSessionMappedViewInformation = 68 ,
  SystemHotpatchInformation = 69 , SystemObjectSecurityMode = 70 , SystemWatchdogTimerHandler = 71 , SystemWatchdogTimerInformation = 72 ,
  SystemLogicalProcessorInformation = 73 , SystemWow64SharedInformationObsolete = 74 , SystemRegisterFirmwareTableInformationHandler = 75 , SystemFirmwareTableInformation = 76 ,
  SystemModuleInformationEx = 77 , SystemVerifierTriageInformation = 78 , SystemSuperfetchInformation = 79 , SystemMemoryListInformation = 80 ,
  SystemFileCacheInformationEx = 81 , SystemThreadPriorityClientIdInformation = 82 , SystemProcessorIdleCycleTimeInformation = 83 , SystemVerifierCancellationInformation = 84 ,
  SystemProcessorPowerInformationEx = 85 , SystemRefTraceInformation = 86 , SystemSpecialPoolInformation = 87 , SystemProcessIdInformation = 88 ,
  SystemErrorPortInformation = 89 , SystemBootEnvironmentInformation = 90 , SystemHypervisorInformation = 91 , SystemVerifierInformationEx = 92 ,
  SystemTimeZoneInformation = 93 , SystemImageFileExecutionOptionsInformation = 94 , SystemCoverageInformation = 95 , SystemPrefetchPatchInformation = 96 ,
  SystemVerifierFaultsInformation = 97 , SystemSystemPartitionInformation = 98 , SystemSystemDiskInformation = 99 , SystemProcessorPerformanceDistribution = 100 ,
  SystemNumaProximityNodeInformation = 101 , SystemDynamicTimeZoneInformation = 102 , SystemCodeIntegrityInformation = 103 , SystemProcessorMicrocodeUpdateInformation = 104 ,
  SystemProcessorBrandString = 105 , SystemVirtualAddressInformation = 106 , SystemLogicalProcessorInformationEx = 107 , SystemProcessorCycleTimeInformation = 108 ,
  SystemStoreInformation = 109 , SystemRegistryAppendString = 110 , SystemAitSamplingValue = 111 , SystemVhdBootInformation = 112 ,
  SystemCpuQuotaInformation = 113 , SystemNativeBasicInformation = 114 , SystemErrorPortTimeouts = 115 , SystemLowPriorityIoInformation = 116 ,
  SystemTpmBootEntropyInformation = 117 , SystemVerifierCountersInformation = 118 , SystemPagedPoolInformationEx = 119 , SystemSystemPtesInformationEx = 120 ,
  SystemNodeDistanceInformation = 121 , SystemAcpiAuditInformation = 122 , SystemBasicPerformanceInformation = 123 , SystemQueryPerformanceCounterInformation = 124 ,
  SystemSessionBigPoolInformation = 125 , SystemBootGraphicsInformation = 126 , SystemScrubPhysicalMemoryInformation = 127 , SystemBadPageInformation = 128 ,
  SystemProcessorProfileControlArea = 129 , SystemCombinePhysicalMemoryInformation = 130 , SystemEntropyInterruptTimingInformation = 131 , SystemConsoleInformation = 132 ,
  SystemPlatformBinaryInformation = 133 , SystemPolicyInformation = 134 , SystemHypervisorProcessorCountInformation = 135 , SystemDeviceDataInformation = 136 ,
  SystemDeviceDataEnumerationInformation = 137 , SystemMemoryTopologyInformation = 138 , SystemMemoryChannelInformation = 139 , SystemBootLogoInformation = 140 ,
  SystemProcessorPerformanceInformationEx = 141 , SystemCriticalProcessErrorLogInformation = 142 , SystemSecureBootPolicyInformation = 143 , SystemPageFileInformationEx = 144 ,
  SystemSecureBootInformation = 145 , SystemEntropyInterruptTimingRawInformation = 146 , SystemPortableWorkspaceEfiLauncherInformation = 147 , SystemFullProcessInformation = 148 ,
  SystemKernelDebuggerInformationEx = 149 , SystemBootMetadataInformation = 150 , SystemSoftRebootInformation = 151 , SystemElamCertificateInformation = 152 ,
  SystemOfflineDumpConfigInformation = 153 , SystemProcessorFeaturesInformation = 154 , SystemRegistryReconciliationInformation = 155 , SystemEdidInformation = 156 ,
  SystemManufacturingInformation = 157 , SystemEnergyEstimationConfigInformation = 158 , SystemHypervisorDetailInformation = 159 , SystemProcessorCycleStatsInformation = 160 ,
  SystemVmGenerationCountInformation = 161 , SystemTrustedPlatformModuleInformation = 162 , SystemKernelDebuggerFlags = 163 , SystemCodeIntegrityPolicyInformation = 164 ,
  SystemIsolatedUserModeInformation = 165 , SystemHardwareSecurityTestInterfaceResultsInformation = 166 , SystemSingleModuleInformation = 167 , SystemAllowedCpuSetsInformation = 168 ,
  SystemVsmProtectionInformation = 169 , SystemInterruptCpuSetsInformation = 170 , SystemSecureBootPolicyFullInformation = 171 , SystemCodeIntegrityPolicyFullInformation = 172 ,
  SystemAffinitizedInterruptProcessorInformation = 173 , SystemRootSiloInformation = 174 , SystemCpuSetInformation = 175 , SystemCpuSetTagInformation = 176 ,
  SystemWin32WerStartCallout = 177 , SystemSecureKernelProfileInformation = 178 , SystemCodeIntegrityPlatformManifestInformation = 179 , SystemInterruptSteeringInformation = 180 ,
  SystemSupportedProcessorArchitectures = 181 , SystemMemoryUsageInformation = 182 , SystemCodeIntegrityCertificateInformation = 183 , SystemPhysicalMemoryInformation = 184 ,
  SystemControlFlowTransition = 185 , SystemKernelDebuggingAllowed = 186 , SystemActivityModerationExeState = 187 , SystemActivityModerationUserSettings = 188 ,
  SystemCodeIntegrityPoliciesFullInformation = 189 , SystemCodeIntegrityUnlockInformation = 190 , SystemIntegrityQuotaInformation = 191 , SystemFlushInformation = 192 ,
  SystemProcessorIdleMaskInformation = 193 , SystemSecureDumpEncryptionInformation = 194 , SystemWriteConstraintInformation = 195 , SystemKernelVaShadowInformation = 196 ,
  SystemHypervisorSharedPageInformation = 197 , SystemFirmwareBootPerformanceInformation = 198 , SystemCodeIntegrityVerificationInformation = 199 , SystemFirmwarePartitionInformation = 200 ,
  SystemSpeculationControlInformation = 201 , SystemDmaGuardPolicyInformation = 202 , SystemEnclaveLaunchControlInformation = 203 , SystemWorkloadAllowedCpuSetsInformation = 204 ,
  SystemCodeIntegrityUnlockModeInformation = 205 , SystemLeapSecondInformation = 206 , SystemFlags2Information = 207 , SystemSecurityModelInformation = 208 ,
  SystemCodeIntegritySyntheticCacheInformation = 209 , SystemFeatureConfigurationInformation = 210 , SystemFeatureConfigurationSectionInformation = 211 , SystemFeatureUsageSubscriptionInformation = 212 ,
  SystemSecureSpeculationControlInformation = 213 , SystemSpacesBootInformation = 214 , SystemFwRamdiskInformation = 215 , SystemWheaIpmiHardwareInformation = 216 ,
  SystemDifSetRuleClassInformation = 217 , SystemDifClearRuleClassInformation = 218 , SystemDifApplyPluginVerificationOnDriver = 219 , SystemDifRemovePluginVerificationOnDriver = 220 ,
  SystemShadowStackInformation = 221 , SystemBuildVersionInformation = 222 , SystemPoolLimitInformation = 223 , SystemCodeIntegrityAddDynamicStore = 224 ,
  SystemCodeIntegrityClearDynamicStores = 225 , SystemDifPoolTrackingInformation = 226 , SystemPoolZeroingInformation = 227 , SystemDpcWatchdogInformation = 228 ,
  SystemDpcWatchdogInformation2 = 229 , SystemSupportedProcessorArchitectures2 = 230 , SystemSingleProcessorRelationshipInformation = 231 , SystemXfgCheckFailureInformation = 232 ,
  SystemIommuStateInformation = 233 , SystemHypervisorMinrootInformation = 234 , SystemHypervisorBootPagesInformation = 235 , SystemPointerAuthInformation = 236 ,
  SystemSecureKernelDebuggerInformation = 237 , SystemOriginalImageFeatureInformation = 238
}
 
enum  _THREADINFOCLASS {
  ThreadBasicInformation , ThreadTimes , ThreadPriority , ThreadBasePriority ,
  ThreadAffinityMask , ThreadImpersonationToken , ThreadDescriptorTableEntry , ThreadEnableAlignmentFaultFixup ,
  ThreadEventPair_Reusable , ThreadQuerySetWin32StartAddress , ThreadZeroTlsCell , ThreadPerformanceCount ,
  ThreadAmILastThread , ThreadIdealProcessor , ThreadPriorityBoost , ThreadSetTlsArrayAddress ,
  ThreadIsIoPending , ThreadHideFromDebugger , ThreadBreakOnTermination , ThreadSwitchLegacyState ,
  ThreadIsTerminated , ThreadLastSystemCall , ThreadIoPriority , ThreadCycleTime ,
  ThreadPagePriority , ThreadActualBasePriority , ThreadTebInformation , ThreadCSwitchMon ,
  ThreadCSwitchPmu , ThreadWow64Context , ThreadGroupInformation , ThreadUmsInformation ,
  ThreadCounterProfiling , ThreadIdealProcessorEx , MaxThreadInfoClass , ThreadIsIoPending = 16 ,
  ThreadBasicInformation = 0 , ThreadTimes , ThreadPriority , ThreadBasePriority ,
  ThreadAffinityMask , ThreadImpersonationToken , ThreadDescriptorTableEntry , ThreadEnableAlignmentFaultFixup ,
  ThreadEventPair_Reusable , ThreadQuerySetWin32StartAddress , ThreadZeroTlsCell , ThreadPerformanceCount ,
  ThreadAmILastThread , ThreadIdealProcessor , ThreadPriorityBoost , ThreadSetTlsArrayAddress ,
  ThreadIsIoPending , ThreadHideFromDebugger , ThreadBreakOnTermination , ThreadSwitchLegacyState ,
  ThreadIsTerminated , ThreadLastSystemCall , ThreadIoPriority , ThreadCycleTime ,
  ThreadPagePriority , ThreadActualBasePriority , ThreadTebInformation , ThreadCSwitchMon ,
  ThreadCSwitchPmu , ThreadWow64Context , ThreadGroupInformation , ThreadUmsInformation ,
  ThreadCounterProfiling , ThreadIdealProcessorEx , ThreadCpuAccountingInformation , ThreadSuspendCount ,
  ThreadHeterogeneousCpuPolicy , ThreadContainerId , ThreadNameInformation , ThreadSelectedCpuSets ,
  ThreadSystemThreadInformation , ThreadActualGroupAffinity , ThreadDynamicCodePolicyInfo , ThreadExplicitCaseSensitivity ,
  ThreadWorkOnBehalfTicket , ThreadSubsystemInformation , ThreadDbgkWerReportActive , ThreadAttachContainer ,
  ThreadManageWritesToExecutableMemory , ThreadPowerThrottlingState , ThreadWorkloadClass , ThreadCreateStateChange ,
  ThreadApplyStateChange , ThreadStrongerBadHandleChecks , ThreadEffectiveIoPriority , ThreadEffectivePagePriority ,
  MaxThreadInfoClass , ThreadBasicInformation , ThreadTimes , ThreadPriority ,
  ThreadBasePriority , ThreadAffinityMask , ThreadImpersonationToken , ThreadDescriptorTableEntry ,
  ThreadEnableAlignmentFaultFixup , ThreadEventPair_Reusable , ThreadQuerySetWin32StartAddress , ThreadZeroTlsCell ,
  ThreadPerformanceCount , ThreadAmILastThread , ThreadIdealProcessor , ThreadPriorityBoost ,
  ThreadSetTlsArrayAddress , ThreadIsIoPending , ThreadHideFromDebugger , ThreadBreakOnTermination ,
  ThreadSwitchLegacyState , ThreadIsTerminated , ThreadLastSystemCall , ThreadIoPriority ,
  ThreadCycleTime , ThreadPagePriority , ThreadActualBasePriority , ThreadTebInformation ,
  ThreadCSwitchMon , ThreadCSwitchPmu , ThreadWow64Context , ThreadGroupInformation ,
  ThreadUmsInformation , ThreadCounterProfiling , ThreadIdealProcessorEx , ThreadCpuAccountingInformation ,
  ThreadSuspendCount , ThreadHeterogeneousCpuPolicy , ThreadContainerId , ThreadNameInformation ,
  ThreadSelectedCpuSets , ThreadSystemThreadInformation , ThreadActualGroupAffinity , ThreadDynamicCodePolicyInfo ,
  ThreadExplicitCaseSensitivity , ThreadWorkOnBehalfTicket , ThreadSubsystemInformation , ThreadDbgkWerReportActive ,
  ThreadAttachContainer , ThreadManageWritesToExecutableMemory , ThreadPowerThrottlingState , ThreadWorkloadClass ,
  ThreadCreateStateChange , ThreadApplyStateChange , ThreadStrongerBadHandleChecks , ThreadEffectiveIoPriority ,
  ThreadEffectivePagePriority , MaxThreadInfoClass
}
 
enum  _WINSTATIONINFOCLASS { WinStationInformation = 8 , WinStationInformation = 8 }
 
enum  _MEMORY_INFORMATION_CLASS {
  MemoryBasicInformation , MemoryWorkingSetList , MemorySectionName , MemoryBasicVlmInformation ,
  MemoryWorkingSetExList , MemoryBasicInformation , MemoryWorkingSetInformation , MemoryMappedFilenameInformation ,
  MemoryRegionInformation , MemoryWorkingSetExInformation , MemorySharedCommitInformation , MemoryImageInformation ,
  MemoryRegionInformationEx , MemoryPrivilegedBasicInformation , MemoryEnclaveImageInformation , MemoryBasicInformationCapped ,
  MemoryPhysicalContiguityInformation , MemoryBadInformation , MemoryBadInformationAllProcesses
}
 
enum  _MUTANT_INFORMATION_CLASS { MutantBasicInformation , MutantOwnerInformation , MutantBasicInformation }
 
enum  _TIMER_INFORMATION_CLASS { TimerBasicInformation , TimerBasicInformation = 0 }
 
enum  VIRTUAL_MEMORY_INFORMATION_CLASS {
  VmPrefetchInformation , VmPagePriorityInformation , VmCfgCallTargetInformation , VmPageDirtyStateInformation ,
  VmImageHotPatchInformation , VmPhysicalContiguityInformation , VmVirtualMachinePrepopulateInformation , VmRemoveFromWorkingSetInformation
}
 
enum  DOS_PATHNAME_TYPE {
  INVALID_PATH = 0 , UNC_PATH , ABSOLUTE_DRIVE_PATH , RELATIVE_DRIVE_PATH ,
  ABSOLUTE_PATH , RELATIVE_PATH , DEVICE_PATH , UNC_DOT_PATH
}
 
enum  _MEMORY_RESERVE_OBJECT_TYPE { MemoryReserveObjectTypeUserApc , MemoryReserveObjectTypeIoCompletion }
 
enum  _SYSTEM_FIRMWARE_TABLE_ACTION { SystemFirmwareTable_Enumerate = 0 , SystemFirmwareTable_Get = 1 , SystemFirmwareTable_Enumerate , SystemFirmwareTable_Get }
 
enum  _ATOM_INFORMATION_CLASS { AtomBasicInformation , AtomTableInformation , AtomBasicInformation = 0 , AtomTableInformation = 1 }
 
enum  _EVENT_INFORMATION_CLASS { EventBasicInformation , EventBasicInformation }
 
enum  _SEMAPHORE_INFORMATION_CLASS { SemaphoreBasicInformation , SemaphoreBasicInformation }
 
enum  _SECTION_INFORMATION_CLASS {
  SectionBasicInformation , SectionImageInformation , SectionBasicInformation , SectionImageInformation ,
  SectionRelocationInformation , SectionOriginalBaseInformation , SectionInternalImageInformation
}
 
enum  _SHUTDOWN_ACTION {
  ShutdownNoReboot , ShutdownReboot , ShutdownPowerOff , ShutdownNoReboot ,
  ShutdownReboot , ShutdownPowerOff
}
 
enum  _KPROFILE_SOURCE {
  ProfileTime , ProfileAlignmentFixup , ProfileTotalIssues , ProfilePipelineDry ,
  ProfileLoadInstructions , ProfilePipelineFrozen , ProfileBranchInstructions , ProfileTotalNonissues ,
  ProfileDcacheMisses , ProfileIcacheMisses , ProfileCacheMisses , ProfileBranchMispredictions ,
  ProfileStoreInstructions , ProfileFpInstructions , ProfileIntegerInstructions , Profile2Issue ,
  Profile3Issue , Profile4Issue , ProfileSpecialInstructions , ProfileTotalCycles ,
  ProfileIcacheIssues , ProfileDcacheAccesses , ProfileMemoryBarrierCycles , ProfileLoadLinkedIssues ,
  ProfileMaximum , ProfileTime , ProfileAlignmentFixup , ProfileTotalIssues ,
  ProfilePipelineDry , ProfileLoadInstructions , ProfilePipelineFrozen , ProfileBranchInstructions ,
  ProfileTotalNonissues , ProfileDcacheMisses , ProfileIcacheMisses , ProfileCacheMisses ,
  ProfileBranchMispredictions , ProfileStoreInstructions , ProfileFpInstructions , ProfileIntegerInstructions ,
  Profile2Issue , Profile3Issue , Profile4Issue , ProfileSpecialInstructions ,
  ProfileTotalCycles , ProfileIcacheIssues , ProfileDcacheAccesses , ProfileMemoryBarrierCycles ,
  ProfileLoadLinkedIssues , ProfileMaximum
}
 
enum  _PORT_INFORMATION_CLASS { PortNoInformation , PortNoInformation }
 
enum  _IO_COMPLETION_INFORMATION_CLASS { IoCompletionBasicInformation , IoCompletionBasicInformation }
 
enum  _HARDERROR_RESPONSE_OPTION {
  OptionAbortRetryIgnore , OptionOk , OptionOkCancel , OptionRetryCancel ,
  OptionYesNo , OptionYesNoCancel , OptionShutdownSystem , OptionOkNoWait ,
  OptionCancelTryContinue , OptionAbortRetryIgnore , OptionOk , OptionOkCancel ,
  OptionRetryCancel , OptionYesNo , OptionYesNoCancel , OptionShutdownSystem
}
 
enum  _HARDERROR_RESPONSE {
  ResponseReturnToCaller , ResponseNotHandled , ResponseAbort , ResponseCancel ,
  ResponseIgnore , ResponseNo , ResponseOk , ResponseRetry ,
  ResponseYes , ResponseTryAgain , ResponseContinue , ResponseReturnToCaller ,
  ResponseNotHandled , ResponseAbort , ResponseCancel , ResponseIgnore ,
  ResponseNo , ResponseOk , ResponseRetry , ResponseYes
}
 
enum  _SYSDBG_COMMAND {
  SysDbgQueryModuleInformation = 0 , SysDbgQueryTraceInformation = 1 , SysDbgSetTracepoint = 2 , SysDbgSetSpecialCall = 3 ,
  SysDbgClearSpecialCalls = 4 , SysDbgQuerySpecialCalls = 5 , SysDbgBreakPoint = 6 , SysDbgQueryVersion = 7 ,
  SysDbgReadVirtual = 8 , SysDbgWriteVirtual = 9 , SysDbgReadPhysical = 10 , SysDbgWritePhysical = 11 ,
  SysDbgReadControlSpace = 12 , SysDbgWriteControlSpace = 13 , SysDbgReadIoSpace = 14 , SysDbgWriteIoSpace = 15 ,
  SysDbgReadMsr = 16 , SysDbgWriteMsr = 17 , SysDbgReadBusData = 18 , SysDbgWriteBusData = 19 ,
  SysDbgCheckLowMemory = 20 , SysDbgEnableKernelDebugger = 21 , SysDbgDisableKernelDebugger = 22 , SysDbgGetAutoKdEnable = 23 ,
  SysDbgSetAutoKdEnable = 24 , SysDbgGetPrintBufferSize = 25 , SysDbgSetPrintBufferSize = 26 , SysDbgGetKdUmExceptionEnable = 27 ,
  SysDbgSetKdUmExceptionEnable = 28 , SysDbgGetTriageDump = 29 , SysDbgGetKdBlockEnable = 30 , SysDbgSetKdBlockEnable = 31 ,
  SysDbgRegisterForUmBreakInfo = 32 , SysDbgGetUmBreakPid = 33 , SysDbgClearUmBreakPid = 34 , SysDbgGetUmAttachPid = 35 ,
  SysDbgClearUmAttachPid = 36 , SysDbgGetLiveKernelDump = 37 , SysDbgKdPullRemoteFile = 38 , SysDbgQueryModuleInformation ,
  SysDbgQueryTraceInformation , SysDbgSetTracepoint , SysDbgSetSpecialCall , SysDbgClearSpecialCalls ,
  SysDbgQuerySpecialCalls , SysDbgBreakPoint , SysDbgQueryVersion , SysDbgReadVirtual ,
  SysDbgWriteVirtual , SysDbgReadPhysical , SysDbgWritePhysical , SysDbgReadControlSpace ,
  SysDbgWriteControlSpace , SysDbgReadIoSpace , SysDbgWriteIoSpace , SysDbgReadMsr ,
  SysDbgWriteMsr , SysDbgReadBusData , SysDbgWriteBusData , SysDbgCheckLowMemory ,
  SysDbgEnableKernelDebugger , SysDbgDisableKernelDebugger , SysDbgGetAutoKdEnable , SysDbgSetAutoKdEnable ,
  SysDbgGetPrintBufferSize , SysDbgSetPrintBufferSize , SysDbgGetKdUmExceptionEnable , SysDbgSetKdUmExceptionEnable ,
  SysDbgGetTriageDump , SysDbgGetKdBlockEnable , SysDbgSetKdBlockEnable , SysDbgRegisterForUmBreakInfo ,
  SysDbgGetUmBreakPid , SysDbgClearUmBreakPid , SysDbgGetUmAttachPid , SysDbgClearUmAttachPid ,
  SysDbgGetLiveKernelDump , SysDbgKdPullRemoteFile , SysDbgMaxInfoClass
}
 
enum  _LDR_DDAG_STATE {
  LdrModulesMerged = -5 , LdrModulesInitError = -4 , LdrModulesSnapError = -3 , LdrModulesUnloaded = -2 ,
  LdrModulesUnloading = -1 , LdrModulesPlaceHolder = 0 , LdrModulesMapping = 1 , LdrModulesMapped = 2 ,
  LdrModulesWaitingForDependencies = 3 , LdrModulesSnapping = 4 , LdrModulesSnapped = 5 , LdrModulesCondensed = 6 ,
  LdrModulesReadyToInit = 7 , LdrModulesInitializing = 8 , LdrModulesReadyToRun = 9
}
 
enum  _LDR_DLL_LOAD_REASON {
  LoadReasonStaticDependency , LoadReasonStaticForwarderDependency , LoadReasonDynamicForwarderDependency , LoadReasonDelayloadDependency ,
  LoadReasonDynamicLoad , LoadReasonAsImageLoad , LoadReasonAsDataLoad , LoadReasonUnknown = -1
}
 
enum  _PS_ATTRIBUTE_NUM {
  PsAttributeParentProcess , PsAttributeDebugPort , PsAttributeToken , PsAttributeClientId ,
  PsAttributeTebAddress , PsAttributeImageName , PsAttributeImageInfo , PsAttributeMemoryReserve ,
  PsAttributePriorityClass , PsAttributeErrorMode , PsAttributeStdHandleInfo , PsAttributeHandleList ,
  PsAttributeGroupAffinity , PsAttributePreferredNode , PsAttributeIdealProcessor , PsAttributeUmsThread ,
  PsAttributeMitigationOptions , PsAttributeProtectionLevel , PsAttributeSecureProcess , PsAttributeJobList ,
  PsAttributeChildProcessPolicy , PsAttributeAllApplicationPackagesPolicy , PsAttributeWin32kFilter , PsAttributeSafeOpenPromptOriginClaim ,
  PsAttributeBnoIsolation , PsAttributeDesktopAppPolicy , PsAttributeChpe , PsAttributeMitigationAuditOptions ,
  PsAttributeMachineType , PsAttributeComponentFilter , PsAttributeEnableOptionalXStateFeatures , PsAttributeMax
}
 
enum  _PS_CREATE_STATE {
  PsCreateInitialState , PsCreateFailOnFileOpen , PsCreateFailOnSectionCreate , PsCreateFailExeFormat ,
  PsCreateFailMachineMismatch , PsCreateFailExeName , PsCreateSuccess , PsCreateMaximumStates
}
 
enum  _DBG_STATE {
  DbgIdle , DbgReplyPending , DbgCreateThreadStateChange , DbgCreateProcessStateChange ,
  DbgExitThreadStateChange , DbgExitProcessStateChange , DbgExceptionStateChange , DbgBreakpointStateChange ,
  DbgSingleStepStateChange , DbgLoadDllStateChange , DbgUnloadDllStateChange , DbgIdle ,
  DbgReplyPending , DbgCreateThreadStateChange , DbgCreateProcessStateChange , DbgExitThreadStateChange ,
  DbgExitProcessStateChange , DbgExceptionStateChange , DbgBreakpointStateChange , DbgSingleStepStateChange ,
  DbgLoadDllStateChange , DbgUnloadDllStateChange
}
 
enum  _DEBUGOBJECTINFOCLASS { DebugObjectUnusedInformation , DebugObjectKillProcessOnExitInformation , DebugObjectKillProcessOnExitInformation = 1 , MaxDebugObjectInfoClass }
 
enum  _KCONTINUE_TYPE {
  KCONTINUE_UNWIND , KCONTINUE_RESUME , KCONTINUE_LONGJUMP , KCONTINUE_SET ,
  KCONTINUE_LAST
}
 

Functions

 C_ASSERT (sizeof(PEB32)==0x480)
 
 C_ASSERT (sizeof(PEB64)==0x7c8)
 
 C_ASSERT (sizeof(TEB32)==0x1000)
 
 C_ASSERT (sizeof(TEB64)==0x1838)
 
 C_ASSERT (sizeof(PEB)==sizeof(PEB32))
 
 C_ASSERT (sizeof(TEB)==sizeof(TEB32))
 
typedef NTSTATUS (NTAPI RTL_HEAP_COMMIT_ROUTINE)(PVOID base
 
 C_ASSERT (sizeof(WOW64INFO)==40)
 
void *WINAPI Wow64AllocateTemp (SIZE_T)
 
void WINAPI Wow64ApcRoutine (ULONG_PTR, ULONG_PTR, ULONG_PTR, CONTEXT *)
 
NTSTATUS WINAPI Wow64KiUserCallbackDispatcher (ULONG, void *, ULONG, void **, ULONG *)
 
void WINAPI Wow64PassExceptionToGuest (EXCEPTION_POINTERS *)
 
void WINAPI Wow64PrepareForException (EXCEPTION_RECORD *, CONTEXT *)
 
void WINAPI Wow64ProcessPendingCrossProcessItems (void)
 
NTSTATUS WINAPI Wow64RaiseException (int, EXCEPTION_RECORD *)
 
NTSTATUS WINAPI Wow64SystemServiceEx (UINT, UINT *)
 
NTSYSAPI NTSTATUS WINAPI ApiSetQueryApiSetPresence (const UNICODE_STRING *, BOOLEAN *)
 
NTSYSAPI NTSTATUS WINAPI ApiSetQueryApiSetPresenceEx (const UNICODE_STRING *, BOOLEAN *, BOOLEAN *)
 
NTSYSAPI void WINAPI DbgBreakPoint (void)
 
NTSYSAPI NTSTATUS WINAPIV DbgPrint (LPCSTR fmt,...)
 
NTSYSAPI NTSTATUS WINAPIV DbgPrintEx (ULONG iComponentId, ULONG Level, LPCSTR fmt,...)
 
NTSYSAPI NTSTATUS WINAPI DbgUiConnectToDbg (void)
 
NTSYSAPI NTSTATUS WINAPI DbgUiContinue (CLIENT_ID *, NTSTATUS)
 
NTSYSAPI NTSTATUS WINAPI DbgUiConvertStateChangeStructure (DBGUI_WAIT_STATE_CHANGE *, struct _DEBUG_EVENT *)
 
NTSYSAPI NTSTATUS WINAPI DbgUiDebugActiveProcess (HANDLE)
 
NTSYSAPI HANDLE WINAPI DbgUiGetThreadDebugObject (void)
 
NTSYSAPI NTSTATUS WINAPI DbgUiIssueRemoteBreakin (HANDLE)
 
NTSYSAPI void WINAPI DbgUiRemoteBreakin (void *)
 
NTSYSAPI void WINAPI DbgUiSetThreadDebugObject (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI DbgUiStopDebugging (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI DbgUiWaitStateChange (DBGUI_WAIT_STATE_CHANGE *, LARGE_INTEGER *)
 
NTSYSAPI void WINAPI DbgUserBreakPoint (void)
 
NTSYSAPI NTSTATUS WINAPI LdrAccessResource (HMODULE, const IMAGE_RESOURCE_DATA_ENTRY *, void **, PULONG)
 
NTSYSAPI NTSTATUS WINAPI LdrAddDllDirectory (const UNICODE_STRING *, void **)
 
NTSYSAPI NTSTATUS WINAPI LdrAddRefDll (ULONG, HMODULE)
 
NTSYSAPI NTSTATUS WINAPI LdrDisableThreadCalloutsForDll (HMODULE)
 
NTSYSAPI NTSTATUS WINAPI LdrFindEntryForAddress (const void *, PLDR_DATA_TABLE_ENTRY *)
 
NTSYSAPI NTSTATUS WINAPI LdrFindResourceDirectory_U (HMODULE, const LDR_RESOURCE_INFO *, ULONG, const IMAGE_RESOURCE_DIRECTORY **)
 
NTSYSAPI NTSTATUS WINAPI LdrFindResource_U (HMODULE, const LDR_RESOURCE_INFO *, ULONG, const IMAGE_RESOURCE_DATA_ENTRY **)
 
NTSYSAPI NTSTATUS WINAPI LdrGetDllDirectory (UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI LdrGetDllFullName (HMODULE, UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI LdrGetDllHandle (LPCWSTR, ULONG, const UNICODE_STRING *, HMODULE *)
 
NTSYSAPI NTSTATUS WINAPI LdrGetDllHandleEx (ULONG, LPCWSTR, ULONG *, const UNICODE_STRING *, HMODULE *)
 
NTSYSAPI NTSTATUS WINAPI LdrGetDllPath (PCWSTR, ULONG, PWSTR *, PWSTR *)
 
NTSYSAPI NTSTATUS WINAPI LdrGetProcedureAddress (HMODULE, const ANSI_STRING *, ULONG, void **)
 
NTSYSAPI NTSTATUS WINAPI LdrLoadDll (LPCWSTR, DWORD, const UNICODE_STRING *, HMODULE *)
 
NTSYSAPI NTSTATUS WINAPI LdrLockLoaderLock (ULONG, ULONG *, ULONG_PTR *)
 
IMAGE_BASE_RELOCATION *WINAPI LdrProcessRelocationBlock (void *, UINT, USHORT *, INT_PTR)
 
NTSYSAPI NTSTATUS WINAPI LdrQueryImageFileExecutionOptions (const UNICODE_STRING *, LPCWSTR, ULONG, void *, ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI LdrQueryProcessModuleInformation (RTL_PROCESS_MODULES *, ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI LdrRegisterDllNotification (ULONG, PLDR_DLL_NOTIFICATION_FUNCTION, void *, void **)
 
NTSYSAPI NTSTATUS WINAPI LdrRemoveDllDirectory (void *)
 
NTSYSAPI NTSTATUS WINAPI LdrSetDefaultDllDirectories (ULONG)
 
NTSYSAPI NTSTATUS WINAPI LdrSetDllDirectory (const UNICODE_STRING *)
 
NTSYSAPI void WINAPI LdrShutdownProcess (void)
 
NTSYSAPI void WINAPI LdrShutdownThread (void)
 
NTSYSAPI NTSTATUS WINAPI LdrUnloadDll (HMODULE)
 
NTSYSAPI NTSTATUS WINAPI LdrUnlockLoaderLock (ULONG, ULONG_PTR)
 
NTSYSAPI NTSTATUS WINAPI LdrUnregisterDllNotification (void *)
 
NTSYSAPI NTSTATUS WINAPI NtAcceptConnectPort (PHANDLE, ULONG, PLPC_MESSAGE, BOOLEAN, PLPC_SECTION_WRITE, PLPC_SECTION_READ)
 
NTSYSAPI NTSTATUS WINAPI NtAccessCheck (PSECURITY_DESCRIPTOR, HANDLE, ACCESS_MASK, PGENERIC_MAPPING, PPRIVILEGE_SET, PULONG, PULONG, NTSTATUS *)
 
NTSYSAPI NTSTATUS WINAPI NtAccessCheckAndAuditAlarm (PUNICODE_STRING, HANDLE, PUNICODE_STRING, PUNICODE_STRING, PSECURITY_DESCRIPTOR, ACCESS_MASK, PGENERIC_MAPPING, BOOLEAN, PACCESS_MASK, PBOOLEAN, PBOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtAddAtom (const WCHAR *, ULONG, RTL_ATOM *)
 
NTSYSAPI NTSTATUS WINAPI NtAdjustGroupsToken (HANDLE, BOOLEAN, PTOKEN_GROUPS, ULONG, PTOKEN_GROUPS, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtAdjustPrivilegesToken (HANDLE, BOOLEAN, PTOKEN_PRIVILEGES, DWORD, PTOKEN_PRIVILEGES, PDWORD)
 
NTSYSAPI NTSTATUS WINAPI NtAlertResumeThread (HANDLE, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtAlertThread (HANDLE ThreadHandle)
 
NTSYSAPI NTSTATUS WINAPI NtAlertThreadByThreadId (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtAllocateLocallyUniqueId (PLUID lpLuid)
 
NTSYSAPI NTSTATUS WINAPI NtAllocateReserveObject (HANDLE *handle, const OBJECT_ATTRIBUTES *attr, MEMORY_RESERVE_OBJECT_TYPE type)
 
NTSYSAPI NTSTATUS WINAPI NtAllocateUuids (PULARGE_INTEGER, PULONG, PULONG, PUCHAR)
 
NTSYSAPI NTSTATUS WINAPI NtAllocateVirtualMemory (HANDLE, PVOID *, ULONG_PTR, SIZE_T *, ULONG, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtAllocateVirtualMemoryEx (HANDLE, PVOID *, SIZE_T *, ULONG, ULONG, MEM_EXTENDED_PARAMETER *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtAreMappedFilesTheSame (PVOID, PVOID)
 
NTSYSAPI NTSTATUS WINAPI NtAssignProcessToJobObject (HANDLE, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtCallbackReturn (PVOID, ULONG, NTSTATUS)
 
NTSYSAPI NTSTATUS WINAPI NtCancelIoFile (HANDLE, PIO_STATUS_BLOCK)
 
NTSYSAPI NTSTATUS WINAPI NtCancelIoFileEx (HANDLE, PIO_STATUS_BLOCK, PIO_STATUS_BLOCK)
 
NTSYSAPI NTSTATUS WINAPI NtCancelSynchronousIoFile (HANDLE, PIO_STATUS_BLOCK, PIO_STATUS_BLOCK)
 
NTSYSAPI NTSTATUS WINAPI NtCancelTimer (HANDLE, BOOLEAN *)
 
NTSYSAPI NTSTATUS WINAPI NtClearEvent (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtClose (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtCloseObjectAuditAlarm (PUNICODE_STRING, HANDLE, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtCommitTransaction (HANDLE, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtCompareObjects (HANDLE, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtCompareTokens (HANDLE, HANDLE, BOOLEAN *)
 
NTSYSAPI NTSTATUS WINAPI NtCompleteConnectPort (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtConnectPort (PHANDLE, PUNICODE_STRING, PSECURITY_QUALITY_OF_SERVICE, PLPC_SECTION_WRITE, PLPC_SECTION_READ, PULONG, PVOID, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtContinue (PCONTEXT, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtContinueEx (CONTEXT *, KCONTINUE_ARGUMENT *)
 
NTSYSAPI NTSTATUS WINAPI NtCreateDebugObject (HANDLE *, ACCESS_MASK, OBJECT_ATTRIBUTES *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtCreateDirectoryObject (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES)
 
NTSYSAPI NTSTATUS WINAPI NtCreateEvent (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, EVENT_TYPE, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtCreateEventPair (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES)
 
NTSYSAPI NTSTATUS WINAPI NtCreateFile (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, PIO_STATUS_BLOCK, PLARGE_INTEGER, ULONG, ULONG, ULONG, ULONG, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtCreateIoCompletion (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtCreateJobObject (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtCreateKey (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, ULONG, const UNICODE_STRING *, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtCreateKeyTransacted (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, ULONG, const UNICODE_STRING *, ULONG, HANDLE, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtCreateKeyedEvent (HANDLE *, ACCESS_MASK, const OBJECT_ATTRIBUTES *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtCreateLowBoxToken (HANDLE *, HANDLE, ACCESS_MASK, OBJECT_ATTRIBUTES *, SID *, ULONG, SID_AND_ATTRIBUTES *, ULONG, HANDLE *)
 
NTSYSAPI NTSTATUS WINAPI NtCreateMailslotFile (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, PIO_STATUS_BLOCK, ULONG, ULONG, ULONG, PLARGE_INTEGER)
 
NTSYSAPI NTSTATUS WINAPI NtCreateMutant (HANDLE *, ACCESS_MASK, const OBJECT_ATTRIBUTES *, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtCreateNamedPipeFile (PHANDLE, ULONG, POBJECT_ATTRIBUTES, PIO_STATUS_BLOCK, ULONG, ULONG, ULONG, ULONG, ULONG, ULONG, ULONG, ULONG, ULONG, PLARGE_INTEGER)
 
NTSYSAPI NTSTATUS WINAPI NtCreatePagingFile (PUNICODE_STRING, PLARGE_INTEGER, PLARGE_INTEGER, PLARGE_INTEGER)
 
NTSYSAPI NTSTATUS WINAPI NtCreatePort (PHANDLE, POBJECT_ATTRIBUTES, ULONG, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtCreateProcess (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, HANDLE, BOOLEAN, HANDLE, HANDLE, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtCreateProfile (PHANDLE, HANDLE, PVOID, ULONG, ULONG, PVOID, ULONG, KPROFILE_SOURCE, KAFFINITY)
 
NTSYSAPI NTSTATUS WINAPI NtCreateSection (HANDLE *, ACCESS_MASK, const OBJECT_ATTRIBUTES *, const LARGE_INTEGER *, ULONG, ULONG, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtCreateSemaphore (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, LONG, LONG)
 
NTSYSAPI NTSTATUS WINAPI NtCreateSymbolicLinkObject (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, PUNICODE_STRING)
 
NTSYSAPI NTSTATUS WINAPI NtCreateThread (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, HANDLE, PCLIENT_ID, PCONTEXT, PINITIAL_TEB, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtCreateThreadEx (HANDLE *, ACCESS_MASK, OBJECT_ATTRIBUTES *, HANDLE, PRTL_THREAD_START_ROUTINE, void *, ULONG, ULONG_PTR, SIZE_T, SIZE_T, PS_ATTRIBUTE_LIST *)
 
NTSYSAPI NTSTATUS WINAPI NtCreateTimer (HANDLE *, ACCESS_MASK, const OBJECT_ATTRIBUTES *, TIMER_TYPE)
 
NTSYSAPI NTSTATUS WINAPI NtCreateToken (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, TOKEN_TYPE, PLUID, PLARGE_INTEGER, PTOKEN_USER, PTOKEN_GROUPS, PTOKEN_PRIVILEGES, PTOKEN_OWNER, PTOKEN_PRIMARY_GROUP, PTOKEN_DEFAULT_DACL, PTOKEN_SOURCE)
 
NTSYSAPI NTSTATUS WINAPI NtCreateTransaction (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, LPGUID, HANDLE, ULONG, ULONG, ULONG, PLARGE_INTEGER, PUNICODE_STRING)
 
NTSYSAPI NTSTATUS WINAPI NtCreateUserProcess (HANDLE *, HANDLE *, ACCESS_MASK, ACCESS_MASK, OBJECT_ATTRIBUTES *, OBJECT_ATTRIBUTES *, ULONG, ULONG, RTL_USER_PROCESS_PARAMETERS *, PS_CREATE_INFO *, PS_ATTRIBUTE_LIST *)
 
NTSYSAPI NTSTATUS WINAPI NtDebugActiveProcess (HANDLE, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtDebugContinue (HANDLE, CLIENT_ID *, NTSTATUS)
 
NTSYSAPI NTSTATUS WINAPI NtDelayExecution (BOOLEAN, const LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI NtDeleteAtom (RTL_ATOM)
 
NTSYSAPI NTSTATUS WINAPI NtDeleteFile (POBJECT_ATTRIBUTES)
 
NTSYSAPI NTSTATUS WINAPI NtDeleteKey (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtDeleteValueKey (HANDLE, const UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI NtDeviceIoControlFile (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, ULONG, PVOID, ULONG, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtDisplayString (PUNICODE_STRING)
 
NTSYSAPI NTSTATUS WINAPI NtDuplicateObject (HANDLE, HANDLE, HANDLE, PHANDLE, ACCESS_MASK, ULONG, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtDuplicateToken (HANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, BOOLEAN, TOKEN_TYPE, PHANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtEnumerateKey (HANDLE, ULONG, KEY_INFORMATION_CLASS, void *, DWORD, DWORD *)
 
NTSYSAPI NTSTATUS WINAPI NtEnumerateValueKey (HANDLE, ULONG, KEY_VALUE_INFORMATION_CLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtExtendSection (HANDLE, PLARGE_INTEGER)
 
NTSYSAPI NTSTATUS WINAPI NtFilterToken (HANDLE, ULONG, TOKEN_GROUPS *, TOKEN_PRIVILEGES *, TOKEN_GROUPS *, HANDLE *)
 
NTSYSAPI NTSTATUS WINAPI NtFindAtom (const WCHAR *, ULONG, RTL_ATOM *)
 
NTSYSAPI NTSTATUS WINAPI NtFlushBuffersFile (HANDLE, IO_STATUS_BLOCK *)
 
NTSYSAPI NTSTATUS WINAPI NtFlushBuffersFileEx (HANDLE, ULONG, void *, ULONG, IO_STATUS_BLOCK *)
 
NTSYSAPI NTSTATUS WINAPI NtFlushInstructionCache (HANDLE, LPCVOID, SIZE_T)
 
NTSYSAPI NTSTATUS WINAPI NtFlushKey (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtFlushProcessWriteBuffers (void)
 
NTSYSAPI NTSTATUS WINAPI NtFlushVirtualMemory (HANDLE, LPCVOID *, SIZE_T *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtFlushWriteBuffer (VOID)
 
NTSYSAPI NTSTATUS WINAPI NtFreeVirtualMemory (HANDLE, PVOID *, SIZE_T *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtFsControlFile (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, ULONG, PVOID, ULONG, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtGetContextThread (HANDLE, CONTEXT *)
 
NTSYSAPI ULONG WINAPI NtGetCurrentProcessorNumber (void)
 
NTSYSAPI NTSTATUS WINAPI NtGetNextThread (HANDLE, HANDLE, ACCESS_MASK, ULONG, ULONG, HANDLE *)
 
NTSYSAPI NTSTATUS WINAPI NtGetNlsSectionPtr (ULONG, ULONG, void *, void **, SIZE_T *)
 
NTSYSAPI NTSTATUS WINAPI NtGetPlugPlayEvent (ULONG, ULONG, PVOID, ULONG)
 
NTSYSAPI ULONG WINAPI NtGetTickCount (VOID)
 
NTSYSAPI NTSTATUS WINAPI NtGetWriteWatch (HANDLE, ULONG, PVOID, SIZE_T, PVOID *, ULONG_PTR *, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtImpersonateAnonymousToken (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtImpersonateClientOfPort (HANDLE, PPORT_MESSAGE)
 
NTSYSAPI NTSTATUS WINAPI NtImpersonateThread (HANDLE, HANDLE, PSECURITY_QUALITY_OF_SERVICE)
 
NTSYSAPI NTSTATUS WINAPI NtInitializeNlsFiles (void **, LCID *, LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI NtInitializeRegistry (BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtInitiatePowerAction (POWER_ACTION, SYSTEM_POWER_STATE, ULONG, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtIsProcessInJob (HANDLE, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtListenPort (HANDLE, PLPC_MESSAGE)
 
NTSYSAPI NTSTATUS WINAPI NtLoadDriver (const UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI NtLoadKey (const OBJECT_ATTRIBUTES *, OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtLoadKey2 (const OBJECT_ATTRIBUTES *, OBJECT_ATTRIBUTES *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtLoadKeyEx (const OBJECT_ATTRIBUTES *, OBJECT_ATTRIBUTES *, ULONG, HANDLE, HANDLE, ACCESS_MASK, HANDLE *, IO_STATUS_BLOCK *)
 
NTSYSAPI NTSTATUS WINAPI NtLockFile (HANDLE, HANDLE, PIO_APC_ROUTINE, void *, PIO_STATUS_BLOCK, PLARGE_INTEGER, PLARGE_INTEGER, ULONG *, BOOLEAN, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtLockVirtualMemory (HANDLE, PVOID *, SIZE_T *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtMakePermanentObject (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtMakeTemporaryObject (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtMapViewOfSection (HANDLE, HANDLE, PVOID *, ULONG_PTR, SIZE_T, const LARGE_INTEGER *, SIZE_T *, SECTION_INHERIT, ULONG, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtMapViewOfSectionEx (HANDLE, HANDLE, PVOID *, const LARGE_INTEGER *, SIZE_T *, ULONG, ULONG, MEM_EXTENDED_PARAMETER *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtNotifyChangeDirectoryFile (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, PVOID, ULONG, ULONG, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtNotifyChangeKey (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, ULONG, BOOLEAN, PVOID, ULONG, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtNotifyChangeMultipleKeys (HANDLE, ULONG, OBJECT_ATTRIBUTES *, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, ULONG, BOOLEAN, PVOID, ULONG, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtOpenDirectoryObject (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenEvent (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenEventPair (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenFile (PHANDLE, ACCESS_MASK, POBJECT_ATTRIBUTES, PIO_STATUS_BLOCK, ULONG, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtOpenIoCompletion (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenJobObject (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenKey (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenKeyEx (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtOpenKeyTransacted (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtOpenKeyTransactedEx (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, ULONG, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtOpenKeyedEvent (HANDLE *, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenMutant (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenObjectAuditAlarm (PUNICODE_STRING, PHANDLE, PUNICODE_STRING, PUNICODE_STRING, PSECURITY_DESCRIPTOR, HANDLE, ACCESS_MASK, ACCESS_MASK, PPRIVILEGE_SET, BOOLEAN, BOOLEAN, PBOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtOpenProcess (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, const CLIENT_ID *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenProcessToken (HANDLE, DWORD, HANDLE *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenProcessTokenEx (HANDLE, DWORD, DWORD, HANDLE *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenSection (HANDLE *, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenSemaphore (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenSymbolicLinkObject (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenThread (HANDLE *, ACCESS_MASK, const OBJECT_ATTRIBUTES *, const CLIENT_ID *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenThreadToken (HANDLE, DWORD, BOOLEAN, HANDLE *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenThreadTokenEx (HANDLE, DWORD, BOOLEAN, DWORD, HANDLE *)
 
NTSYSAPI NTSTATUS WINAPI NtOpenTimer (HANDLE *, ACCESS_MASK, const OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI NtPowerInformation (POWER_INFORMATION_LEVEL, PVOID, ULONG, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtPrivilegeCheck (HANDLE, PPRIVILEGE_SET, PBOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtPrivilegeObjectAuditAlarm (PUNICODE_STRING, HANDLE, HANDLE, ULONG, PPRIVILEGE_SET, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtPrivilegedServiceAuditAlarm (PUNICODE_STRING, PUNICODE_STRING, HANDLE, PPRIVILEGE_SET, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtProtectVirtualMemory (HANDLE, PVOID *, SIZE_T *, ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtPulseEvent (HANDLE, LONG *)
 
NTSYSAPI NTSTATUS WINAPI NtQueueApcThread (HANDLE, PNTAPCFUNC, ULONG_PTR, ULONG_PTR, ULONG_PTR)
 
NTSYSAPI NTSTATUS WINAPI NtQueueApcThreadEx (HANDLE, HANDLE, PNTAPCFUNC, ULONG_PTR, ULONG_PTR, ULONG_PTR)
 
NTSYSAPI NTSTATUS WINAPI NtQueryAttributesFile (const OBJECT_ATTRIBUTES *, FILE_BASIC_INFORMATION *)
 
NTSYSAPI NTSTATUS WINAPI NtQueryDefaultLocale (BOOLEAN, LCID *)
 
NTSYSAPI NTSTATUS WINAPI NtQueryDefaultUILanguage (LANGID *)
 
NTSYSAPI NTSTATUS WINAPI NtQueryDirectoryFile (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, PVOID, ULONG, FILE_INFORMATION_CLASS, BOOLEAN, PUNICODE_STRING, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtQueryDirectoryObject (HANDLE, PDIRECTORY_BASIC_INFORMATION, ULONG, BOOLEAN, BOOLEAN, PULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryEaFile (HANDLE, PIO_STATUS_BLOCK, PVOID, ULONG, BOOLEAN, PVOID, ULONG, PULONG, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtQueryEvent (HANDLE, EVENT_INFORMATION_CLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryFullAttributesFile (const OBJECT_ATTRIBUTES *, FILE_NETWORK_OPEN_INFORMATION *)
 
NTSYSAPI NTSTATUS WINAPI NtQueryInformationAtom (RTL_ATOM, ATOM_INFORMATION_CLASS, PVOID, ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtQueryInformationFile (HANDLE, PIO_STATUS_BLOCK, PVOID, ULONG, FILE_INFORMATION_CLASS)
 
NTSYSAPI NTSTATUS WINAPI NtQueryInformationJobObject (HANDLE, JOBOBJECTINFOCLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryInformationPort (HANDLE, PORT_INFORMATION_CLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryInformationProcess (HANDLE, PROCESSINFOCLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryInformationThread (HANDLE, THREADINFOCLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryInformationToken (HANDLE, TOKEN_INFORMATION_CLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryInstallUILanguage (LANGID *)
 
NTSYSAPI NTSTATUS WINAPI NtQueryIntervalProfile (KPROFILE_SOURCE, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryIoCompletion (HANDLE, IO_COMPLETION_INFORMATION_CLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryKey (HANDLE, KEY_INFORMATION_CLASS, void *, DWORD, DWORD *)
 
NTSYSAPI NTSTATUS WINAPI NtQueryMultipleValueKey (HANDLE, PKEY_MULTIPLE_VALUE_INFORMATION, ULONG, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryMutant (HANDLE, MUTANT_INFORMATION_CLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryObject (HANDLE, OBJECT_INFORMATION_CLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryOpenSubKeys (POBJECT_ATTRIBUTES, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryPerformanceCounter (PLARGE_INTEGER, PLARGE_INTEGER)
 
NTSYSAPI NTSTATUS WINAPI NtQuerySecurityObject (HANDLE, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQuerySection (HANDLE, SECTION_INFORMATION_CLASS, PVOID, SIZE_T, SIZE_T *)
 
NTSYSAPI NTSTATUS WINAPI NtQuerySemaphore (HANDLE, SEMAPHORE_INFORMATION_CLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQuerySymbolicLinkObject (HANDLE, PUNICODE_STRING, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQuerySystemEnvironmentValue (PUNICODE_STRING, PWCHAR, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQuerySystemEnvironmentValueEx (PUNICODE_STRING, GUID *, void *, ULONG *, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtQuerySystemInformation (SYSTEM_INFORMATION_CLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQuerySystemInformationEx (SYSTEM_INFORMATION_CLASS, void *, ULONG, void *, ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtQuerySystemTime (PLARGE_INTEGER)
 
NTSYSAPI NTSTATUS WINAPI NtQueryTimer (HANDLE, TIMER_INFORMATION_CLASS, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryTimerResolution (PULONG, PULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtQueryValueKey (HANDLE, const UNICODE_STRING *, KEY_VALUE_INFORMATION_CLASS, void *, DWORD, DWORD *)
 
NTSYSAPI NTSTATUS WINAPI NtQueryLicenseValue (const UNICODE_STRING *, ULONG *, PVOID, ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtQueryVirtualMemory (HANDLE, LPCVOID, MEMORY_INFORMATION_CLASS, PVOID, SIZE_T, SIZE_T *)
 
NTSYSAPI NTSTATUS WINAPI NtQueryVolumeInformationFile (HANDLE, PIO_STATUS_BLOCK, PVOID, ULONG, FS_INFORMATION_CLASS)
 
NTSYSAPI NTSTATUS WINAPI NtRaiseException (PEXCEPTION_RECORD, PCONTEXT, BOOL)
 
NTSYSAPI NTSTATUS WINAPI NtRaiseHardError (NTSTATUS, ULONG, ULONG, PVOID *, HARDERROR_RESPONSE_OPTION, PHARDERROR_RESPONSE)
 
NTSYSAPI NTSTATUS WINAPI NtReadFile (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, PVOID, ULONG, PLARGE_INTEGER, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtReadFileScatter (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, FILE_SEGMENT_ELEMENT *, ULONG, PLARGE_INTEGER, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtReadRequestData (HANDLE, PLPC_MESSAGE, ULONG, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtReadVirtualMemory (HANDLE, const void *, void *, SIZE_T, SIZE_T *)
 
NTSYSAPI NTSTATUS WINAPI NtRegisterThreadTerminatePort (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtReleaseKeyedEvent (HANDLE, const void *, BOOLEAN, const LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI NtReleaseMutant (HANDLE, PLONG)
 
NTSYSAPI NTSTATUS WINAPI NtReleaseSemaphore (HANDLE, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtRemoveIoCompletion (HANDLE, PULONG_PTR, PULONG_PTR, PIO_STATUS_BLOCK, PLARGE_INTEGER)
 
NTSYSAPI NTSTATUS WINAPI NtRemoveIoCompletionEx (HANDLE, FILE_IO_COMPLETION_INFORMATION *, ULONG, ULONG *, LARGE_INTEGER *, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtRemoveProcessDebug (HANDLE, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtRenameKey (HANDLE, UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI NtReplaceKey (POBJECT_ATTRIBUTES, HANDLE, POBJECT_ATTRIBUTES)
 
NTSYSAPI NTSTATUS WINAPI NtReplyPort (HANDLE, PLPC_MESSAGE)
 
NTSYSAPI NTSTATUS WINAPI NtReplyWaitReceivePort (HANDLE, PULONG, PLPC_MESSAGE, PLPC_MESSAGE)
 
NTSYSAPI NTSTATUS WINAPI NtReplyWaitReceivePortEx (HANDLE, PVOID *, PPORT_MESSAGE, PPORT_MESSAGE, PLARGE_INTEGER)
 
NTSYSAPI NTSTATUS WINAPI NtReplyWaitReplyPort (HANDLE, PLPC_MESSAGE)
 
NTSYSAPI NTSTATUS WINAPI NtRequestPort (HANDLE, PLPC_MESSAGE)
 
NTSYSAPI NTSTATUS WINAPI NtRequestWaitReplyPort (HANDLE, PLPC_MESSAGE, PLPC_MESSAGE)
 
NTSYSAPI NTSTATUS WINAPI NtResetEvent (HANDLE, LONG *)
 
NTSYSAPI NTSTATUS WINAPI NtResetWriteWatch (HANDLE, PVOID, SIZE_T)
 
NTSYSAPI NTSTATUS WINAPI NtRestoreKey (HANDLE, HANDLE, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtResumeProcess (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtResumeThread (HANDLE, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtRollbackTransaction (HANDLE, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtSaveKey (HANDLE, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtSecureConnectPort (PHANDLE, PUNICODE_STRING, PSECURITY_QUALITY_OF_SERVICE, PLPC_SECTION_WRITE, PSID, PLPC_SECTION_READ, PULONG, PVOID, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetContextThread (HANDLE, const CONTEXT *)
 
NTSYSAPI NTSTATUS WINAPI NtSetDebugFilterState (ULONG, ULONG, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI NtSetDefaultHardErrorPort (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtSetDefaultLocale (BOOLEAN, LCID)
 
NTSYSAPI NTSTATUS WINAPI NtSetDefaultUILanguage (LANGID)
 
NTSYSAPI NTSTATUS WINAPI NtSetEaFile (HANDLE, PIO_STATUS_BLOCK, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetEvent (HANDLE, LONG *)
 
NTSYSAPI NTSTATUS WINAPI NtSetHighEventPair (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtSetHighWaitLowEventPair (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtSetHighWaitLowThread (VOID)
 
NTSYSAPI NTSTATUS WINAPI NtSetInformationDebugObject (HANDLE, DEBUGOBJECTINFOCLASS, PVOID, ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtSetInformationFile (HANDLE, PIO_STATUS_BLOCK, PVOID, ULONG, FILE_INFORMATION_CLASS)
 
NTSYSAPI NTSTATUS WINAPI NtSetInformationJobObject (HANDLE, JOBOBJECTINFOCLASS, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetInformationKey (HANDLE, const int, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetInformationObject (HANDLE, OBJECT_INFORMATION_CLASS, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetInformationProcess (HANDLE, PROCESSINFOCLASS, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetInformationThread (HANDLE, THREADINFOCLASS, LPCVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetInformationToken (HANDLE, TOKEN_INFORMATION_CLASS, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetInformationVirtualMemory (HANDLE, VIRTUAL_MEMORY_INFORMATION_CLASS, ULONG_PTR, PMEMORY_RANGE_ENTRY, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetIntervalProfile (ULONG, KPROFILE_SOURCE)
 
NTSYSAPI NTSTATUS WINAPI NtSetIoCompletion (HANDLE, ULONG_PTR, ULONG_PTR, NTSTATUS, SIZE_T)
 
NTSYSAPI NTSTATUS WINAPI NtSetIoCompletionEx (HANDLE, HANDLE, ULONG_PTR, ULONG_PTR, NTSTATUS, SIZE_T)
 
NTSYSAPI NTSTATUS WINAPI NtSetLdtEntries (ULONG, LDT_ENTRY, ULONG, LDT_ENTRY)
 
NTSYSAPI NTSTATUS WINAPI NtSetLowEventPair (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtSetLowWaitHighEventPair (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtSetLowWaitHighThread (VOID)
 
NTSYSAPI NTSTATUS WINAPI NtSetSecurityObject (HANDLE, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR)
 
NTSYSAPI NTSTATUS WINAPI NtSetSystemEnvironmentValue (PUNICODE_STRING, PUNICODE_STRING)
 
NTSYSAPI NTSTATUS WINAPI NtSetSystemInformation (SYSTEM_INFORMATION_CLASS, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetSystemPowerState (POWER_ACTION, SYSTEM_POWER_STATE, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetSystemTime (const LARGE_INTEGER *, LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI NtSetThreadExecutionState (EXECUTION_STATE, EXECUTION_STATE *)
 
NTSYSAPI NTSTATUS WINAPI NtSetTimer (HANDLE, const LARGE_INTEGER *, PTIMER_APC_ROUTINE, PVOID, BOOLEAN, ULONG, BOOLEAN *)
 
NTSYSAPI NTSTATUS WINAPI NtSetTimerResolution (ULONG, BOOLEAN, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetValueKey (HANDLE, const UNICODE_STRING *, ULONG, ULONG, const void *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSetVolumeInformationFile (HANDLE, PIO_STATUS_BLOCK, PVOID, ULONG, FS_INFORMATION_CLASS)
 
NTSYSAPI NTSTATUS WINAPI NtSignalAndWaitForSingleObject (HANDLE, HANDLE, BOOLEAN, const LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI NtShutdownSystem (SHUTDOWN_ACTION)
 
NTSYSAPI NTSTATUS WINAPI NtStartProfile (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtStopProfile (HANDLE)
 
NTSTATUS WINAPI NtSuspendProcess (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtSuspendThread (HANDLE, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtSystemDebugControl (SYSDBG_COMMAND, PVOID, ULONG, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtTerminateJobObject (HANDLE, NTSTATUS)
 
NTSYSAPI NTSTATUS WINAPI NtTerminateProcess (HANDLE, LONG)
 
NTSYSAPI NTSTATUS WINAPI NtTerminateThread (HANDLE, LONG)
 
NTSYSAPI NTSTATUS WINAPI NtTestAlert (VOID)
 
NTSYSAPI NTSTATUS WINAPI NtTraceControl (ULONG, void *, ULONG, void *, ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtUnloadDriver (const UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI NtUnloadKey (POBJECT_ATTRIBUTES)
 
NTSYSAPI NTSTATUS WINAPI NtUnloadKeyEx (POBJECT_ATTRIBUTES, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtUnlockFile (HANDLE, PIO_STATUS_BLOCK, PLARGE_INTEGER, PLARGE_INTEGER, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtUnlockVirtualMemory (HANDLE, PVOID *, SIZE_T *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtUnmapViewOfSection (HANDLE, PVOID)
 
NTSYSAPI NTSTATUS WINAPI NtUnmapViewOfSectionEx (HANDLE, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtVdmControl (ULONG, PVOID)
 
NTSYSAPI NTSTATUS WINAPI NtWaitForAlertByThreadId (const void *, const LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI NtWaitForDebugEvent (HANDLE, BOOLEAN, LARGE_INTEGER *, DBGUI_WAIT_STATE_CHANGE *)
 
NTSYSAPI NTSTATUS WINAPI NtWaitForKeyedEvent (HANDLE, const void *, BOOLEAN, const LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI NtWaitForSingleObject (HANDLE, BOOLEAN, const LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI NtWaitForMultipleObjects (ULONG, const HANDLE *, BOOLEAN, BOOLEAN, const LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI NtWaitHighEventPair (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtWaitLowEventPair (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI NtWriteFile (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, const void *, ULONG, PLARGE_INTEGER, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtWriteFileGather (HANDLE, HANDLE, PIO_APC_ROUTINE, PVOID, PIO_STATUS_BLOCK, FILE_SEGMENT_ELEMENT *, ULONG, PLARGE_INTEGER, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtWriteRequestData (HANDLE, PLPC_MESSAGE, ULONG, PVOID, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI NtWriteVirtualMemory (HANDLE, void *, const void *, SIZE_T, SIZE_T *)
 
NTSYSAPI NTSTATUS WINAPI NtYieldExecution (void)
 
NTSYSAPI NTSTATUS WINAPI RtlAbsoluteToSelfRelativeSD (PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, PULONG)
 
NTSYSAPI void WINAPI RtlAcquirePebLock (void)
 
NTSYSAPI BYTE WINAPI RtlAcquireResourceExclusive (LPRTL_RWLOCK, BYTE)
 
NTSYSAPI BYTE WINAPI RtlAcquireResourceShared (LPRTL_RWLOCK, BYTE)
 
NTSYSAPI void WINAPI RtlAcquireSRWLockExclusive (RTL_SRWLOCK *)
 
NTSYSAPI void WINAPI RtlAcquireSRWLockShared (RTL_SRWLOCK *)
 
NTSYSAPI NTSTATUS WINAPI RtlActivateActivationContext (DWORD, HANDLE, ULONG_PTR *)
 
NTSYSAPI NTSTATUS WINAPI RtlActivateActivationContextEx (ULONG, TEB *, HANDLE, ULONG_PTR *)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAccessAllowedAce (PACL, DWORD, DWORD, PSID)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAccessAllowedAceEx (PACL, DWORD, DWORD, DWORD, PSID)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAccessAllowedObjectAce (PACL, DWORD, DWORD, DWORD, GUID *, GUID *, PSID)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAccessDeniedAce (PACL, DWORD, DWORD, PSID)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAccessDeniedAceEx (PACL, DWORD, DWORD, DWORD, PSID)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAccessDeniedObjectAce (PACL, DWORD, DWORD, DWORD, GUID *, GUID *, PSID)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAce (PACL, DWORD, DWORD, PACE_HEADER, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAtomToAtomTable (RTL_ATOM_TABLE, const WCHAR *, RTL_ATOM *)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAuditAccessAce (PACL, DWORD, DWORD, PSID, BOOL, BOOL)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAuditAccessAceEx (PACL, DWORD, DWORD, DWORD, PSID, BOOL, BOOL)
 
NTSYSAPI NTSTATUS WINAPI RtlAddAuditAccessObjectAce (PACL, DWORD, DWORD, DWORD, GUID *, GUID *, PSID, BOOL, BOOL)
 
NTSYSAPI NTSTATUS WINAPI RtlAddMandatoryAce (PACL, DWORD, DWORD, DWORD, DWORD, PSID)
 
NTSYSAPI NTSTATUS WINAPI RtlAddProcessTrustLabelAce (PACL, DWORD, DWORD, PSID, DWORD, DWORD)
 
NTSYSAPI void WINAPI RtlAddRefActivationContext (HANDLE)
 
NTSYSAPI PVOID WINAPI RtlAddVectoredContinueHandler (ULONG, PVECTORED_EXCEPTION_HANDLER)
 
NTSYSAPI PVOID WINAPI RtlAddVectoredExceptionHandler (ULONG, PVECTORED_EXCEPTION_HANDLER)
 
NTSYSAPI PVOID WINAPI RtlAddressInSectionTable (const IMAGE_NT_HEADERS *, HMODULE, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlAdjustPrivilege (ULONG, BOOLEAN, BOOLEAN, PBOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlAllocateAndInitializeSid (PSID_IDENTIFIER_AUTHORITY, BYTE, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, PSID *)
 
NTSYSAPI RTL_HANDLE *WINAPI RtlAllocateHandle (RTL_HANDLE_TABLE *, ULONG *)
 
NTSYSAPI BOOLEAN WINAPI RtlFreeHeap (HANDLE, ULONG, PVOID)
 
NTSYSAPI PVOID WINAPI RtlAllocateHeap (HANDLE, ULONG, SIZE_T) __WINE_ALLOC_SIZE(3) __WINE_DEALLOC(RtlFreeHeap
 
NTSYSAPI WCHAR WINAPI RtlAnsiCharToUnicodeChar (LPSTR *)
 
NTSYSAPI DWORD WINAPI RtlAnsiStringToUnicodeSize (const STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlAnsiStringToUnicodeString (PUNICODE_STRING, PCANSI_STRING, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlAppendAsciizToString (STRING *, LPCSTR)
 
NTSYSAPI NTSTATUS WINAPI RtlAppendStringToString (STRING *, const STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlAppendUnicodeStringToString (UNICODE_STRING *, const UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlAppendUnicodeToString (UNICODE_STRING *, LPCWSTR)
 
NTSYSAPI BOOLEAN WINAPI RtlAreAllAccessesGranted (ACCESS_MASK, ACCESS_MASK)
 
NTSYSAPI BOOLEAN WINAPI RtlAreAnyAccessesGranted (ACCESS_MASK, ACCESS_MASK)
 
NTSYSAPI BOOLEAN WINAPI RtlAreBitsSet (PCRTL_BITMAP, ULONG, ULONG)
 
NTSYSAPI BOOLEAN WINAPI RtlAreBitsClear (PCRTL_BITMAP, ULONG, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlCharToInteger (PCSZ, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlCheckRegistryKey (ULONG, PWSTR)
 
NTSYSAPI void WINAPI RtlClearAllBits (PRTL_BITMAP)
 
NTSYSAPI void WINAPI RtlClearBits (PRTL_BITMAP, ULONG, ULONG)
 
NTSYSAPI ULONG WINAPI RtlCompactHeap (HANDLE, ULONG)
 
NTSYSAPI LONG WINAPI RtlCompareUnicodeString (const UNICODE_STRING *, const UNICODE_STRING *, BOOLEAN)
 
NTSYSAPI LONG WINAPI RtlCompareUnicodeStrings (const WCHAR *, SIZE_T, const WCHAR *, SIZE_T, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlCompressBuffer (USHORT, PUCHAR, ULONG, PUCHAR, ULONG, ULONG, PULONG, PVOID)
 
NTSYSAPI DWORD WINAPI RtlComputeCrc32 (DWORD, const BYTE *, INT)
 
NTSYSAPI NTSTATUS WINAPI RtlConvertSidToUnicodeString (PUNICODE_STRING, PSID, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlConvertToAutoInheritSecurityObject (PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR *, GUID *, BOOL, PGENERIC_MAPPING)
 
NTSYSAPI NTSTATUS WINAPI RtlCopyContext (CONTEXT *, DWORD, CONTEXT *)
 
NTSYSAPI NTSTATUS WINAPI RtlCopyExtendedContext (CONTEXT_EX *, ULONG, CONTEXT_EX *)
 
NTSYSAPI void WINAPI RtlCopyLuid (PLUID, const LUID *)
 
NTSYSAPI void WINAPI RtlCopyLuidAndAttributesArray (ULONG, const LUID_AND_ATTRIBUTES *, PLUID_AND_ATTRIBUTES)
 
NTSYSAPI NTSTATUS WINAPI RtlCopySecurityDescriptor (PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR)
 
NTSYSAPI BOOLEAN WINAPI RtlCopySid (DWORD, PSID, PSID)
 
NTSYSAPI void WINAPI RtlCopyUnicodeString (UNICODE_STRING *, const UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateAcl (PACL, DWORD, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateActivationContext (HANDLE *, const void *)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateAtomTable (ULONG, RTL_ATOM_TABLE *)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateEnvironment (BOOLEAN, PWSTR *)
 
NTSYSAPI HANDLE WINAPI RtlCreateHeap (ULONG, PVOID, SIZE_T, SIZE_T, PVOID, PRTL_HEAP_PARAMETERS)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateProcessParameters (RTL_USER_PROCESS_PARAMETERS **, const UNICODE_STRING *, const UNICODE_STRING *, const UNICODE_STRING *, const UNICODE_STRING *, PWSTR, const UNICODE_STRING *, const UNICODE_STRING *, const UNICODE_STRING *, const UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateProcessParametersEx (RTL_USER_PROCESS_PARAMETERS **, const UNICODE_STRING *, const UNICODE_STRING *, const UNICODE_STRING *, const UNICODE_STRING *, PWSTR, const UNICODE_STRING *, const UNICODE_STRING *, const UNICODE_STRING *, const UNICODE_STRING *, ULONG)
 
NTSYSAPI PDEBUG_BUFFER WINAPI RtlCreateQueryDebugBuffer (ULONG, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateRegistryKey (ULONG, PWSTR)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateSecurityDescriptor (PSECURITY_DESCRIPTOR, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateTimer (HANDLE, HANDLE *, RTL_WAITORTIMERCALLBACKFUNC, PVOID, DWORD, DWORD, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateTimerQueue (PHANDLE)
 
NTSYSAPI BOOLEAN WINAPI RtlCreateUnicodeString (PUNICODE_STRING, LPCWSTR)
 
NTSYSAPI BOOLEAN WINAPI RtlCreateUnicodeStringFromAsciiz (PUNICODE_STRING, LPCSTR)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateUserProcess (UNICODE_STRING *, ULONG, RTL_USER_PROCESS_PARAMETERS *, SECURITY_DESCRIPTOR *, SECURITY_DESCRIPTOR *, HANDLE, BOOLEAN, HANDLE, HANDLE, RTL_USER_PROCESS_INFORMATION *)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateUserStack (SIZE_T, SIZE_T, ULONG, SIZE_T, SIZE_T, INITIAL_TEB *)
 
NTSYSAPI NTSTATUS WINAPI RtlCreateUserThread (HANDLE, SECURITY_DESCRIPTOR *, BOOLEAN, ULONG, SIZE_T, SIZE_T, PRTL_THREAD_START_ROUTINE, void *, HANDLE *, CLIENT_ID *)
 
NTSYSAPI NTSTATUS WINAPI RtlCustomCPToUnicodeN (CPTABLEINFO *, WCHAR *, DWORD, DWORD *, const char *, DWORD)
 
NTSYSAPI PRTL_USER_PROCESS_PARAMETERS WINAPI RtlDeNormalizeProcessParams (RTL_USER_PROCESS_PARAMETERS *)
 
NTSYSAPI void WINAPI RtlDeactivateActivationContext (DWORD, ULONG_PTR)
 
NTSYSAPI PVOID WINAPI RtlDecodePointer (PVOID)
 
NTSYSAPI NTSTATUS WINAPI RtlDecompressBuffer (USHORT, PUCHAR, ULONG, PUCHAR, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlDecompressFragment (USHORT, PUCHAR, ULONG, PUCHAR, ULONG, ULONG, PULONG, PVOID)
 
NTSYSAPI NTSTATUS WINAPI RtlDefaultNpAcl (PACL *)
 
NTSYSAPI NTSTATUS WINAPI RtlDeleteAce (PACL, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlDeleteAtomFromAtomTable (RTL_ATOM_TABLE, RTL_ATOM)
 
NTSYSAPI NTSTATUS WINAPI RtlDeleteCriticalSection (RTL_CRITICAL_SECTION *)
 
NTSYSAPI NTSTATUS WINAPI RtlDeleteRegistryValue (ULONG, PCWSTR, PCWSTR)
 
NTSYSAPI void WINAPI RtlDeleteResource (LPRTL_RWLOCK)
 
NTSYSAPI NTSTATUS WINAPI RtlDeleteSecurityObject (PSECURITY_DESCRIPTOR *)
 
NTSYSAPI NTSTATUS WINAPI RtlDeleteTimer (HANDLE, HANDLE, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI RtlDeleteTimerQueueEx (HANDLE, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI RtlDeregisterWait (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI RtlDeregisterWaitEx (HANDLE, HANDLE)
 
NTSYSAPI NTSTATUS WINAPI RtlDestroyAtomTable (RTL_ATOM_TABLE)
 
NTSYSAPI NTSTATUS WINAPI RtlDestroyEnvironment (PWSTR)
 
NTSYSAPI NTSTATUS WINAPI RtlDestroyHandleTable (RTL_HANDLE_TABLE *)
 
NTSYSAPI HANDLE WINAPI RtlDestroyHeap (HANDLE)
 
NTSYSAPI void WINAPI RtlDestroyProcessParameters (RTL_USER_PROCESS_PARAMETERS *)
 
NTSYSAPI NTSTATUS WINAPI RtlDestroyQueryDebugBuffer (PDEBUG_BUFFER)
 
NTSYSAPI DOS_PATHNAME_TYPE WINAPI RtlDetermineDosPathNameType_U (PCWSTR)
 
NTSYSAPI BOOLEAN WINAPI RtlDllShutdownInProgress (void)
 
NTSYSAPI BOOLEAN WINAPI RtlDoesFileExists_U (LPCWSTR)
 
NTSYSAPI BOOLEAN WINAPI RtlDosPathNameToNtPathName_U (PCWSTR, PUNICODE_STRING, PWSTR *, CURDIR *)
 
NTSYSAPI NTSTATUS WINAPI RtlDosPathNameToNtPathName_U_WithStatus (PCWSTR, PUNICODE_STRING, PWSTR *, CURDIR *)
 
NTSYSAPI BOOLEAN WINAPI RtlDosPathNameToRelativeNtPathName_U (PCWSTR, PUNICODE_STRING, PWSTR *, RTL_RELATIVE_NAME *)
 
NTSYSAPI NTSTATUS WINAPI RtlDosPathNameToRelativeNtPathName_U_WithStatus (PCWSTR, PUNICODE_STRING, PWSTR *, RTL_RELATIVE_NAME *)
 
NTSYSAPI ULONG WINAPI RtlDosSearchPath_U (LPCWSTR, LPCWSTR, LPCWSTR, ULONG, LPWSTR, LPWSTR *)
 
NTSYSAPI WCHAR WINAPI RtlDowncaseUnicodeChar (WCHAR)
 
NTSYSAPI NTSTATUS WINAPI RtlDowncaseUnicodeString (UNICODE_STRING *, const UNICODE_STRING *, BOOLEAN)
 
NTSYSAPI void WINAPI RtlDumpResource (LPRTL_RWLOCK)
 
NTSYSAPI NTSTATUS WINAPI RtlDuplicateUnicodeString (int, const UNICODE_STRING *, UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlEmptyAtomTable (RTL_ATOM_TABLE, BOOLEAN)
 
NTSYSAPI PVOID WINAPI RtlEncodePointer (PVOID)
 
NTSYSAPI NTSTATUS WINAPI RtlEnterCriticalSection (RTL_CRITICAL_SECTION *)
 
NTSYSAPI void WINAPI RtlEraseUnicodeString (UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlEqualComputerName (const UNICODE_STRING *, const UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlEqualDomainName (const UNICODE_STRING *, const UNICODE_STRING *)
 
NTSYSAPI BOOLEAN WINAPI RtlEqualLuid (const LUID *, const LUID *)
 
NTSYSAPI BOOL WINAPI RtlEqualPrefixSid (PSID, PSID)
 
NTSYSAPI BOOL WINAPI RtlEqualSid (PSID, PSID)
 
NTSYSAPI BOOLEAN WINAPI RtlEqualUnicodeString (const UNICODE_STRING *, const UNICODE_STRING *, BOOLEAN)
 
NTSYSAPI void DECLSPEC_NORETURN WINAPI RtlExitUserProcess (ULONG)
 
NTSYSAPI void DECLSPEC_NORETURN WINAPI RtlExitUserThread (ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlExpandEnvironmentStrings (const WCHAR *, WCHAR *, SIZE_T, WCHAR *, SIZE_T, SIZE_T *)
 
NTSYSAPI NTSTATUS WINAPI RtlExpandEnvironmentStrings_U (PCWSTR, const UNICODE_STRING *, UNICODE_STRING *, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI RtlFindActivationContextSectionString (ULONG, const GUID *, ULONG, const UNICODE_STRING *, PVOID)
 
NTSYSAPI NTSTATUS WINAPI RtlFindActivationContextSectionGuid (ULONG, const GUID *, ULONG, const GUID *, PVOID)
 
NTSYSAPI NTSTATUS WINAPI RtlFindCharInUnicodeString (int, const UNICODE_STRING *, const UNICODE_STRING *, USHORT *)
 
NTSYSAPI ULONG WINAPI RtlFindClearBits (PCRTL_BITMAP, ULONG, ULONG)
 
NTSYSAPI ULONG WINAPI RtlFindClearBitsAndSet (PRTL_BITMAP, ULONG, ULONG)
 
NTSYSAPI ULONG WINAPI RtlFindClearRuns (PCRTL_BITMAP, PRTL_BITMAP_RUN, ULONG, BOOLEAN)
 
NTSYSAPI void *WINAPI RtlFindExportedRoutineByName (HMODULE, const char *)
 
NTSYSAPI ULONG WINAPI RtlFindLastBackwardRunSet (PCRTL_BITMAP, ULONG, PULONG)
 
NTSYSAPI ULONG WINAPI RtlFindLastBackwardRunClear (PCRTL_BITMAP, ULONG, PULONG)
 
NTSYSAPI CCHAR WINAPI RtlFindLeastSignificantBit (ULONGLONG)
 
NTSYSAPI ULONG WINAPI RtlFindLongestRunSet (PCRTL_BITMAP, PULONG)
 
NTSYSAPI ULONG WINAPI RtlFindLongestRunClear (PCRTL_BITMAP, PULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlFindMessage (HMODULE, ULONG, ULONG, ULONG, const MESSAGE_RESOURCE_ENTRY **)
 
NTSYSAPI CCHAR WINAPI RtlFindMostSignificantBit (ULONGLONG)
 
NTSYSAPI ULONG WINAPI RtlFindNextForwardRunSet (PCRTL_BITMAP, ULONG, PULONG)
 
NTSYSAPI ULONG WINAPI RtlFindNextForwardRunClear (PCRTL_BITMAP, ULONG, PULONG)
 
NTSYSAPI ULONG WINAPI RtlFindSetBits (PCRTL_BITMAP, ULONG, ULONG)
 
NTSYSAPI ULONG WINAPI RtlFindSetBitsAndClear (PRTL_BITMAP, ULONG, ULONG)
 
NTSYSAPI ULONG WINAPI RtlFindSetRuns (PCRTL_BITMAP, PRTL_BITMAP_RUN, ULONG, BOOLEAN)
 
NTSYSAPI BOOLEAN WINAPI RtlFirstFreeAce (PACL, PACE_HEADER *)
 
NTSYSAPI NTSTATUS WINAPI RtlFlsAlloc (PFLS_CALLBACK_FUNCTION, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI RtlFlsFree (ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlFlsGetValue (ULONG, void **)
 
NTSYSAPI NTSTATUS WINAPI RtlFlsSetValue (ULONG, void *)
 
NTSYSAPI NTSTATUS WINAPI RtlFormatCurrentUserKeyPath (PUNICODE_STRING)
 
NTSYSAPI void WINAPI RtlFreeActivationContextStack (ACTIVATION_CONTEXT_STACK *)
 
NTSYSAPI void WINAPI RtlFreeAnsiString (PANSI_STRING)
 
NTSYSAPI BOOLEAN WINAPI RtlFreeHandle (RTL_HANDLE_TABLE *, RTL_HANDLE *)
 
NTSYSAPI void WINAPI RtlFreeOemString (POEM_STRING)
 
NTSYSAPI DWORD WINAPI RtlFreeSid (PSID)
 
NTSYSAPI void WINAPI RtlFreeThreadActivationContextStack (void)
 
NTSYSAPI void WINAPI RtlFreeUnicodeString (PUNICODE_STRING)
 
NTSYSAPI void WINAPI RtlFreeUserStack (void *)
 
NTSYSAPI NTSTATUS WINAPI RtlGUIDFromString (PUNICODE_STRING, GUID *)
 
NTSYSAPI NTSTATUS WINAPI RtlGetAce (PACL, DWORD, LPVOID *)
 
NTSYSAPI NTSTATUS WINAPI RtlGetActiveActivationContext (HANDLE *)
 
NTSYSAPI NTSTATUS WINAPI RtlGetCompressionWorkSpaceSize (USHORT, PULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlGetControlSecurityDescriptor (PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR_CONTROL, LPDWORD)
 
NTSYSAPI ULONG WINAPI RtlGetCurrentDirectory_U (ULONG, LPWSTR)
 
NTSYSAPI PEB *WINAPI RtlGetCurrentPeb (void)
 
NTSYSAPI void WINAPI RtlGetCurrentProcessorNumberEx (PROCESSOR_NUMBER *)
 
NTSYSAPI HANDLE WINAPI RtlGetCurrentTransaction (void)
 
NTSYSAPI NTSTATUS WINAPI RtlGetDaclSecurityDescriptor (PSECURITY_DESCRIPTOR, PBOOLEAN, PACL *, PBOOLEAN)
 
NTSYSAPI ULONG64 WINAPI RtlGetEnabledExtendedFeatures (ULONG64)
 
NTSYSAPI NTSTATUS WINAPI RtlGetExePath (PCWSTR, PWSTR *)
 
NTSYSAPI NTSTATUS WINAPI RtlGetExtendedContextLength (ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI RtlGetExtendedContextLength2 (ULONG, ULONG *, ULONG64)
 
NTSYSAPI ULONG64 WINAPI RtlGetExtendedFeaturesMask (CONTEXT_EX *)
 
NTSYSAPI TEB_ACTIVE_FRAME *WINAPI RtlGetFrame (void)
 
NTSYSAPI ULONG WINAPI RtlGetFullPathName_U (PCWSTR, ULONG, PWSTR, PWSTR *)
 
NTSYSAPI NTSTATUS WINAPI RtlGetGroupSecurityDescriptor (PSECURITY_DESCRIPTOR, PSID *, PBOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlGetLastNtStatus (void)
 
NTSYSAPI DWORD WINAPI RtlGetLastWin32Error (void)
 
NTSYSAPI NTSTATUS WINAPI RtlGetLocaleFileMappingAddress (void **, LCID *, LARGE_INTEGER *)
 
NTSYSAPI DWORD WINAPI RtlGetLongestNtPathLength (void)
 
NTSYSAPI NTSTATUS WINAPI RtlGetNativeSystemInformation (SYSTEM_INFORMATION_CLASS, void *, ULONG, ULONG *)
 
NTSYSAPI ULONG WINAPI RtlGetNtGlobalFlags (void)
 
NTSYSAPI BOOLEAN WINAPI RtlGetNtProductType (LPDWORD)
 
NTSYSAPI void WINAPI RtlGetNtVersionNumbers (LPDWORD, LPDWORD, LPDWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlGetOwnerSecurityDescriptor (PSECURITY_DESCRIPTOR, PSID *, PBOOLEAN)
 
NTSYSAPI ULONG WINAPI RtlGetProcessHeaps (ULONG, HANDLE *)
 
NTSYSAPI NTSTATUS WINAPI RtlGetProcessPreferredUILanguages (DWORD, ULONG *, WCHAR *, ULONG *)
 
NTSYSAPI BOOLEAN WINAPI RtlGetProductInfo (DWORD, DWORD, DWORD, DWORD, PDWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlGetSaclSecurityDescriptor (PSECURITY_DESCRIPTOR, PBOOLEAN, PACL *, PBOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlGetSearchPath (PWSTR *)
 
NTSYSAPI NTSTATUS WINAPI RtlGetSystemPreferredUILanguages (DWORD, ULONG, ULONG *, WCHAR *, ULONG *)
 
NTSYSAPI LONGLONG WINAPI RtlGetSystemTimePrecise (void)
 
NTSYSAPI DWORD WINAPI RtlGetThreadErrorMode (void)
 
NTSYSAPI NTSTATUS WINAPI RtlGetThreadPreferredUILanguages (DWORD, ULONG *, WCHAR *, ULONG *)
 
NTSYSAPI BOOLEAN WINAPI RtlGetUserInfoHeap (HANDLE, ULONG, void *, void **, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI RtlGetUserPreferredUILanguages (DWORD, ULONG, ULONG *, WCHAR *, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI RtlGetVersion (RTL_OSVERSIONINFOEXW *)
 
NTSYSAPI NTSTATUS WINAPI RtlHashUnicodeString (const UNICODE_STRING *, BOOLEAN, ULONG, ULONG *)
 
NTSYSAPI PSID_IDENTIFIER_AUTHORITY WINAPI RtlIdentifierAuthoritySid (PSID)
 
NTSYSAPI NTSTATUS WINAPI RtlIdnToAscii (DWORD, const WCHAR *, INT, WCHAR *, INT *)
 
NTSYSAPI NTSTATUS WINAPI RtlIdnToNameprepUnicode (DWORD, const WCHAR *, INT, WCHAR *, INT *)
 
NTSYSAPI NTSTATUS WINAPI RtlIdnToUnicode (DWORD, const WCHAR *, INT, WCHAR *, INT *)
 
NTSYSAPI PVOID WINAPI RtlImageDirectoryEntryToData (HMODULE, BOOL, WORD, ULONG *)
 
NTSYSAPI PIMAGE_NT_HEADERS WINAPI RtlImageNtHeader (HMODULE)
 
NTSYSAPI PIMAGE_SECTION_HEADER WINAPI RtlImageRvaToSection (const IMAGE_NT_HEADERS *, HMODULE, DWORD)
 
NTSYSAPI PVOID WINAPI RtlImageRvaToVa (const IMAGE_NT_HEADERS *, HMODULE, DWORD, IMAGE_SECTION_HEADER **)
 
NTSYSAPI NTSTATUS WINAPI RtlImpersonateSelf (SECURITY_IMPERSONATION_LEVEL)
 
NTSYSAPI void WINAPI RtlInitAnsiString (PANSI_STRING, PCSZ)
 
NTSYSAPI NTSTATUS WINAPI RtlInitAnsiStringEx (PANSI_STRING, PCSZ)
 
NTSYSAPI void WINAPI RtlInitCodePageTable (USHORT *, CPTABLEINFO *)
 
NTSYSAPI void WINAPI RtlInitNlsTables (USHORT *, USHORT *, USHORT *, NLSTABLEINFO *)
 
NTSYSAPI void WINAPI RtlInitString (PSTRING, PCSZ)
 
NTSYSAPI void WINAPI RtlInitUnicodeString (PUNICODE_STRING, PCWSTR)
 
NTSYSAPI NTSTATUS WINAPI RtlInitUnicodeStringEx (PUNICODE_STRING, PCWSTR)
 
NTSYSAPI void WINAPI RtlInitializeBitMap (PRTL_BITMAP, PULONG, ULONG)
 
NTSYSAPI void WINAPI RtlInitializeConditionVariable (RTL_CONDITION_VARIABLE *)
 
NTSYSAPI NTSTATUS WINAPI RtlInitializeCriticalSection (RTL_CRITICAL_SECTION *)
 
NTSYSAPI NTSTATUS WINAPI RtlInitializeCriticalSectionAndSpinCount (RTL_CRITICAL_SECTION *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlInitializeCriticalSectionEx (RTL_CRITICAL_SECTION *, ULONG, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlInitializeExtendedContext (void *, ULONG, CONTEXT_EX **)
 
NTSYSAPI NTSTATUS WINAPI RtlInitializeExtendedContext2 (void *, ULONG, CONTEXT_EX **, ULONG64)
 
NTSYSAPI void WINAPI RtlInitializeHandleTable (ULONG, ULONG, RTL_HANDLE_TABLE *)
 
NTSYSAPI NTSTATUS WINAPI RtlInitializeNtUserPfn (const void *, ULONG, const void *, ULONG, const void *, ULONG)
 
NTSYSAPI void WINAPI RtlInitializeResource (LPRTL_RWLOCK)
 
NTSYSAPI void WINAPI RtlInitializeSRWLock (RTL_SRWLOCK *)
 
NTSYSAPI NTSTATUS WINAPI RtlInitializeSid (PSID, PSID_IDENTIFIER_AUTHORITY, BYTE)
 
NTSYSAPI NTSTATUS WINAPI RtlInt64ToUnicodeString (ULONGLONG, ULONG, UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlIntegerToChar (ULONG, ULONG, ULONG, PCHAR)
 
NTSYSAPI NTSTATUS WINAPI RtlIntegerToUnicodeString (ULONG, ULONG, UNICODE_STRING *)
 
NTSYSAPI BOOLEAN WINAPI RtlIsActivationContextActive (HANDLE)
 
NTSYSAPI BOOL WINAPI RtlIsCriticalSectionLocked (RTL_CRITICAL_SECTION *)
 
NTSYSAPI BOOL WINAPI RtlIsCriticalSectionLockedByThread (RTL_CRITICAL_SECTION *)
 
NTSYSAPI BOOLEAN WINAPI RtlIsCurrentProcess (HANDLE)
 
NTSYSAPI BOOLEAN WINAPI RtlIsCurrentThread (HANDLE)
 
NTSYSAPI ULONG WINAPI RtlIsDosDeviceName_U (PCWSTR)
 
NTSYSAPI BOOLEAN WINAPI RtlIsNameLegalDOS8Dot3 (const UNICODE_STRING *, POEM_STRING, PBOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlIsNormalizedString (ULONG, const WCHAR *, INT, BOOLEAN *)
 
NTSYSAPI BOOLEAN WINAPI RtlIsProcessorFeaturePresent (UINT)
 
NTSYSAPI BOOLEAN WINAPI RtlIsTextUnicode (LPCVOID, INT, INT *)
 
NTSYSAPI BOOLEAN WINAPI RtlIsValidHandle (const RTL_HANDLE_TABLE *, const RTL_HANDLE *)
 
NTSYSAPI BOOLEAN WINAPI RtlIsValidIndexHandle (const RTL_HANDLE_TABLE *, ULONG Index, RTL_HANDLE **)
 
NTSYSAPI BOOLEAN WINAPI RtlIsValidLocaleName (const WCHAR *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlLcidToLocaleName (LCID, UNICODE_STRING *, ULONG, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlLeaveCriticalSection (RTL_CRITICAL_SECTION *)
 
NTSYSAPI DWORD WINAPI RtlLengthRequiredSid (DWORD)
 
NTSYSAPI ULONG WINAPI RtlLengthSecurityDescriptor (PSECURITY_DESCRIPTOR)
 
NTSYSAPI DWORD WINAPI RtlLengthSid (PSID)
 
NTSYSAPI NTSTATUS WINAPI RtlLocalTimeToSystemTime (const LARGE_INTEGER *, PLARGE_INTEGER)
 
NTSYSAPI NTSTATUS WINAPI RtlLocaleNameToLcid (const WCHAR *, LCID *, ULONG)
 
NTSYSAPI void *WINAPI RtlLocateExtendedFeature (CONTEXT_EX *, ULONG, ULONG *)
 
NTSYSAPI void *WINAPI RtlLocateExtendedFeature2 (CONTEXT_EX *, ULONG, XSTATE_CONFIGURATION *, ULONG *)
 
NTSYSAPI void *WINAPI RtlLocateLegacyContext (CONTEXT_EX *, ULONG *)
 
NTSYSAPI BOOLEAN WINAPI RtlLockHeap (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI RtlLookupAtomInAtomTable (RTL_ATOM_TABLE, const WCHAR *, RTL_ATOM *)
 
NTSYSAPI NTSTATUS WINAPI RtlMakeSelfRelativeSD (PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, LPDWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlMultiByteToUnicodeN (LPWSTR, DWORD, LPDWORD, LPCSTR, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlMultiByteToUnicodeSize (DWORD *, LPCSTR, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlNewSecurityObject (PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR *, BOOLEAN, HANDLE, PGENERIC_MAPPING)
 
NTSYSAPI NTSTATUS WINAPI RtlNewSecurityObjectEx (PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR *, GUID *, BOOLEAN, ULONG, HANDLE, PGENERIC_MAPPING)
 
NTSYSAPI NTSTATUS WINAPI RtlNewSecurityObjectWithMultipleInheritance (PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR *, GUID **, ULONG, BOOLEAN, ULONG, HANDLE, PGENERIC_MAPPING)
 
NTSYSAPI PRTL_USER_PROCESS_PARAMETERS WINAPI RtlNormalizeProcessParams (RTL_USER_PROCESS_PARAMETERS *)
 
NTSYSAPI NTSTATUS WINAPI RtlNormalizeString (ULONG, const WCHAR *, INT, WCHAR *, INT *)
 
NTSYSAPI ULONG WINAPI RtlNtStatusToDosError (NTSTATUS)
 
NTSYSAPI ULONG WINAPI RtlNtStatusToDosErrorNoTeb (NTSTATUS)
 
NTSYSAPI ULONG WINAPI RtlNumberOfSetBits (PCRTL_BITMAP)
 
NTSYSAPI ULONG WINAPI RtlNumberOfClearBits (PCRTL_BITMAP)
 
NTSYSAPI ULONG WINAPI RtlOemStringToUnicodeSize (const STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlOemStringToUnicodeString (UNICODE_STRING *, const STRING *, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlOemToUnicodeN (LPWSTR, DWORD, LPDWORD, LPCSTR, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlOpenCurrentUser (ACCESS_MASK, PHANDLE)
 
NTSYSAPI NTSTATUS WINAPI RtlPinAtomInAtomTable (RTL_ATOM_TABLE, RTL_ATOM)
 
NTSYSAPI void WINAPI RtlPopFrame (TEB_ACTIVE_FRAME *)
 
NTSYSAPI BOOLEAN WINAPI RtlPrefixString (const STRING *, const STRING *, BOOLEAN)
 
NTSYSAPI void WINAPI RtlProcessFlsData (void *, ULONG)
 
NTSYSAPI void WINAPI RtlPushFrame (TEB_ACTIVE_FRAME *)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryActivationContextApplicationSettings (DWORD, HANDLE, const WCHAR *, const WCHAR *, WCHAR *, SIZE_T, SIZE_T *)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryAtomInAtomTable (RTL_ATOM_TABLE, RTL_ATOM, ULONG *, ULONG *, WCHAR *, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryDynamicTimeZoneInformation (RTL_DYNAMIC_TIME_ZONE_INFORMATION *)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryEnvironmentVariable (WCHAR *, const WCHAR *, SIZE_T, WCHAR *, SIZE_T, SIZE_T *)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryEnvironmentVariable_U (PWSTR, PUNICODE_STRING, PUNICODE_STRING)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryHeapInformation (HANDLE, HEAP_INFORMATION_CLASS, PVOID, SIZE_T, PSIZE_T)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryInformationAcl (PACL, LPVOID, DWORD, ACL_INFORMATION_CLASS)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryInformationActivationContext (ULONG, HANDLE, PVOID, ULONG, PVOID, SIZE_T, SIZE_T *)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryPackageIdentity (HANDLE, WCHAR *, SIZE_T *, WCHAR *, SIZE_T *, BOOLEAN *)
 
NTSYSAPI BOOL WINAPI RtlQueryPerformanceCounter (LARGE_INTEGER *)
 
NTSYSAPI BOOL WINAPI RtlQueryPerformanceFrequency (LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryProcessDebugInformation (ULONG, ULONG, PDEBUG_BUFFER)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryRegistryValues (ULONG, PCWSTR, PRTL_QUERY_REGISTRY_TABLE, PVOID, PVOID)
 
NTSYSAPI NTSTATUS WINAPI RtlQueryTimeZoneInformation (RTL_TIME_ZONE_INFORMATION *)
 
NTSYSAPI BOOL WINAPI RtlQueryUnbiasedInterruptTime (ULONGLONG *)
 
NTSYSAPI NTSTATUS WINAPI RtlQueueWorkItem (PRTL_WORK_ITEM_ROUTINE, PVOID, ULONG)
 
NTSYSAPI void DECLSPEC_NORETURN WINAPI RtlRaiseStatus (NTSTATUS)
 
NTSYSAPI ULONG WINAPI RtlRandom (PULONG)
 
NTSYSAPI ULONG WINAPI RtlRandomEx (PULONG)
 
NTSYSAPI void WINAPI RtlRbInsertNodeEx (RTL_RB_TREE *, RTL_BALANCED_NODE *, BOOLEAN, RTL_BALANCED_NODE *)
 
NTSYSAPI void WINAPI RtlRbRemoveNode (RTL_RB_TREE *, RTL_BALANCED_NODE *)
 
NTSYSAPI PVOID WINAPI RtlReAllocateHeap (HANDLE, ULONG, PVOID, SIZE_T) __WINE_ALLOC_SIZE(4) __WINE_DEALLOC(RtlFreeHeap
 
NTSYSAPI PVOID WINAPI NTSYSAPI NTSTATUS WINAPI RtlRegisterWait (PHANDLE, HANDLE, RTL_WAITORTIMERCALLBACKFUNC, PVOID, ULONG, ULONG)
 
NTSYSAPI void WINAPI RtlReleaseActivationContext (HANDLE)
 
NTSYSAPI void WINAPI RtlReleasePath (PWSTR)
 
NTSYSAPI void WINAPI RtlReleasePebLock (void)
 
NTSYSAPI void WINAPI RtlReleaseRelativeName (RTL_RELATIVE_NAME *)
 
NTSYSAPI void WINAPI RtlReleaseResource (LPRTL_RWLOCK)
 
NTSYSAPI void WINAPI RtlReleaseSRWLockExclusive (RTL_SRWLOCK *)
 
NTSYSAPI void WINAPI RtlReleaseSRWLockShared (RTL_SRWLOCK *)
 
NTSYSAPI ULONG WINAPI RtlRemoveVectoredContinueHandler (PVOID)
 
NTSYSAPI ULONG WINAPI RtlRemoveVectoredExceptionHandler (PVOID)
 
NTSYSAPI NTSTATUS WINAPI RtlRetrieveNtUserPfn (const void **, const void **, const void **)
 
NTSYSAPI NTSTATUS WINAPI RtlResetNtUserPfn (void)
 
NTSYSAPI void WINAPI RtlResetRtlTranslations (const NLSTABLEINFO *)
 
NTSYSAPI void WINAPI RtlRestoreLastWin32Error (DWORD)
 
NTSYSAPI void WINAPI RtlSecondsSince1970ToTime (DWORD, LARGE_INTEGER *)
 
NTSYSAPI void WINAPI RtlSecondsSince1980ToTime (DWORD, LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI RtlSelfRelativeToAbsoluteSD (PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, PDWORD, PACL, PDWORD, PACL, PDWORD, PSID, PDWORD, PSID, PDWORD)
 
NTSYSAPI void WINAPI RtlSetAllBits (PRTL_BITMAP)
 
NTSYSAPI void WINAPI RtlSetBits (PRTL_BITMAP, ULONG, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlSetControlSecurityDescriptor (PSECURITY_DESCRIPTOR, SECURITY_DESCRIPTOR_CONTROL, SECURITY_DESCRIPTOR_CONTROL)
 
NTSYSAPI ULONG WINAPI RtlSetCriticalSectionSpinCount (RTL_CRITICAL_SECTION *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlSetCurrentDirectory_U (const UNICODE_STRING *)
 
NTSYSAPI void WINAPI RtlSetCurrentEnvironment (PWSTR, PWSTR *)
 
NTSYSAPI BOOL WINAPI RtlSetCurrentTransaction (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI RtlSetDaclSecurityDescriptor (PSECURITY_DESCRIPTOR, BOOLEAN, PACL, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlSetEnvironmentVariable (PWSTR *, PUNICODE_STRING, PUNICODE_STRING)
 
NTSYSAPI void WINAPI RtlSetExtendedFeaturesMask (CONTEXT_EX *, ULONG64)
 
NTSYSAPI NTSTATUS WINAPI RtlSetGroupSecurityDescriptor (PSECURITY_DESCRIPTOR, PSID, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlSetHeapInformation (HANDLE, HEAP_INFORMATION_CLASS, PVOID, SIZE_T)
 
NTSYSAPI NTSTATUS WINAPI RtlSetIoCompletionCallback (HANDLE, PRTL_OVERLAPPED_COMPLETION_ROUTINE, ULONG)
 
NTSYSAPI void WINAPI RtlSetLastWin32Error (DWORD)
 
NTSYSAPI void WINAPI RtlSetLastWin32ErrorAndNtStatusFromNtStatus (NTSTATUS)
 
NTSYSAPI NTSTATUS WINAPI RtlSetOwnerSecurityDescriptor (PSECURITY_DESCRIPTOR, PSID, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlSetProcessPreferredUILanguages (DWORD, PCZZWSTR, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI RtlSetSaclSecurityDescriptor (PSECURITY_DESCRIPTOR, BOOLEAN, PACL, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlSetSearchPathMode (ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlSetThreadErrorMode (DWORD, LPDWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlSetThreadPreferredUILanguages (DWORD, PCZZWSTR, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI RtlSetTimeZoneInformation (const RTL_TIME_ZONE_INFORMATION *)
 
NTSYSAPI void WINAPI RtlSetUnhandledExceptionFilter (PRTL_EXCEPTION_FILTER)
 
NTSYSAPI BOOLEAN WINAPI RtlSetUserFlagsHeap (HANDLE, ULONG, void *, ULONG, ULONG)
 
NTSYSAPI BOOLEAN WINAPI RtlSetUserValueHeap (HANDLE, ULONG, void *, void *)
 
NTSYSAPI SIZE_T WINAPI RtlSizeHeap (HANDLE, ULONG, const void *)
 
NTSYSAPI NTSTATUS WINAPI RtlSleepConditionVariableCS (RTL_CONDITION_VARIABLE *, RTL_CRITICAL_SECTION *, const LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI RtlSleepConditionVariableSRW (RTL_CONDITION_VARIABLE *, RTL_SRWLOCK *, const LARGE_INTEGER *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlStringFromGUID (REFGUID, PUNICODE_STRING)
 
NTSYSAPI LPDWORD WINAPI RtlSubAuthoritySid (PSID, DWORD)
 
NTSYSAPI LPBYTE WINAPI RtlSubAuthorityCountSid (PSID)
 
NTSYSAPI NTSTATUS WINAPI RtlSystemTimeToLocalTime (const LARGE_INTEGER *, PLARGE_INTEGER)
 
NTSYSAPI BOOLEAN WINAPI RtlTimeFieldsToTime (PTIME_FIELDS, PLARGE_INTEGER)
 
NTSYSAPI void WINAPI RtlTimeToElapsedTimeFields (const LARGE_INTEGER *, PTIME_FIELDS)
 
NTSYSAPI BOOLEAN WINAPI RtlTimeToSecondsSince1970 (const LARGE_INTEGER *, LPDWORD)
 
NTSYSAPI BOOLEAN WINAPI RtlTimeToSecondsSince1980 (const LARGE_INTEGER *, LPDWORD)
 
NTSYSAPI void WINAPI RtlTimeToTimeFields (const LARGE_INTEGER *, PTIME_FIELDS)
 
NTSYSAPI BOOLEAN WINAPI RtlTryAcquireSRWLockExclusive (RTL_SRWLOCK *)
 
NTSYSAPI BOOLEAN WINAPI RtlTryAcquireSRWLockShared (RTL_SRWLOCK *)
 
NTSYSAPI BOOL WINAPI RtlTryEnterCriticalSection (RTL_CRITICAL_SECTION *)
 
NTSYSAPI NTSTATUS WINAPI RtlUTF8ToUnicodeN (WCHAR *, DWORD, DWORD *, const char *, DWORD)
 
NTSYSAPI DWORD WINAPI RtlUnicodeStringToAnsiSize (const UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlUnicodeStringToAnsiString (PANSI_STRING, PCUNICODE_STRING, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlUnicodeStringToInteger (const UNICODE_STRING *, ULONG, ULONG *)
 
NTSYSAPI DWORD WINAPI RtlUnicodeStringToOemSize (const UNICODE_STRING *)
 
NTSYSAPI NTSTATUS WINAPI RtlUnicodeStringToOemString (POEM_STRING, PCUNICODE_STRING, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlUnicodeToCustomCPN (CPTABLEINFO *, char *, DWORD, DWORD *, const WCHAR *, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlUnicodeToMultiByteN (LPSTR, DWORD, LPDWORD, LPCWSTR, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlUnicodeToMultiByteSize (PULONG, PCWSTR, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlUnicodeToOemN (LPSTR, DWORD, LPDWORD, LPCWSTR, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlUnicodeToUTF8N (LPSTR, DWORD, LPDWORD, LPCWSTR, DWORD)
 
NTSYSAPI ULONG WINAPI RtlUniform (PULONG)
 
NTSYSAPI BOOLEAN WINAPI RtlUnlockHeap (HANDLE)
 
NTSYSAPI WCHAR WINAPI RtlUpcaseUnicodeChar (WCHAR)
 
NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeStringToAnsiString (STRING *, const UNICODE_STRING *, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeStringToCountedOemString (STRING *, const UNICODE_STRING *, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeStringToOemString (STRING *, const UNICODE_STRING *, BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeToCustomCPN (CPTABLEINFO *, char *, DWORD, DWORD *, const WCHAR *, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeToMultiByteN (LPSTR, DWORD, LPDWORD, LPCWSTR, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeToOemN (LPSTR, DWORD, LPDWORD, LPCWSTR, DWORD)
 
NTSYSAPI NTSTATUS WINAPI RtlUpdateTimer (HANDLE, HANDLE, DWORD, DWORD)
 
NTSYSAPI void WINAPI RtlUserThreadStart (PRTL_THREAD_START_ROUTINE, void *)
 
NTSYSAPI BOOLEAN WINAPI RtlValidAcl (PACL)
 
NTSYSAPI BOOLEAN WINAPI RtlValidRelativeSecurityDescriptor (PSECURITY_DESCRIPTOR, ULONG, SECURITY_INFORMATION)
 
NTSYSAPI BOOLEAN WINAPI RtlValidSecurityDescriptor (PSECURITY_DESCRIPTOR)
 
NTSYSAPI BOOLEAN WINAPI RtlValidSid (PSID)
 
NTSYSAPI BOOLEAN WINAPI RtlValidateHeap (HANDLE, ULONG, LPCVOID)
 
NTSYSAPI NTSTATUS WINAPI RtlVerifyVersionInfo (const RTL_OSVERSIONINFOEXW *, DWORD, DWORDLONG)
 
NTSYSAPI NTSTATUS WINAPI RtlWaitOnAddress (const void *, const void *, SIZE_T, const LARGE_INTEGER *)
 
NTSYSAPI void WINAPI RtlWakeAddressAll (const void *)
 
NTSYSAPI void WINAPI RtlWakeAddressSingle (const void *)
 
NTSYSAPI void WINAPI RtlWakeAllConditionVariable (RTL_CONDITION_VARIABLE *)
 
NTSYSAPI void WINAPI RtlWakeConditionVariable (RTL_CONDITION_VARIABLE *)
 
NTSYSAPI NTSTATUS WINAPI RtlWalkHeap (HANDLE, PVOID)
 
NTSYSAPI NTSTATUS WINAPI RtlWow64EnableFsRedirection (BOOLEAN)
 
NTSYSAPI NTSTATUS WINAPI RtlWow64EnableFsRedirectionEx (ULONG, ULONG *)
 
NTSYSAPI USHORT WINAPI RtlWow64GetCurrentMachine (void)
 
NTSYSAPI NTSTATUS WINAPI RtlWow64GetProcessMachines (HANDLE, USHORT *, USHORT *)
 
NTSYSAPI NTSTATUS WINAPI RtlWow64GetSharedInfoProcess (HANDLE, BOOLEAN *, WOW64INFO *)
 
NTSYSAPI NTSTATUS WINAPI RtlWow64IsWowGuestMachineSupported (USHORT, BOOLEAN *)
 
NTSYSAPI NTSTATUS WINAPI RtlWriteRegistryValue (ULONG, PCWSTR, PCWSTR, ULONG, PVOID, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlZombifyActivationContext (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI RtlpNtCreateKey (PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, ULONG, const UNICODE_STRING *, ULONG, PULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlpNtEnumerateSubKey (HANDLE, UNICODE_STRING *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlpNtMakeTemporaryKey (HANDLE)
 
NTSYSAPI NTSTATUS WINAPI RtlpNtOpenKey (PHANDLE, ACCESS_MASK, OBJECT_ATTRIBUTES *)
 
NTSYSAPI NTSTATUS WINAPI RtlpNtSetValueKey (HANDLE, ULONG, const void *, ULONG)
 
NTSYSAPI NTSTATUS WINAPI RtlpWaitForCriticalSection (RTL_CRITICAL_SECTION *)
 
NTSYSAPI NTSTATUS WINAPI RtlpUnWaitCriticalSection (RTL_CRITICAL_SECTION *)
 
NTSYSAPI NTSTATUS WINAPI TpAllocCleanupGroup (TP_CLEANUP_GROUP **)
 
NTSYSAPI NTSTATUS WINAPI TpAllocIoCompletion (TP_IO **, HANDLE, PTP_IO_CALLBACK, void *, TP_CALLBACK_ENVIRON *)
 
NTSYSAPI NTSTATUS WINAPI TpAllocPool (TP_POOL **, PVOID)
 
NTSYSAPI NTSTATUS WINAPI TpAllocTimer (TP_TIMER **, PTP_TIMER_CALLBACK, PVOID, TP_CALLBACK_ENVIRON *)
 
NTSYSAPI NTSTATUS WINAPI TpAllocWait (TP_WAIT **, PTP_WAIT_CALLBACK, PVOID, TP_CALLBACK_ENVIRON *)
 
NTSYSAPI NTSTATUS WINAPI TpAllocWork (TP_WORK **, PTP_WORK_CALLBACK, PVOID, TP_CALLBACK_ENVIRON *)
 
NTSYSAPI void WINAPI TpCallbackLeaveCriticalSectionOnCompletion (TP_CALLBACK_INSTANCE *, RTL_CRITICAL_SECTION *)
 
NTSYSAPI NTSTATUS WINAPI TpCallbackMayRunLong (TP_CALLBACK_INSTANCE *)
 
NTSYSAPI void WINAPI TpCallbackReleaseMutexOnCompletion (TP_CALLBACK_INSTANCE *, HANDLE)
 
NTSYSAPI void WINAPI TpCallbackReleaseSemaphoreOnCompletion (TP_CALLBACK_INSTANCE *, HANDLE, DWORD)
 
NTSYSAPI void WINAPI TpCallbackSetEventOnCompletion (TP_CALLBACK_INSTANCE *, HANDLE)
 
NTSYSAPI void WINAPI TpCallbackUnloadDllOnCompletion (TP_CALLBACK_INSTANCE *, HMODULE)
 
NTSYSAPI void WINAPI TpCancelAsyncIoOperation (TP_IO *)
 
NTSYSAPI void WINAPI TpDisassociateCallback (TP_CALLBACK_INSTANCE *)
 
NTSYSAPI BOOL WINAPI TpIsTimerSet (TP_TIMER *)
 
NTSYSAPI void WINAPI TpPostWork (TP_WORK *)
 
NTSYSAPI NTSTATUS WINAPI TpQueryPoolStackInformation (TP_POOL *, TP_POOL_STACK_INFORMATION *stack_info)
 
NTSYSAPI void WINAPI TpReleaseCleanupGroup (TP_CLEANUP_GROUP *)
 
NTSYSAPI void WINAPI TpReleaseCleanupGroupMembers (TP_CLEANUP_GROUP *, BOOL, PVOID)
 
NTSYSAPI void WINAPI TpReleaseIoCompletion (TP_IO *)
 
NTSYSAPI void WINAPI TpReleasePool (TP_POOL *)
 
NTSYSAPI void WINAPI TpReleaseTimer (TP_TIMER *)
 
NTSYSAPI void WINAPI TpReleaseWait (TP_WAIT *)
 
NTSYSAPI void WINAPI TpReleaseWork (TP_WORK *)
 
NTSYSAPI void WINAPI TpSetPoolMaxThreads (TP_POOL *, DWORD)
 
NTSYSAPI BOOL WINAPI TpSetPoolMinThreads (TP_POOL *, DWORD)
 
NTSYSAPI NTSTATUS WINAPI TpSetPoolStackInformation (TP_POOL *, TP_POOL_STACK_INFORMATION *stack_info)
 
NTSYSAPI void WINAPI TpSetTimer (TP_TIMER *, LARGE_INTEGER *, LONG, LONG)
 
NTSYSAPI void WINAPI TpSetWait (TP_WAIT *, HANDLE, LARGE_INTEGER *)
 
NTSYSAPI NTSTATUS WINAPI TpSimpleTryPost (PTP_SIMPLE_CALLBACK, PVOID, TP_CALLBACK_ENVIRON *)
 
NTSYSAPI void WINAPI TpStartAsyncIoOperation (TP_IO *)
 
NTSYSAPI void WINAPI TpWaitForIoCompletion (TP_IO *, BOOL)
 
NTSYSAPI void WINAPI TpWaitForTimer (TP_TIMER *, BOOL)
 
NTSYSAPI void WINAPI TpWaitForWait (TP_WAIT *, BOOL)
 
NTSYSAPI void WINAPI TpWaitForWork (TP_WORK *, BOOL)
 
NTSYSAPI NTSTATUS WINAPI NtWow64AllocateVirtualMemory64 (HANDLE, ULONG64 *, ULONG64, ULONG64 *, ULONG, ULONG)
 
NTSYSAPI NTSTATUS WINAPI NtWow64GetNativeSystemInformation (SYSTEM_INFORMATION_CLASS, void *, ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtWow64IsProcessorFeaturePresent (UINT)
 
NTSYSAPI NTSTATUS WINAPI NtWow64QueryInformationProcess64 (HANDLE, PROCESSINFOCLASS, void *, ULONG, ULONG *)
 
NTSYSAPI NTSTATUS WINAPI NtWow64ReadVirtualMemory64 (HANDLE, ULONG64, void *, ULONG64, ULONG64 *)
 
NTSYSAPI NTSTATUS WINAPI NtWow64WriteVirtualMemory64 (HANDLE, ULONG64, const void *, ULONG64, ULONG64 *)
 
NTSYSAPI LONGLONG WINAPI RtlConvertLongToLargeInteger (LONG)
 
NTSYSAPI ULONGLONG WINAPI RtlConvertUlongToLargeInteger (ULONG)
 
NTSYSAPI LONGLONG WINAPI RtlEnlargedIntegerMultiply (INT, INT)
 
NTSYSAPI ULONGLONG WINAPI RtlEnlargedUnsignedMultiply (UINT, UINT)
 
NTSYSAPI UINT WINAPI RtlEnlargedUnsignedDivide (ULONGLONG, UINT, UINT *)
 
NTSYSAPI LONGLONG WINAPI RtlExtendedMagicDivide (LONGLONG, LONGLONG, INT)
 
NTSYSAPI LONGLONG WINAPI RtlExtendedIntegerMultiply (LONGLONG, INT)
 
NTSYSAPI LONGLONG WINAPI RtlExtendedLargeIntegerDivide (LONGLONG, INT, INT *)
 
NTSYSAPI LONGLONG WINAPI RtlInterlockedCompareExchange64 (LONGLONG *, LONGLONG, LONGLONG)
 
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerAdd (LONGLONG, LONGLONG)
 
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerArithmeticShift (LONGLONG, INT)
 
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerNegate (LONGLONG)
 
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerShiftLeft (LONGLONG, INT)
 
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerShiftRight (LONGLONG, INT)
 
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerSubtract (LONGLONG, LONGLONG)
 
NTSYSAPI NTSTATUS WINAPI RtlLargeIntegerToChar (const ULONGLONG *, ULONG, ULONG, PCHAR)
 
NTSYSAPI NTSTATUS WINAPI wine_nt_to_unix_file_name (const OBJECT_ATTRIBUTES *attr, char *nameA, ULONG *size, UINT disposition)
 
NTSYSAPI NTSTATUS WINAPI wine_unix_to_nt_file_name (const char *name, WCHAR *buffer, ULONG *size)
 
static BOOLEAN RtlCheckBit (PCRTL_BITMAP lpBits, ULONG ulBit)
 
static USHORT RtlUshortByteSwap (USHORT s)
 
static ULONG RtlUlongByteSwap (ULONG i)
 
static ULONGLONG RtlUlonglongByteSwap (ULONGLONG i)
 
static PLIST_ENTRY RemoveHeadList (PLIST_ENTRY le)
 
static PLIST_ENTRY RemoveTailList (PLIST_ENTRY le)
 

Variables

NTSYSAPI PVOID WINAPI __WINE_MALLOC
 

Macro Definition Documentation

◆ __OBJECT_ATTRIBUTES_DEFINED__

#define __OBJECT_ATTRIBUTES_DEFINED__

Definition at line 2662 of file winternl.h.

◆ __STRING_DEFINED__

#define __STRING_DEFINED__

Definition at line 112 of file winternl.h.

◆ __UNICODE_STRING_DEFINED__

#define __UNICODE_STRING_DEFINED__

Definition at line 129 of file winternl.h.

◆ _FILETIME_

#define _FILETIME_

Definition at line 140 of file winternl.h.

◆ CODEINTEGRITY_OPTION_DEBUGMODE_ENABLED

#define CODEINTEGRITY_OPTION_DEBUGMODE_ENABLED   0x0080

Definition at line 2272 of file winternl.h.

◆ CODEINTEGRITY_OPTION_ENABLED

#define CODEINTEGRITY_OPTION_ENABLED   0x0001

Definition at line 2265 of file winternl.h.

◆ CODEINTEGRITY_OPTION_FLIGHT_BUILD

#define CODEINTEGRITY_OPTION_FLIGHT_BUILD   0x0100

Definition at line 2273 of file winternl.h.

◆ CODEINTEGRITY_OPTION_FLIGHTING_ENABLED

#define CODEINTEGRITY_OPTION_FLIGHTING_ENABLED   0x0200

Definition at line 2274 of file winternl.h.

◆ CODEINTEGRITY_OPTION_HVCI_IUM_ENABLED

#define CODEINTEGRITY_OPTION_HVCI_IUM_ENABLED   0x2000

Definition at line 2278 of file winternl.h.

◆ CODEINTEGRITY_OPTION_HVCI_KMCI_AUDITMODE_ENABLED

#define CODEINTEGRITY_OPTION_HVCI_KMCI_AUDITMODE_ENABLED   0x0800

Definition at line 2276 of file winternl.h.

◆ CODEINTEGRITY_OPTION_HVCI_KMCI_ENABLED

#define CODEINTEGRITY_OPTION_HVCI_KMCI_ENABLED   0x0400

Definition at line 2275 of file winternl.h.

◆ CODEINTEGRITY_OPTION_HVCI_KMCI_STRICTMODE_ENABLED

#define CODEINTEGRITY_OPTION_HVCI_KMCI_STRICTMODE_ENABLED   0x1000

Definition at line 2277 of file winternl.h.

◆ CODEINTEGRITY_OPTION_PREPRODUCTION_BUILD

#define CODEINTEGRITY_OPTION_PREPRODUCTION_BUILD   0x0040

Definition at line 2271 of file winternl.h.

◆ CODEINTEGRITY_OPTION_TEST_BUILD

#define CODEINTEGRITY_OPTION_TEST_BUILD   0x0020

Definition at line 2270 of file winternl.h.

◆ CODEINTEGRITY_OPTION_TESTSIGN

#define CODEINTEGRITY_OPTION_TESTSIGN   0x0002

Definition at line 2266 of file winternl.h.

◆ CODEINTEGRITY_OPTION_UMCI_AUDITMODE_ENABLED

#define CODEINTEGRITY_OPTION_UMCI_AUDITMODE_ENABLED   0x0008

Definition at line 2268 of file winternl.h.

◆ CODEINTEGRITY_OPTION_UMCI_ENABLED

#define CODEINTEGRITY_OPTION_UMCI_ENABLED   0x0004

Definition at line 2267 of file winternl.h.

◆ CODEINTEGRITY_OPTION_UMCI_EXCLUSIONPATHS_ENABLED

#define CODEINTEGRITY_OPTION_UMCI_EXCLUSIONPATHS_ENABLED   0x0010

Definition at line 2269 of file winternl.h.

◆ CPU_FEATURE_2NDLEV

#define CPU_FEATURE_2NDLEV   0x04000000 /* Second-level address translation */

Definition at line 2872 of file winternl.h.

◆ CPU_FEATURE_3DNOW

#define CPU_FEATURE_3DNOW   0x00004000 /* 3DNOW instructions available */

Definition at line 2865 of file winternl.h.

◆ CPU_FEATURE_ARM_NEON

#define CPU_FEATURE_ARM_NEON   0x00000002

Definition at line 2887 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE

#define CPU_FEATURE_ARM_SVE   0x00000100

Definition at line 2894 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE2

#define CPU_FEATURE_ARM_SVE2   0x00000200

Definition at line 2895 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE2_1

#define CPU_FEATURE_ARM_SVE2_1   0x00000400

Definition at line 2896 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_AES

#define CPU_FEATURE_ARM_SVE_AES   0x00000800

Definition at line 2897 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_B16B16

#define CPU_FEATURE_ARM_SVE_B16B16   0x00010000

Definition at line 2902 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_BF16

#define CPU_FEATURE_ARM_SVE_BF16   0x00004000

Definition at line 2900 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_BITPERM

#define CPU_FEATURE_ARM_SVE_BITPERM   0x00002000

Definition at line 2899 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_EBF16

#define CPU_FEATURE_ARM_SVE_EBF16   0x00008000

Definition at line 2901 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_F32MM

#define CPU_FEATURE_ARM_SVE_F32MM   0x00100000

Definition at line 2906 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_F64MM

#define CPU_FEATURE_ARM_SVE_F64MM   0x00200000

Definition at line 2907 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_I8MM

#define CPU_FEATURE_ARM_SVE_I8MM   0x00080000

Definition at line 2905 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_PMULL128

#define CPU_FEATURE_ARM_SVE_PMULL128   0x00001000

Definition at line 2898 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_SHA3

#define CPU_FEATURE_ARM_SVE_SHA3   0x00020000

Definition at line 2903 of file winternl.h.

◆ CPU_FEATURE_ARM_SVE_SM4

#define CPU_FEATURE_ARM_SVE_SM4   0x00040000

Definition at line 2904 of file winternl.h.

◆ CPU_FEATURE_ARM_V81_ATOMIC

#define CPU_FEATURE_ARM_V81_ATOMIC   0x00000010

Definition at line 2890 of file winternl.h.

◆ CPU_FEATURE_ARM_V82_DP

#define CPU_FEATURE_ARM_V82_DP   0x00000020

Definition at line 2891 of file winternl.h.

◆ CPU_FEATURE_ARM_V83_JSCVT

#define CPU_FEATURE_ARM_V83_JSCVT   0x00000040

Definition at line 2892 of file winternl.h.

◆ CPU_FEATURE_ARM_V83_LRCPC

#define CPU_FEATURE_ARM_V83_LRCPC   0x00000080

Definition at line 2893 of file winternl.h.

◆ CPU_FEATURE_ARM_V8_CRC32

#define CPU_FEATURE_ARM_V8_CRC32   0x00000004

Definition at line 2888 of file winternl.h.

◆ CPU_FEATURE_ARM_V8_CRYPTO

#define CPU_FEATURE_ARM_V8_CRYPTO   0x00000008

Definition at line 2889 of file winternl.h.

◆ CPU_FEATURE_ARM_VFP_32

#define CPU_FEATURE_ARM_VFP_32   0x00000001

Definition at line 2886 of file winternl.h.

◆ CPU_FEATURE_AVX

#define CPU_FEATURE_AVX   0x40000000 /* AVX instructions */

Definition at line 2881 of file winternl.h.

◆ CPU_FEATURE_AVX2

#define CPU_FEATURE_AVX2   0x80000000 /* AVX2 instructions */

Definition at line 2882 of file winternl.h.

◆ CPU_FEATURE_CMOV

#define CPU_FEATURE_CMOV   0x00000008 /* Conditional Move instruction*/

Definition at line 2854 of file winternl.h.

◆ CPU_FEATURE_CX128

#define CPU_FEATURE_CX128   0x00100000 /* cmpxchg16b instruction */

Definition at line 2870 of file winternl.h.

◆ CPU_FEATURE_CX8

#define CPU_FEATURE_CX8   0x00000080 /* Compare and eXchange 8 byte instr. */

Definition at line 2858 of file winternl.h.

◆ CPU_FEATURE_DAZ

#define CPU_FEATURE_DAZ   0x00400000

Definition at line 2884 of file winternl.h.

◆ CPU_FEATURE_DS

#define CPU_FEATURE_DS   0x00020000 /* Debug Store */

Definition at line 2867 of file winternl.h.

◆ CPU_FEATURE_FXSR

#define CPU_FEATURE_FXSR   0x00000800 /* FXSAVE and FXSTORE instructions */

Definition at line 2862 of file winternl.h.

◆ CPU_FEATURE_HTT

#define CPU_FEATURE_HTT   0x00040000 /* Hyper Threading Technology */

Definition at line 2868 of file winternl.h.

◆ CPU_FEATURE_MMX

#define CPU_FEATURE_MMX   0x00000100 /* Multi Media eXtensions */

Definition at line 2859 of file winternl.h.

◆ CPU_FEATURE_MTRR

#define CPU_FEATURE_MTRR   0x00000040 /* Memory Type Range Registers */

Definition at line 2857 of file winternl.h.

◆ CPU_FEATURE_NX

#define CPU_FEATURE_NX   0x20000000 /* Data execution prevention */

Definition at line 2875 of file winternl.h.

◆ CPU_FEATURE_PAE

#define CPU_FEATURE_PAE   0x00200000

Definition at line 2883 of file winternl.h.

◆ CPU_FEATURE_PAT

#define CPU_FEATURE_PAT   0x00000400 /* Page Attribute Table */

Definition at line 2861 of file winternl.h.

◆ CPU_FEATURE_PGE

#define CPU_FEATURE_PGE   0x00000014 /* Page table Entry Global bit */

Definition at line 2855 of file winternl.h.

◆ CPU_FEATURE_PSE

#define CPU_FEATURE_PSE   0x00000024 /* Page Size Extension */

Definition at line 2856 of file winternl.h.

◆ CPU_FEATURE_RDFS

#define CPU_FEATURE_RDFS   0x10000000 /* RDFSBASE etc. instructions */

Definition at line 2874 of file winternl.h.

◆ CPU_FEATURE_SEP

#define CPU_FEATURE_SEP   0x00001000 /* SYSENTER and SYSEXIT instructions */

Definition at line 2863 of file winternl.h.

◆ CPU_FEATURE_SSE

#define CPU_FEATURE_SSE   0x00002000 /* SSE extensions (ext. MMX) */

Definition at line 2864 of file winternl.h.

◆ CPU_FEATURE_SSE2

#define CPU_FEATURE_SSE2   0x00010000 /* SSE2 extensions (XMMI64) */

Definition at line 2866 of file winternl.h.

◆ CPU_FEATURE_SSE3

#define CPU_FEATURE_SSE3   0x00080000 /* SSE3 extensions */

Definition at line 2869 of file winternl.h.

◆ CPU_FEATURE_SSE41

#define CPU_FEATURE_SSE41   0x01000000 /* SSE41 instructions */

Definition at line 2879 of file winternl.h.

◆ CPU_FEATURE_SSE42

#define CPU_FEATURE_SSE42   0x02000000 /* SSE42 instructions */

Definition at line 2880 of file winternl.h.

◆ CPU_FEATURE_SSSE3

#define CPU_FEATURE_SSSE3   0x00008000 /* SSSE3 instructions */

Definition at line 2878 of file winternl.h.

◆ CPU_FEATURE_TSC

#define CPU_FEATURE_TSC   0x00000002 /* Time Stamp Counter available */

Definition at line 2853 of file winternl.h.

◆ CPU_FEATURE_VIRT

#define CPU_FEATURE_VIRT   0x08000000 /* Virtualization support */

Definition at line 2873 of file winternl.h.

◆ CPU_FEATURE_VME

#define CPU_FEATURE_VME   0x00000005 /* Virtual 86 Mode Extensions */

Definition at line 2852 of file winternl.h.

◆ CPU_FEATURE_X86

#define CPU_FEATURE_X86   0x00000200 /* seems to be always ON, on the '86 */

Definition at line 2860 of file winternl.h.

◆ CPU_FEATURE_XSAVE

#define CPU_FEATURE_XSAVE   0x00800000 /* XSAVE instructions */

Definition at line 2871 of file winternl.h.

◆ CROSS_PROCESS_LIST_ENTRY

#define CROSS_PROCESS_LIST_ENTRY (   list,
  pos 
)     ((CROSS_PROCESS_WORK_ENTRY *)((char *)(list) + ((pos) & ~CROSS_PROCESS_LIST_FLUSH)))

Definition at line 431 of file winternl.h.

◆ CROSS_PROCESS_LIST_FLUSH

#define CROSS_PROCESS_LIST_FLUSH   0x80000000

Definition at line 430 of file winternl.h.

◆ DEBUG_ALL_ACCESS

#define DEBUG_ALL_ACCESS   (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x0f)

Definition at line 4375 of file winternl.h.

◆ DEBUG_KILL_ON_CLOSE

#define DEBUG_KILL_ON_CLOSE   0x1

Definition at line 4377 of file winternl.h.

◆ DEBUG_PROCESS_ASSIGN

#define DEBUG_PROCESS_ASSIGN   0x0002

Definition at line 4372 of file winternl.h.

◆ DEBUG_QUERY_INFORMATION

#define DEBUG_QUERY_INFORMATION   0x0008

Definition at line 4374 of file winternl.h.

◆ DEBUG_READ_EVENT

#define DEBUG_READ_EVENT   0x0001

Definition at line 4371 of file winternl.h.

◆ DEBUG_SET_INFORMATION

#define DEBUG_SET_INFORMATION   0x0004

Definition at line 4373 of file winternl.h.

◆ DPFLTR_ERROR_LEVEL

#define DPFLTR_ERROR_LEVEL   0

Definition at line 3498 of file winternl.h.

◆ DPFLTR_INFO_LEVEL

#define DPFLTR_INFO_LEVEL   3

Definition at line 3501 of file winternl.h.

◆ DPFLTR_MASK

#define DPFLTR_MASK   0x8000000

Definition at line 3502 of file winternl.h.

◆ DPFLTR_TRACE_LEVEL

#define DPFLTR_TRACE_LEVEL   2

Definition at line 3500 of file winternl.h.

◆ DPFLTR_WARNING_LEVEL

#define DPFLTR_WARNING_LEVEL   1

Definition at line 3499 of file winternl.h.

◆ FILE_ATTRIBUTE_VALID_FLAGS

#define FILE_ATTRIBUTE_VALID_FLAGS   0x00007fb7

Definition at line 3420 of file winternl.h.

◆ FILE_ATTRIBUTE_VALID_SET_FLAGS

#define FILE_ATTRIBUTE_VALID_SET_FLAGS   0x000031a7

Definition at line 3421 of file winternl.h.

◆ FILE_AUTOGENERATED_DEVICE_NAME

#define FILE_AUTOGENERATED_DEVICE_NAME   0x00000080

Definition at line 3448 of file winternl.h.

◆ FILE_CHARACTERISTIC_CSV

#define FILE_CHARACTERISTIC_CSV   0x00010000

Definition at line 3453 of file winternl.h.

◆ FILE_CHARACTERISTIC_PNP_DEVICE

#define FILE_CHARACTERISTIC_PNP_DEVICE   0x00000800

Definition at line 3450 of file winternl.h.

◆ FILE_CHARACTERISTIC_TS_DEVICE

#define FILE_CHARACTERISTIC_TS_DEVICE   0x00001000

Definition at line 3451 of file winternl.h.

◆ FILE_CHARACTERISTIC_WEBDAV_DEVICE

#define FILE_CHARACTERISTIC_WEBDAV_DEVICE   0x00002000

Definition at line 3452 of file winternl.h.

◆ FILE_COMPLETE_IF_OPLOCKED

#define FILE_COMPLETE_IF_OPLOCKED   0x00000100

Definition at line 3407 of file winternl.h.

◆ FILE_CREATE

#define FILE_CREATE   2

Definition at line 3434 of file winternl.h.

◆ FILE_CREATE_TREE_CONNECTION

#define FILE_CREATE_TREE_CONNECTION   0x00000080

Definition at line 3406 of file winternl.h.

◆ FILE_CREATED

#define FILE_CREATED   2

Definition at line 3426 of file winternl.h.

◆ FILE_DELETE_ON_CLOSE

#define FILE_DELETE_ON_CLOSE   0x00001000

Definition at line 3411 of file winternl.h.

◆ FILE_DEVICE_ALLOW_APPCONTAINER_TRAVERSAL

#define FILE_DEVICE_ALLOW_APPCONTAINER_TRAVERSAL   0x00020000

Definition at line 3454 of file winternl.h.

◆ FILE_DEVICE_IS_MOUNTED

#define FILE_DEVICE_IS_MOUNTED   0x00000020

Definition at line 3446 of file winternl.h.

◆ FILE_DEVICE_SECURE_OPEN

#define FILE_DEVICE_SECURE_OPEN   0x00000100

Definition at line 3449 of file winternl.h.

◆ FILE_DIRECTORY_FILE

#define FILE_DIRECTORY_FILE   0x00000001

Definition at line 3399 of file winternl.h.

◆ FILE_DISPOSITION_DELETE

#define FILE_DISPOSITION_DELETE   0x00000001

Definition at line 1652 of file winternl.h.

◆ FILE_DISPOSITION_DO_NOT_DELETE

#define FILE_DISPOSITION_DO_NOT_DELETE   0x00000000

Definition at line 1651 of file winternl.h.

◆ FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK

#define FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK   0x00000004

Definition at line 1654 of file winternl.h.

◆ FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE

#define FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE   0x00000010

Definition at line 1656 of file winternl.h.

◆ FILE_DISPOSITION_ON_CLOSE

#define FILE_DISPOSITION_ON_CLOSE   0x00000008

Definition at line 1655 of file winternl.h.

◆ FILE_DISPOSITION_POSIX_SEMANTICS

#define FILE_DISPOSITION_POSIX_SEMANTICS   0x00000002

Definition at line 1653 of file winternl.h.

◆ FILE_DOES_NOT_EXIST

#define FILE_DOES_NOT_EXIST   5

Definition at line 3429 of file winternl.h.

◆ FILE_EXISTS

#define FILE_EXISTS   4

Definition at line 3428 of file winternl.h.

◆ FILE_FLOPPY_DISKETTE

#define FILE_FLOPPY_DISKETTE   0x00000004

Definition at line 3443 of file winternl.h.

◆ FILE_LINK_FORCE_RESIZE_SOURCE_SR

#define FILE_LINK_FORCE_RESIZE_SOURCE_SR   0x00000100

Definition at line 1633 of file winternl.h.

◆ FILE_LINK_FORCE_RESIZE_SR

#define FILE_LINK_FORCE_RESIZE_SR   0x00000180

Definition at line 1634 of file winternl.h.

◆ FILE_LINK_FORCE_RESIZE_TARGET_SR

#define FILE_LINK_FORCE_RESIZE_TARGET_SR   0x00000080

Definition at line 1632 of file winternl.h.

◆ FILE_LINK_IGNORE_READONLY_ATTRIBUTE

#define FILE_LINK_IGNORE_READONLY_ATTRIBUTE   0x00000040

Definition at line 1631 of file winternl.h.

◆ FILE_LINK_NO_DECREASE_AVAILABLE_SPACE

#define FILE_LINK_NO_DECREASE_AVAILABLE_SPACE   0x00000020

Definition at line 1629 of file winternl.h.

◆ FILE_LINK_NO_INCREASE_AVAILABLE_SPACE

#define FILE_LINK_NO_INCREASE_AVAILABLE_SPACE   0x00000010

Definition at line 1628 of file winternl.h.

◆ FILE_LINK_POSIX_SEMANTICS

#define FILE_LINK_POSIX_SEMANTICS   0x00000002

Definition at line 1626 of file winternl.h.

◆ FILE_LINK_PRESERVE_AVAILABLE_SPACE

#define FILE_LINK_PRESERVE_AVAILABLE_SPACE   0x00000030

Definition at line 1630 of file winternl.h.

◆ FILE_LINK_REPLACE_IF_EXISTS

#define FILE_LINK_REPLACE_IF_EXISTS   0x00000001

Definition at line 1625 of file winternl.h.

◆ FILE_LINK_SUPPRESS_STORAGE_RESERVE_INHERITANCE

#define FILE_LINK_SUPPRESS_STORAGE_RESERVE_INHERITANCE   0x00000008

Definition at line 1627 of file winternl.h.

◆ FILE_MAXIMUM_DISPOSITION

#define FILE_MAXIMUM_DISPOSITION   5

Definition at line 3438 of file winternl.h.

◆ FILE_NO_COMPRESSION

#define FILE_NO_COMPRESSION   0x00008000

Definition at line 3414 of file winternl.h.

◆ FILE_NO_EA_KNOWLEDGE

#define FILE_NO_EA_KNOWLEDGE   0x00000200

Definition at line 3408 of file winternl.h.

◆ FILE_NO_INTERMEDIATE_BUFFERING

#define FILE_NO_INTERMEDIATE_BUFFERING   0x00000008

Definition at line 3402 of file winternl.h.

◆ FILE_NON_DIRECTORY_FILE

#define FILE_NON_DIRECTORY_FILE   0x00000040

Definition at line 3405 of file winternl.h.

◆ FILE_OPEN

#define FILE_OPEN   1

Definition at line 3433 of file winternl.h.

◆ FILE_OPEN_BY_FILE_ID

#define FILE_OPEN_BY_FILE_ID   0x00002000

Definition at line 3412 of file winternl.h.

◆ FILE_OPEN_FOR_BACKUP_INTENT

#define FILE_OPEN_FOR_BACKUP_INTENT   0x00004000

Definition at line 3413 of file winternl.h.

◆ FILE_OPEN_FOR_FREE_SPACE_QUERY

#define FILE_OPEN_FOR_FREE_SPACE_QUERY   0x00800000

Definition at line 3418 of file winternl.h.

◆ FILE_OPEN_FOR_RECOVERY

#define FILE_OPEN_FOR_RECOVERY   0x00000400

Definition at line 3409 of file winternl.h.

◆ FILE_OPEN_IF

#define FILE_OPEN_IF   3

Definition at line 3435 of file winternl.h.

◆ FILE_OPEN_OFFLINE_FILE

#define FILE_OPEN_OFFLINE_FILE   0x00400000

Definition at line 3417 of file winternl.h.

◆ FILE_OPEN_REPARSE_POINT

#define FILE_OPEN_REPARSE_POINT   0x00200000

Definition at line 3416 of file winternl.h.

◆ FILE_OPENED

#define FILE_OPENED   1

Definition at line 3425 of file winternl.h.

◆ FILE_OVERWRITE

#define FILE_OVERWRITE   4

Definition at line 3436 of file winternl.h.

◆ FILE_OVERWRITE_IF

#define FILE_OVERWRITE_IF   5

Definition at line 3437 of file winternl.h.

◆ FILE_OVERWRITTEN

#define FILE_OVERWRITTEN   3

Definition at line 3427 of file winternl.h.

◆ FILE_PIPE_BYTE_STREAM_MODE

#define FILE_PIPE_BYTE_STREAM_MODE   0x00000000

Definition at line 3467 of file winternl.h.

◆ FILE_PIPE_CLIENT_END

#define FILE_PIPE_CLIENT_END   0x00000000

Definition at line 3473 of file winternl.h.

◆ FILE_PIPE_CLOSING_STATE

#define FILE_PIPE_CLOSING_STATE   0x00000004

Definition at line 1744 of file winternl.h.

◆ FILE_PIPE_COMPLETE_OPERATION

#define FILE_PIPE_COMPLETE_OPERATION   0x00000001

Definition at line 3469 of file winternl.h.

◆ FILE_PIPE_CONNECTED_STATE

#define FILE_PIPE_CONNECTED_STATE   0x00000003

Definition at line 1743 of file winternl.h.

◆ FILE_PIPE_DISCONNECTED_STATE

#define FILE_PIPE_DISCONNECTED_STATE   0x00000001

Definition at line 1741 of file winternl.h.

◆ FILE_PIPE_FULL_DUPLEX

#define FILE_PIPE_FULL_DUPLEX   0x00000002

Definition at line 3460 of file winternl.h.

◆ FILE_PIPE_INBOUND

#define FILE_PIPE_INBOUND   0x00000000

Definition at line 3458 of file winternl.h.

◆ FILE_PIPE_LISTENING_STATE

#define FILE_PIPE_LISTENING_STATE   0x00000002

Definition at line 1742 of file winternl.h.

◆ FILE_PIPE_MESSAGE_MODE

#define FILE_PIPE_MESSAGE_MODE   0x00000001

Definition at line 3466 of file winternl.h.

◆ FILE_PIPE_OUTBOUND

#define FILE_PIPE_OUTBOUND   0x00000001

Definition at line 3459 of file winternl.h.

◆ FILE_PIPE_QUEUE_OPERATION

#define FILE_PIPE_QUEUE_OPERATION   0x00000000

Definition at line 3470 of file winternl.h.

◆ FILE_PIPE_SERVER_END

#define FILE_PIPE_SERVER_END   0x00000001

Definition at line 3472 of file winternl.h.

◆ FILE_PIPE_TYPE_BYTE

#define FILE_PIPE_TYPE_BYTE   0x00000000

Definition at line 3464 of file winternl.h.

◆ FILE_PIPE_TYPE_MESSAGE

#define FILE_PIPE_TYPE_MESSAGE   0x00000001

Definition at line 3463 of file winternl.h.

◆ FILE_PORTABLE_DEVICE

#define FILE_PORTABLE_DEVICE   0x00040000

Definition at line 3455 of file winternl.h.

◆ FILE_RANDOM_ACCESS

#define FILE_RANDOM_ACCESS   0x00000800

Definition at line 3410 of file winternl.h.

◆ FILE_READ_ONLY_DEVICE

#define FILE_READ_ONLY_DEVICE   0x00000002

Definition at line 3442 of file winternl.h.

◆ FILE_REMOTE_DEVICE

#define FILE_REMOTE_DEVICE   0x00000010

Definition at line 3445 of file winternl.h.

◆ FILE_REMOVABLE_MEDIA

#define FILE_REMOVABLE_MEDIA   0x00000001

Definition at line 3441 of file winternl.h.

◆ FILE_RENAME_IGNORE_READONLY_ATTRIBUTE

#define FILE_RENAME_IGNORE_READONLY_ATTRIBUTE   0x00000040

Definition at line 1613 of file winternl.h.

◆ FILE_RENAME_NO_DECREASE_AVAILABLE_SPACE

#define FILE_RENAME_NO_DECREASE_AVAILABLE_SPACE   0x00000020

Definition at line 1611 of file winternl.h.

◆ FILE_RENAME_NO_INCREASE_AVAILABLE_SPACE

#define FILE_RENAME_NO_INCREASE_AVAILABLE_SPACE   0x00000010

Definition at line 1610 of file winternl.h.

◆ FILE_RENAME_POSIX_SEMANTICS

#define FILE_RENAME_POSIX_SEMANTICS   0x00000002

Definition at line 1607 of file winternl.h.

◆ FILE_RENAME_PRESERVE_AVAILABLE_SPACE

#define FILE_RENAME_PRESERVE_AVAILABLE_SPACE   0x00000030

Definition at line 1612 of file winternl.h.

◆ FILE_RENAME_REPLACE_IF_EXISTS

#define FILE_RENAME_REPLACE_IF_EXISTS   0x00000001

Definition at line 1606 of file winternl.h.

◆ FILE_RENAME_SUPPRESS_PIN_STATE_INHERITANCE

#define FILE_RENAME_SUPPRESS_PIN_STATE_INHERITANCE   0x00000004

Definition at line 1608 of file winternl.h.

◆ FILE_RENAME_SUPPRESS_STORAGE_RESERVE_INHERITANCE

#define FILE_RENAME_SUPPRESS_STORAGE_RESERVE_INHERITANCE   0x00000008

Definition at line 1609 of file winternl.h.

◆ FILE_RESERVE_OPFILTER

#define FILE_RESERVE_OPFILTER   0x00100000

Definition at line 3415 of file winternl.h.

◆ FILE_SEQUENTIAL_ONLY

#define FILE_SEQUENTIAL_ONLY   0x00000004

Definition at line 3401 of file winternl.h.

◆ FILE_SKIP_COMPLETION_PORT_ON_SUCCESS

#define FILE_SKIP_COMPLETION_PORT_ON_SUCCESS   0x1

Definition at line 1819 of file winternl.h.

◆ FILE_SKIP_SET_EVENT_ON_HANDLE

#define FILE_SKIP_SET_EVENT_ON_HANDLE   0x2

Definition at line 1820 of file winternl.h.

◆ FILE_SKIP_SET_USER_EVENT_ON_FAST_IO

#define FILE_SKIP_SET_USER_EVENT_ON_FAST_IO   0x4

Definition at line 1821 of file winternl.h.

◆ FILE_SUPERSEDE

#define FILE_SUPERSEDE   0

Definition at line 3432 of file winternl.h.

◆ FILE_SUPERSEDED

#define FILE_SUPERSEDED   0

Definition at line 3424 of file winternl.h.

◆ FILE_SYNCHRONOUS_IO_ALERT

#define FILE_SYNCHRONOUS_IO_ALERT   0x00000010

Definition at line 3403 of file winternl.h.

◆ FILE_SYNCHRONOUS_IO_NONALERT

#define FILE_SYNCHRONOUS_IO_NONALERT   0x00000020

Definition at line 3404 of file winternl.h.

◆ FILE_VIRTUAL_VOLUME

#define FILE_VIRTUAL_VOLUME   0x00000040

Definition at line 3447 of file winternl.h.

◆ FILE_WRITE_ONE_MEDIA

#define FILE_WRITE_ONE_MEDIA   0x00000008

Definition at line 3444 of file winternl.h.

◆ FILE_WRITE_THROUGH

#define FILE_WRITE_THROUGH   0x00000002

Definition at line 3400 of file winternl.h.

◆ FLG_APPLICATION_VERIFIER

#define FLG_APPLICATION_VERIFIER   0x00000100

Definition at line 3547 of file winternl.h.

◆ FLG_CRITSEC_EVENT_CREATION

#define FLG_CRITSEC_EVENT_CREATION   0x10000000

Definition at line 3566 of file winternl.h.

◆ FLG_DEBUG_INITIAL_COMMAND

#define FLG_DEBUG_INITIAL_COMMAND   0x00000004

Definition at line 3541 of file winternl.h.

◆ FLG_DEBUG_INITIAL_COMMAND_EX

#define FLG_DEBUG_INITIAL_COMMAND_EX   0x04000000

Definition at line 3564 of file winternl.h.

◆ FLG_DISABLE_DBGPRINT

#define FLG_DISABLE_DBGPRINT   0x08000000

Definition at line 3565 of file winternl.h.

◆ FLG_DISABLE_PAGE_KERNEL_STACKS

#define FLG_DISABLE_PAGE_KERNEL_STACKS   0x00080000

Definition at line 3557 of file winternl.h.

◆ FLG_DISABLE_PROTDLLS

#define FLG_DISABLE_PROTDLLS   0x80000000

Definition at line 3569 of file winternl.h.

◆ FLG_DISABLE_STACK_EXTENSION

#define FLG_DISABLE_STACK_EXTENSION   0x00010000

Definition at line 3554 of file winternl.h.

◆ FLG_ENABLE_CLOSE_EXCEPTIONS

#define FLG_ENABLE_CLOSE_EXCEPTIONS   0x00400000

Definition at line 3560 of file winternl.h.

◆ FLG_ENABLE_CSRDEBUG

#define FLG_ENABLE_CSRDEBUG   0x00020000

Definition at line 3555 of file winternl.h.

◆ FLG_ENABLE_EXCEPTION_LOGGING

#define FLG_ENABLE_EXCEPTION_LOGGING   0x00800000

Definition at line 3561 of file winternl.h.

◆ FLG_ENABLE_HANDLE_EXCEPTIONS

#define FLG_ENABLE_HANDLE_EXCEPTIONS   0x40000000

Definition at line 3568 of file winternl.h.

◆ FLG_ENABLE_HANDLE_TYPE_TAGGING

#define FLG_ENABLE_HANDLE_TYPE_TAGGING   0x01000000

Definition at line 3562 of file winternl.h.

◆ FLG_ENABLE_KDEBUG_SYMBOL_LOAD

#define FLG_ENABLE_KDEBUG_SYMBOL_LOAD   0x00040000

Definition at line 3556 of file winternl.h.

◆ FLG_ENABLE_SYSTEM_CRIT_BREAKS

#define FLG_ENABLE_SYSTEM_CRIT_BREAKS   0x00100000

Definition at line 3558 of file winternl.h.

◆ FLG_HEAP_DISABLE_COALESCING

#define FLG_HEAP_DISABLE_COALESCING   0x00200000

Definition at line 3559 of file winternl.h.

◆ FLG_HEAP_ENABLE_FREE_CHECK

#define FLG_HEAP_ENABLE_FREE_CHECK   0x00000020

Definition at line 3544 of file winternl.h.

◆ FLG_HEAP_ENABLE_TAG_BY_DLL

#define FLG_HEAP_ENABLE_TAG_BY_DLL   0x00008000

Definition at line 3553 of file winternl.h.

◆ FLG_HEAP_ENABLE_TAGGING

#define FLG_HEAP_ENABLE_TAGGING   0x00000800

Definition at line 3549 of file winternl.h.

◆ FLG_HEAP_ENABLE_TAIL_CHECK

#define FLG_HEAP_ENABLE_TAIL_CHECK   0x00000010

Definition at line 3543 of file winternl.h.

◆ FLG_HEAP_PAGE_ALLOCS

#define FLG_HEAP_PAGE_ALLOCS   0x02000000

Definition at line 3563 of file winternl.h.

◆ FLG_HEAP_VALIDATE_ALL

#define FLG_HEAP_VALIDATE_ALL   0x00000080

Definition at line 3546 of file winternl.h.

◆ FLG_HEAP_VALIDATE_PARAMETERS

#define FLG_HEAP_VALIDATE_PARAMETERS   0x00000040

Definition at line 3545 of file winternl.h.

◆ FLG_KERNEL_STACK_TRACE_DB

#define FLG_KERNEL_STACK_TRACE_DB   0x00002000

Definition at line 3551 of file winternl.h.

◆ FLG_LDR_TOP_DOWN

#define FLG_LDR_TOP_DOWN   0x20000000

Definition at line 3567 of file winternl.h.

◆ FLG_MAINTAIN_OBJECT_TYPELIST

#define FLG_MAINTAIN_OBJECT_TYPELIST   0x00004000

Definition at line 3552 of file winternl.h.

◆ FLG_POOL_ENABLE_TAGGING

#define FLG_POOL_ENABLE_TAGGING   0x00000400

Definition at line 3548 of file winternl.h.

◆ FLG_SHOW_LDR_SNAPS

#define FLG_SHOW_LDR_SNAPS   0x00000002

Definition at line 3540 of file winternl.h.

◆ FLG_STOP_ON_EXCEPTION

#define FLG_STOP_ON_EXCEPTION   0x00000001

Definition at line 3539 of file winternl.h.

◆ FLG_STOP_ON_HUNG_GUI

#define FLG_STOP_ON_HUNG_GUI   0x00000008

Definition at line 3542 of file winternl.h.

◆ FLG_USER_STACK_TRACE_DB

#define FLG_USER_STACK_TRACE_DB   0x00001000

Definition at line 3550 of file winternl.h.

◆ HASH_STRING_ALGORITHM_DEFAULT

#define HASH_STRING_ALGORITHM_DEFAULT   0

Definition at line 4518 of file winternl.h.

◆ HASH_STRING_ALGORITHM_INVALID

#define HASH_STRING_ALGORITHM_INVALID   0xffffffff

Definition at line 4520 of file winternl.h.

◆ HASH_STRING_ALGORITHM_X65599

#define HASH_STRING_ALGORITHM_X65599   1

Definition at line 4519 of file winternl.h.

◆ InitializeListHead

#define InitializeListHead (   le)    (void)((le)->Flink = (le)->Blink = (le))

Definition at line 5405 of file winternl.h.

◆ InitializeObjectAttributes

#define InitializeObjectAttributes (   p,
  n,
  a,
  r,
  s 
)
Value:
do { \
(p)->Length = sizeof(OBJECT_ATTRIBUTES); \
(p)->RootDirectory = r; \
(p)->Attributes = a; \
(p)->ObjectName = n; \
(p)->SecurityQualityOfService = NULL; \
} while (0)
WCHAR RootDirectory[MAX_PATH]
Definition: format.c:74
#define NULL
Definition: types.h:112
GLdouble s
Definition: gl.h:2039
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
GLdouble n
Definition: glext.h:7729
GLfloat GLfloat p
Definition: glext.h:8902
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
_Must_inspect_result_ _In_ WDFDMAENABLER _In_ _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes
_In_ USHORT _In_ ULONG _In_ PSOCKADDR _In_ PSOCKADDR _Reserved_ ULONG _In_opt_ PVOID _In_opt_ const WSK_CLIENT_CONNECTION_DISPATCH _In_opt_ PEPROCESS _In_opt_ PETHREAD _In_opt_ PSECURITY_DESCRIPTOR SecurityDescriptor
Definition: wsk.h:191
_In_ PVOID _Out_opt_ PULONG_PTR _Outptr_opt_ PCUNICODE_STRING * ObjectName
Definition: cmfuncs.h:64

Definition at line 5353 of file winternl.h.

◆ InsertHeadList

#define InsertHeadList (   le,
  e 
)    do { PLIST_ENTRY f = (le)->Flink; (e)->Flink = f; (e)->Blink = (le); f->Blink = (e); (le)->Flink = (e); } while (0)

Definition at line 5406 of file winternl.h.

◆ InsertTailList

#define InsertTailList (   le,
  e 
)    do { PLIST_ENTRY b = (le)->Blink; (e)->Flink = (le); (e)->Blink = b; b->Flink = (e); (le)->Blink = (e); } while (0)

Definition at line 5407 of file winternl.h.

◆ INTERNAL_TS_ACTIVE_CONSOLE_ID

#define INTERNAL_TS_ACTIVE_CONSOLE_ID   ( *((volatile ULONG*)(0x7ffe02d8)) )

Definition at line 3475 of file winternl.h.

◆ IO_COMPLETION_ALL_ACCESS

#define IO_COMPLETION_ALL_ACCESS   (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x3)

Definition at line 3786 of file winternl.h.

◆ IO_COMPLETION_MODIFY_STATE

#define IO_COMPLETION_MODIFY_STATE   0x0002

Definition at line 3785 of file winternl.h.

◆ IO_COMPLETION_QUERY_STATE

#define IO_COMPLETION_QUERY_STATE   0x0001

Definition at line 3784 of file winternl.h.

◆ IsListEmpty

#define IsListEmpty (   le)    ((le)->Flink == (le))

Definition at line 5408 of file winternl.h.

◆ KCONTINUE_FLAG_DELIVER_APC

#define KCONTINUE_FLAG_DELIVER_APC   0x02

Definition at line 4515 of file winternl.h.

◆ KCONTINUE_FLAG_TEST_ALERT

#define KCONTINUE_FLAG_TEST_ALERT   0x01

Definition at line 4514 of file winternl.h.

◆ LDR_ADDREF_DLL_PIN

#define LDR_ADDREF_DLL_PIN   0x00000001

Definition at line 4025 of file winternl.h.

◆ LDR_COR_ILONLY

#define LDR_COR_ILONLY   0x01000000

Definition at line 4018 of file winternl.h.

◆ LDR_COR_IMAGE

#define LDR_COR_IMAGE   0x00400000

Definition at line 4017 of file winternl.h.

◆ LDR_DLL_NOTIFICATION_REASON_LOADED

#define LDR_DLL_NOTIFICATION_REASON_LOADED   1

Definition at line 4031 of file winternl.h.

◆ LDR_DLL_NOTIFICATION_REASON_UNLOADED

#define LDR_DLL_NOTIFICATION_REASON_UNLOADED   2

Definition at line 4032 of file winternl.h.

◆ LDR_DONT_RESOLVE_REFS

#define LDR_DONT_RESOLVE_REFS   0x40000000

Definition at line 4021 of file winternl.h.

◆ LDR_GET_DLL_HANDLE_EX_FLAG_PIN

#define LDR_GET_DLL_HANDLE_EX_FLAG_PIN   0x00000002

Definition at line 4029 of file winternl.h.

◆ LDR_GET_DLL_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT

#define LDR_GET_DLL_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT   0x00000001

Definition at line 4028 of file winternl.h.

◆ LDR_IMAGE_IS_DLL

#define LDR_IMAGE_IS_DLL   0x00000004

Definition at line 4012 of file winternl.h.

◆ LDR_LOAD_IN_PROGRESS

#define LDR_LOAD_IN_PROGRESS   0x00001000

Definition at line 4013 of file winternl.h.

◆ LDR_NO_DLL_CALLS

#define LDR_NO_DLL_CALLS   0x00040000

Definition at line 4015 of file winternl.h.

◆ LDR_PROCESS_ATTACHED

#define LDR_PROCESS_ATTACHED   0x00080000

Definition at line 4016 of file winternl.h.

◆ LDR_UNLOAD_IN_PROGRESS

#define LDR_UNLOAD_IN_PROGRESS   0x00002000

Definition at line 4014 of file winternl.h.

◆ LDR_WINE_INTERNAL

#define LDR_WINE_INTERNAL   0x80000000

Definition at line 4022 of file winternl.h.

◆ LOGONID_CURRENT

#define LOGONID_CURRENT   ((ULONG)-1)

Definition at line 3477 of file winternl.h.

◆ MAXIMUM_FILENAME_LENGTH

#define MAXIMUM_FILENAME_LENGTH   256

Definition at line 4035 of file winternl.h.

◆ MEM_EXECUTE_OPTION_DISABLE

#define MEM_EXECUTE_OPTION_DISABLE   0x01

Definition at line 2002 of file winternl.h.

◆ MEM_EXECUTE_OPTION_DISABLE_THUNK_EMULATION

#define MEM_EXECUTE_OPTION_DISABLE_THUNK_EMULATION   0x04

Definition at line 2004 of file winternl.h.

◆ MEM_EXECUTE_OPTION_ENABLE

#define MEM_EXECUTE_OPTION_ENABLE   0x02

Definition at line 2003 of file winternl.h.

◆ MEM_EXECUTE_OPTION_PERMANENT

#define MEM_EXECUTE_OPTION_PERMANENT   0x08

Definition at line 2005 of file winternl.h.

◆ NtCurrentProcess

#define NtCurrentProcess ( )    ((HANDLE)~(ULONG_PTR)0)

Definition at line 5363 of file winternl.h.

◆ NtCurrentThread

#define NtCurrentThread ( )    ((HANDLE)~(ULONG_PTR)1)

Definition at line 5364 of file winternl.h.

◆ OBJ_CASE_INSENSITIVE

#define OBJ_CASE_INSENSITIVE   0x00000040

Definition at line 3483 of file winternl.h.

◆ OBJ_EXCLUSIVE

#define OBJ_EXCLUSIVE   0x00000020

Definition at line 3482 of file winternl.h.

◆ OBJ_INHERIT

#define OBJ_INHERIT   0x00000002

Definition at line 3480 of file winternl.h.

◆ OBJ_KERNEL_HANDLE

#define OBJ_KERNEL_HANDLE   0x00000200

Definition at line 3486 of file winternl.h.

◆ OBJ_OPENIF

#define OBJ_OPENIF   0x00000080

Definition at line 3484 of file winternl.h.

◆ OBJ_OPENLINK

#define OBJ_OPENLINK   0x00000100

Definition at line 3485 of file winternl.h.

◆ OBJ_PERMANENT

#define OBJ_PERMANENT   0x00000010

Definition at line 3481 of file winternl.h.

◆ OBJ_PROTECT_CLOSE

#define OBJ_PROTECT_CLOSE   0x00000001

Definition at line 3479 of file winternl.h.

◆ OBJ_VALID_ATTRIBUTES

#define OBJ_VALID_ATTRIBUTES   0x000003F2

Definition at line 3487 of file winternl.h.

◆ PDI_BACKTRACE

#define PDI_BACKTRACE   0x02

Definition at line 3287 of file winternl.h.

◆ PDI_HEAP_BLOCKS

#define PDI_HEAP_BLOCKS   0x10

Definition at line 3290 of file winternl.h.

◆ PDI_HEAP_TAGS

#define PDI_HEAP_TAGS   0x08

Definition at line 3289 of file winternl.h.

◆ PDI_HEAPS

#define PDI_HEAPS   0x04

Definition at line 3288 of file winternl.h.

◆ PDI_LOCKS

#define PDI_LOCKS   0x20

Definition at line 3291 of file winternl.h.

◆ PDI_MODULES

#define PDI_MODULES   0x01

Definition at line 3286 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_BREAKAWAY

#define PROCESS_CREATE_FLAGS_BREAKAWAY   0x00000001

Definition at line 4057 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_CREATE_SESSION

#define PROCESS_CREATE_FLAGS_CREATE_SESSION   0x00000080

Definition at line 4064 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_EXTENDED_UNKNOWN

#define PROCESS_CREATE_FLAGS_EXTENDED_UNKNOWN   0x00000400

Definition at line 4067 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_INHERIT_FROM_PARENT

#define PROCESS_CREATE_FLAGS_INHERIT_FROM_PARENT   0x00000100

Definition at line 4065 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_INHERIT_HANDLES

#define PROCESS_CREATE_FLAGS_INHERIT_HANDLES   0x00000004

Definition at line 4059 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_LARGE_PAGE_SYSTEM_DLL

#define PROCESS_CREATE_FLAGS_LARGE_PAGE_SYSTEM_DLL   0x00000020

Definition at line 4062 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_LARGE_PAGES

#define PROCESS_CREATE_FLAGS_LARGE_PAGES   0x00000010

Definition at line 4061 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_NO_DEBUG_INHERIT

#define PROCESS_CREATE_FLAGS_NO_DEBUG_INHERIT   0x00000002

Definition at line 4058 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_OVERRIDE_ADDRESS_SPACE

#define PROCESS_CREATE_FLAGS_OVERRIDE_ADDRESS_SPACE   0x00000008

Definition at line 4060 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_PROTECTED_PROCESS

#define PROCESS_CREATE_FLAGS_PROTECTED_PROCESS   0x00000040

Definition at line 4063 of file winternl.h.

◆ PROCESS_CREATE_FLAGS_SUSPENDED

#define PROCESS_CREATE_FLAGS_SUSPENDED   0x00000200

Definition at line 4066 of file winternl.h.

◆ PROCESS_PARAMS_FLAG_NORMALIZED

#define PROCESS_PARAMS_FLAG_NORMALIZED   1

Definition at line 299 of file winternl.h.

◆ PROCESS_PRIOCLASS_ABOVE_NORMAL

#define PROCESS_PRIOCLASS_ABOVE_NORMAL   6

Definition at line 2758 of file winternl.h.

◆ PROCESS_PRIOCLASS_BELOW_NORMAL

#define PROCESS_PRIOCLASS_BELOW_NORMAL   5

Definition at line 2757 of file winternl.h.

◆ PROCESS_PRIOCLASS_HIGH

#define PROCESS_PRIOCLASS_HIGH   3

Definition at line 2755 of file winternl.h.

◆ PROCESS_PRIOCLASS_IDLE

#define PROCESS_PRIOCLASS_IDLE   1

Definition at line 2753 of file winternl.h.

◆ PROCESS_PRIOCLASS_NORMAL

#define PROCESS_PRIOCLASS_NORMAL   2

Definition at line 2754 of file winternl.h.

◆ PROCESS_PRIOCLASS_REALTIME

#define PROCESS_PRIOCLASS_REALTIME   4

Definition at line 2756 of file winternl.h.

◆ PS_ATTRIBUTE_ADDITIVE

#define PS_ATTRIBUTE_ADDITIVE   0x00040000

Definition at line 4114 of file winternl.h.

◆ PS_ATTRIBUTE_ALL_APPLICATION_PACKAGES_POLICY

#define PS_ATTRIBUTE_ALL_APPLICATION_PACKAGES_POLICY   (PsAttributeAllApplicationPackagesPolicy | PS_ATTRIBUTE_INPUT)

Definition at line 4172 of file winternl.h.

◆ PS_ATTRIBUTE_BNO_ISOLATION

#define PS_ATTRIBUTE_BNO_ISOLATION   (PsAttributeBnoIsolation | PS_ATTRIBUTE_INPUT)

Definition at line 4175 of file winternl.h.

◆ PS_ATTRIBUTE_CHILD_PROCESS_POLICY

#define PS_ATTRIBUTE_CHILD_PROCESS_POLICY   (PsAttributeChildProcessPolicy | PS_ATTRIBUTE_INPUT)

Definition at line 4171 of file winternl.h.

◆ PS_ATTRIBUTE_CHPE

Definition at line 4177 of file winternl.h.

◆ PS_ATTRIBUTE_CLIENT_ID

#define PS_ATTRIBUTE_CLIENT_ID   (PsAttributeClientId | PS_ATTRIBUTE_THREAD)

Definition at line 4155 of file winternl.h.

◆ PS_ATTRIBUTE_COMPONENT_FILTER

#define PS_ATTRIBUTE_COMPONENT_FILTER   (PsAttributeComponentFilter | PS_ATTRIBUTE_INPUT)

Definition at line 4180 of file winternl.h.

◆ PS_ATTRIBUTE_DEBUG_PORT

Definition at line 4153 of file winternl.h.

◆ PS_ATTRIBUTE_DESKTOP_APP_POLICY

#define PS_ATTRIBUTE_DESKTOP_APP_POLICY   (PsAttributeDesktopAppPolicy | PS_ATTRIBUTE_INPUT)

Definition at line 4176 of file winternl.h.

◆ PS_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES

#define PS_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES   (PsAttributeEnableOptionalXStateFeatures | PS_ATTRIBUTE_THREAD | PS_ATTRIBUTE_INPUT)

Definition at line 4181 of file winternl.h.

◆ PS_ATTRIBUTE_ERROR_MODE

#define PS_ATTRIBUTE_ERROR_MODE   (PsAttributeErrorMode | PS_ATTRIBUTE_INPUT)

Definition at line 4161 of file winternl.h.

◆ PS_ATTRIBUTE_GROUP_AFFINITY

#define PS_ATTRIBUTE_GROUP_AFFINITY   (PsAttributeGroupAffinity | PS_ATTRIBUTE_THREAD | PS_ATTRIBUTE_INPUT)

Definition at line 4164 of file winternl.h.

◆ PS_ATTRIBUTE_HANDLE_LIST

#define PS_ATTRIBUTE_HANDLE_LIST   (PsAttributeHandleList | PS_ATTRIBUTE_INPUT)

Definition at line 4163 of file winternl.h.

◆ PS_ATTRIBUTE_IDEAL_PROCESSOR

#define PS_ATTRIBUTE_IDEAL_PROCESSOR   (PsAttributeIdealProcessor | PS_ATTRIBUTE_THREAD | PS_ATTRIBUTE_INPUT)

Definition at line 4166 of file winternl.h.

◆ PS_ATTRIBUTE_IMAGE_INFO

#define PS_ATTRIBUTE_IMAGE_INFO   (PsAttributeImageInfo)

Definition at line 4158 of file winternl.h.

◆ PS_ATTRIBUTE_IMAGE_NAME

#define PS_ATTRIBUTE_IMAGE_NAME   (PsAttributeImageName | PS_ATTRIBUTE_INPUT)

Definition at line 4157 of file winternl.h.

◆ PS_ATTRIBUTE_INPUT

#define PS_ATTRIBUTE_INPUT   0x00020000

Definition at line 4113 of file winternl.h.

◆ PS_ATTRIBUTE_JOB_LIST

#define PS_ATTRIBUTE_JOB_LIST   (PsAttributeJobList | PS_ATTRIBUTE_INPUT)

Definition at line 4170 of file winternl.h.

◆ PS_ATTRIBUTE_MACHINE_TYPE

Definition at line 4179 of file winternl.h.

◆ PS_ATTRIBUTE_MEMORY_RESERVE

#define PS_ATTRIBUTE_MEMORY_RESERVE   (PsAttributeMemoryReserve | PS_ATTRIBUTE_INPUT)

Definition at line 4159 of file winternl.h.

◆ PS_ATTRIBUTE_MITIGATION_AUDIT_OPTIONS

#define PS_ATTRIBUTE_MITIGATION_AUDIT_OPTIONS   (PsAttributeMitigationAuditOptions | PS_ATTRIBUTE_INPUT)

Definition at line 4178 of file winternl.h.

◆ PS_ATTRIBUTE_MITIGATION_OPTIONS

#define PS_ATTRIBUTE_MITIGATION_OPTIONS   (PsAttributeMitigationOptions | PS_ATTRIBUTE_INPUT)

Definition at line 4167 of file winternl.h.

◆ PS_ATTRIBUTE_PARENT_PROCESS

Definition at line 4152 of file winternl.h.

◆ PS_ATTRIBUTE_PREFERRED_NODE

#define PS_ATTRIBUTE_PREFERRED_NODE   (PsAttributePreferredNode | PS_ATTRIBUTE_INPUT)

Definition at line 4165 of file winternl.h.

◆ PS_ATTRIBUTE_PRIORITY_CLASS

#define PS_ATTRIBUTE_PRIORITY_CLASS   (PsAttributePriorityClass | PS_ATTRIBUTE_INPUT)

Definition at line 4160 of file winternl.h.

◆ PS_ATTRIBUTE_PROTECTION_LEVEL

Definition at line 4168 of file winternl.h.

◆ PS_ATTRIBUTE_SAFE_OPEN_PROMPT_ORIGIN_CLAIM

#define PS_ATTRIBUTE_SAFE_OPEN_PROMPT_ORIGIN_CLAIM   (PsAttributeSafeOpenPromptOriginClaim | PS_ATTRIBUTE_INPUT)

Definition at line 4174 of file winternl.h.

◆ PS_ATTRIBUTE_SECURE_PROCESS

#define PS_ATTRIBUTE_SECURE_PROCESS   (PsAttributeSecureProcess | PS_ATTRIBUTE_INPUT)

Definition at line 4169 of file winternl.h.

◆ PS_ATTRIBUTE_STD_HANDLE_INFO

#define PS_ATTRIBUTE_STD_HANDLE_INFO   (PsAttributeStdHandleInfo | PS_ATTRIBUTE_INPUT)

Definition at line 4162 of file winternl.h.

◆ PS_ATTRIBUTE_TEB_ADDRESS

#define PS_ATTRIBUTE_TEB_ADDRESS   (PsAttributeTebAddress | PS_ATTRIBUTE_THREAD)

Definition at line 4156 of file winternl.h.

◆ PS_ATTRIBUTE_THREAD

#define PS_ATTRIBUTE_THREAD   0x00010000

Definition at line 4112 of file winternl.h.

◆ PS_ATTRIBUTE_TOKEN

Definition at line 4154 of file winternl.h.

◆ PS_ATTRIBUTE_WIN32K_FILTER

#define PS_ATTRIBUTE_WIN32K_FILTER   (PsAttributeWin32kFilter | PS_ATTRIBUTE_INPUT)

Definition at line 4173 of file winternl.h.

◆ RemoveEntryList

#define RemoveEntryList (   e)    do { PLIST_ENTRY f = (e)->Flink, b = (e)->Blink; f->Blink = b; b->Flink = f; (e)->Flink = (e)->Blink = NULL; } while (0)

Definition at line 5409 of file winternl.h.

◆ RTL_QUERY_REGISTRY_DELETE

#define RTL_QUERY_REGISTRY_DELETE   0x00000040

Definition at line 3588 of file winternl.h.

◆ RTL_QUERY_REGISTRY_DIRECT

#define RTL_QUERY_REGISTRY_DIRECT   0x00000020

Definition at line 3587 of file winternl.h.

◆ RTL_QUERY_REGISTRY_NOEXPAND

#define RTL_QUERY_REGISTRY_NOEXPAND   0x00000010

Definition at line 3586 of file winternl.h.

◆ RTL_QUERY_REGISTRY_NOVALUE

#define RTL_QUERY_REGISTRY_NOVALUE   0x00000008

Definition at line 3585 of file winternl.h.

◆ RTL_QUERY_REGISTRY_REQUIRED

#define RTL_QUERY_REGISTRY_REQUIRED   0x00000004

Definition at line 3584 of file winternl.h.

◆ RTL_QUERY_REGISTRY_SUBKEY

#define RTL_QUERY_REGISTRY_SUBKEY   0x00000001

Definition at line 3582 of file winternl.h.

◆ RTL_QUERY_REGISTRY_TOPKEY

#define RTL_QUERY_REGISTRY_TOPKEY   0x00000002

Definition at line 3583 of file winternl.h.

◆ RTL_QUERY_REGISTRY_TYPECHECK

#define RTL_QUERY_REGISTRY_TYPECHECK   0x00000100

Definition at line 3589 of file winternl.h.

◆ RTL_QUERY_REGISTRY_TYPECHECK_SHIFT

#define RTL_QUERY_REGISTRY_TYPECHECK_SHIFT   24

Definition at line 3591 of file winternl.h.

◆ RTL_REGISTRY_ABSOLUTE

#define RTL_REGISTRY_ABSOLUTE   0

Definition at line 3572 of file winternl.h.

◆ RTL_REGISTRY_CONTROL

#define RTL_REGISTRY_CONTROL   2

Definition at line 3574 of file winternl.h.

◆ RTL_REGISTRY_DEVICEMAP

#define RTL_REGISTRY_DEVICEMAP   4

Definition at line 3576 of file winternl.h.

◆ RTL_REGISTRY_HANDLE

#define RTL_REGISTRY_HANDLE   0x40000000

Definition at line 3579 of file winternl.h.

◆ RTL_REGISTRY_OPTIONAL

#define RTL_REGISTRY_OPTIONAL   0x80000000

Definition at line 3580 of file winternl.h.

◆ RTL_REGISTRY_SERVICES

#define RTL_REGISTRY_SERVICES   1

Definition at line 3573 of file winternl.h.

◆ RTL_REGISTRY_USER

#define RTL_REGISTRY_USER   5

Definition at line 3577 of file winternl.h.

◆ RTL_REGISTRY_WINDOWS_NT

#define RTL_REGISTRY_WINDOWS_NT   3

Definition at line 3575 of file winternl.h.

◆ RtlFillMemory

#define RtlFillMemory (   Destination,
  Length,
  Fill 
)    memset((Destination),(Fill),(Length))

Definition at line 5367 of file winternl.h.

◆ RtlMoveMemory

#define RtlMoveMemory (   Destination,
  Source,
  Length 
)    memmove((Destination),(Source),(Length))

Definition at line 5370 of file winternl.h.

◆ RtlRetrieveUlong

#define RtlRetrieveUlong (   p,
  s 
)    memcpy((p), (s), sizeof(ULONG))

Definition at line 5374 of file winternl.h.

◆ RtlRetrieveUlonglong

#define RtlRetrieveUlonglong (   p,
  s 
)    memcpy((p), (s), sizeof(ULONGLONG))

Definition at line 5375 of file winternl.h.

◆ RtlStoreUlong

#define RtlStoreUlong (   p,
  v 
)    do { ULONG _v = (v); memcpy((p), &_v, sizeof(_v)); } while (0)

Definition at line 5372 of file winternl.h.

◆ RtlStoreUlonglong

#define RtlStoreUlonglong (   p,
  v 
)    do { ULONGLONG _v = (v); memcpy((p), &_v, sizeof(_v)); } while (0)

Definition at line 5373 of file winternl.h.

◆ RtlZeroMemory

#define RtlZeroMemory (   Destination,
  Length 
)    memset((Destination),0,(Length))

Definition at line 5377 of file winternl.h.

◆ SE_ASSIGNPRIMARYTOKEN_PRIVILEGE

#define SE_ASSIGNPRIMARYTOKEN_PRIVILEGE   3

Definition at line 3507 of file winternl.h.

◆ SE_AUDIT_PRIVILEGE

#define SE_AUDIT_PRIVILEGE   21

Definition at line 3526 of file winternl.h.

◆ SE_BACKUP_PRIVILEGE

#define SE_BACKUP_PRIVILEGE   17

Definition at line 3522 of file winternl.h.

◆ SE_CHANGE_NOTIFY_PRIVILEGE

#define SE_CHANGE_NOTIFY_PRIVILEGE   23

Definition at line 3528 of file winternl.h.

◆ SE_CREATE_GLOBAL_PRIVILEGE

#define SE_CREATE_GLOBAL_PRIVILEGE   30

Definition at line 3535 of file winternl.h.

◆ SE_CREATE_PAGEFILE_PRIVILEGE

#define SE_CREATE_PAGEFILE_PRIVILEGE   15

Definition at line 3520 of file winternl.h.

◆ SE_CREATE_PERMANENT_PRIVILEGE

#define SE_CREATE_PERMANENT_PRIVILEGE   16

Definition at line 3521 of file winternl.h.

◆ SE_CREATE_TOKEN_PRIVILEGE

#define SE_CREATE_TOKEN_PRIVILEGE   2

Definition at line 3506 of file winternl.h.

◆ SE_DEBUG_PRIVILEGE

#define SE_DEBUG_PRIVILEGE   20

Definition at line 3525 of file winternl.h.

◆ SE_ENABLE_DELEGATION_PRIVILEGE

#define SE_ENABLE_DELEGATION_PRIVILEGE   27

Definition at line 3532 of file winternl.h.

◆ SE_IMPERSONATE_PRIVILEGE

#define SE_IMPERSONATE_PRIVILEGE   29

Definition at line 3534 of file winternl.h.

◆ SE_INC_BASE_PRIORITY_PRIVILEGE

#define SE_INC_BASE_PRIORITY_PRIVILEGE   14

Definition at line 3519 of file winternl.h.

◆ SE_INCREASE_QUOTA_PRIVILEGE

#define SE_INCREASE_QUOTA_PRIVILEGE   5

Definition at line 3509 of file winternl.h.

◆ SE_LOAD_DRIVER_PRIVILEGE

#define SE_LOAD_DRIVER_PRIVILEGE   10

Definition at line 3515 of file winternl.h.

◆ SE_LOCK_MEMORY_PRIVILEGE

#define SE_LOCK_MEMORY_PRIVILEGE   4

Definition at line 3508 of file winternl.h.

◆ SE_MACHINE_ACCOUNT_PRIVILEGE

#define SE_MACHINE_ACCOUNT_PRIVILEGE   6

Definition at line 3511 of file winternl.h.

◆ SE_MANAGE_VOLUME_PRIVILEGE

#define SE_MANAGE_VOLUME_PRIVILEGE   28

Definition at line 3533 of file winternl.h.

◆ SE_MAX_WELL_KNOWN_PRIVILEGE

#define SE_MAX_WELL_KNOWN_PRIVILEGE   SE_CREATE_GLOBAL_PRIVILEGE

Definition at line 3536 of file winternl.h.

◆ SE_MIN_WELL_KNOWN_PRIVILEGE

#define SE_MIN_WELL_KNOWN_PRIVILEGE   2

Definition at line 3505 of file winternl.h.

◆ SE_PROF_SINGLE_PROCESS_PRIVILEGE

#define SE_PROF_SINGLE_PROCESS_PRIVILEGE   13

Definition at line 3518 of file winternl.h.

◆ SE_REMOTE_SHUTDOWN_PRIVILEGE

#define SE_REMOTE_SHUTDOWN_PRIVILEGE   24

Definition at line 3529 of file winternl.h.

◆ SE_RESTORE_PRIVILEGE

#define SE_RESTORE_PRIVILEGE   18

Definition at line 3523 of file winternl.h.

◆ SE_SECURITY_PRIVILEGE

#define SE_SECURITY_PRIVILEGE   8

Definition at line 3513 of file winternl.h.

◆ SE_SHUTDOWN_PRIVILEGE

#define SE_SHUTDOWN_PRIVILEGE   19

Definition at line 3524 of file winternl.h.

◆ SE_SYNC_AGENT_PRIVILEGE

#define SE_SYNC_AGENT_PRIVILEGE   26

Definition at line 3531 of file winternl.h.

◆ SE_SYSTEM_ENVIRONMENT_PRIVILEGE

#define SE_SYSTEM_ENVIRONMENT_PRIVILEGE   22

Definition at line 3527 of file winternl.h.

◆ SE_SYSTEM_PROFILE_PRIVILEGE

#define SE_SYSTEM_PROFILE_PRIVILEGE   11

Definition at line 3516 of file winternl.h.

◆ SE_SYSTEMTIME_PRIVILEGE

#define SE_SYSTEMTIME_PRIVILEGE   12

Definition at line 3517 of file winternl.h.

◆ SE_TAKE_OWNERSHIP_PRIVILEGE

#define SE_TAKE_OWNERSHIP_PRIVILEGE   9

Definition at line 3514 of file winternl.h.

◆ SE_TCB_PRIVILEGE

#define SE_TCB_PRIVILEGE   7

Definition at line 3512 of file winternl.h.

◆ SE_UNDOCK_PRIVILEGE

#define SE_UNDOCK_PRIVILEGE   25

Definition at line 3530 of file winternl.h.

◆ SE_UNSOLICITED_INPUT_PRIVILEGE

#define SE_UNSOLICITED_INPUT_PRIVILEGE   6 /* obsolete */

Definition at line 3510 of file winternl.h.

◆ SERVERNAME_CURRENT

#define SERVERNAME_CURRENT   ((HANDLE)NULL)

Definition at line 3489 of file winternl.h.

◆ TEB_ACTIVE_FRAME_CONTEXT_FLAG_EXTENDED

#define TEB_ACTIVE_FRAME_CONTEXT_FLAG_EXTENDED   0x00000001

Definition at line 458 of file winternl.h.

◆ TEB_ACTIVE_FRAME_FLAG_EXTENDED

#define TEB_ACTIVE_FRAME_FLAG_EXTENDED   0x00000001

Definition at line 459 of file winternl.h.

◆ THREAD_CREATE_FLAGS_ACCESS_CHECK_IN_TARGET

#define THREAD_CREATE_FLAGS_ACCESS_CHECK_IN_TARGET   0x00000020

Definition at line 4082 of file winternl.h.

◆ THREAD_CREATE_FLAGS_CREATE_SUSPENDED

#define THREAD_CREATE_FLAGS_CREATE_SUSPENDED   0x00000001

Definition at line 4078 of file winternl.h.

◆ THREAD_CREATE_FLAGS_HAS_SECURITY_DESCRIPTOR

#define THREAD_CREATE_FLAGS_HAS_SECURITY_DESCRIPTOR   0x00000010

Definition at line 4081 of file winternl.h.

◆ THREAD_CREATE_FLAGS_HIDE_FROM_DEBUGGER

#define THREAD_CREATE_FLAGS_HIDE_FROM_DEBUGGER   0x00000004

Definition at line 4080 of file winternl.h.

◆ THREAD_CREATE_FLAGS_INITIAL_THREAD

#define THREAD_CREATE_FLAGS_INITIAL_THREAD   0x00000080

Definition at line 4083 of file winternl.h.

◆ THREAD_CREATE_FLAGS_SKIP_THREAD_ATTACH

#define THREAD_CREATE_FLAGS_SKIP_THREAD_ATTACH   0x00000002

Definition at line 4079 of file winternl.h.

◆ WINE_NTSTATUS_DECLARED

#define WINE_NTSTATUS_DECLARED

Definition at line 99 of file winternl.h.

◆ WOW64_CPUFLAGS_MSFT64

#define WOW64_CPUFLAGS_MSFT64   0x01

Definition at line 4419 of file winternl.h.

◆ WOW64_CPUFLAGS_SOFTWARE

#define WOW64_CPUFLAGS_SOFTWARE   0x02

Definition at line 4420 of file winternl.h.

◆ WOW64_CPURESERVED_FLAG_RESET_STATE

#define WOW64_CPURESERVED_FLAG_RESET_STATE   1

Definition at line 4394 of file winternl.h.

◆ WOW64_TLS_APCLIST

#define WOW64_TLS_APCLIST   7

Definition at line 1365 of file winternl.h.

◆ WOW64_TLS_CPURESERVED

#define WOW64_TLS_CPURESERVED   1

Definition at line 1362 of file winternl.h.

◆ WOW64_TLS_FILESYSREDIR

#define WOW64_TLS_FILESYSREDIR   8

Definition at line 1366 of file winternl.h.

◆ WOW64_TLS_MAX_NUMBER

#define WOW64_TLS_MAX_NUMBER   19

Definition at line 1368 of file winternl.h.

◆ WOW64_TLS_TEMPLIST

#define WOW64_TLS_TEMPLIST   3

Definition at line 1363 of file winternl.h.

◆ WOW64_TLS_USERCALLBACKDATA

#define WOW64_TLS_USERCALLBACKDATA   5

Definition at line 1364 of file winternl.h.

◆ WOW64_TLS_WOW64INFO

#define WOW64_TLS_WOW64INFO   10

Definition at line 1367 of file winternl.h.

Typedef Documentation

◆ ACTIVATION_CONTEXT_STACK

◆ ACTIVATION_CONTEXT_STACK32

◆ ACTIVATION_CONTEXT_STACK64

◆ address

typedef PVOID* address

Definition at line 2786 of file winternl.h.

◆ ANSI_STRING

Definition at line 120 of file winternl.h.

◆ API_SET_HASH_ENTRY

◆ API_SET_NAMESPACE

◆ API_SET_NAMESPACE_ENTRY

◆ API_SET_VALUE_ENTRY

◆ ATOM_BASIC_INFORMATION

◆ ATOM_INFORMATION_CLASS

◆ CHPE_V2_CPU_AREA_INFO

◆ CHPEV2_PROCESS_INFO

◆ CLIENT_ID

◆ CLIENT_ID32

◆ CLIENT_ID64

◆ CPTABLEINFO

◆ CSHORT

typedef short CSHORT

Definition at line 108 of file winternl.h.

◆ CURDIR

◆ CURDIR32

◆ CURDIR64

◆ DBG_STATE

◆ DBGKM_CREATE_PROCESS

◆ DBGKM_CREATE_THREAD

◆ DBGKM_EXCEPTION

◆ DBGKM_EXIT_PROCESS

◆ DBGKM_EXIT_THREAD

◆ DBGKM_LOAD_DLL

◆ DBGKM_UNLOAD_DLL

◆ DBGUI_CREATE_PROCESS

◆ DBGUI_CREATE_THREAD

◆ DBGUI_WAIT_STATE_CHANGE

◆ DEBUG_BUFFER

◆ DEBUG_HEAP_INFORMATION

◆ DEBUG_LOCK_INFORMATION

◆ DEBUG_MODULE_INFORMATION

◆ DEBUGOBJECTINFOCLASS

◆ DIRECTORY_BASIC_INFORMATION

◆ EVENT_BASIC_INFORMATION

◆ EVENT_INFORMATION_CLASS

◆ FILE_ACCESS_INFORMATION

◆ FILE_ALIGNMENT_INFORMATION

◆ FILE_ALL_INFORMATION

◆ FILE_ALLOCATION_INFORMATION

◆ FILE_ATTRIBUTE_TAG_INFORMATION

◆ FILE_BASIC_INFORMATION

◆ FILE_BOTH_DIR_INFORMATION

◆ FILE_BOTH_DIRECTORY_INFORMATION

◆ FILE_COMPLETION_INFORMATION

◆ FILE_DIRECTORY_INFORMATION

◆ FILE_DISPOSITION_INFORMATION

◆ FILE_DISPOSITION_INFORMATION_EX

◆ FILE_EA_INFORMATION

◆ FILE_END_OF_FILE_INFORMATION

◆ FILE_FULL_DIR_INFORMATION

◆ FILE_FULL_DIRECTORY_INFORMATION

◆ FILE_FULL_EA_INFORMATION

◆ FILE_ID_128

◆ FILE_ID_BOTH_DIRECTORY_INFORMATION

◆ FILE_ID_FULL_DIRECTORY_INFORMATION

◆ FILE_ID_GLOBAL_TX_DIR_INFORMATION

◆ FILE_ID_INFORMATION

◆ FILE_INFORMATION_CLASS

◆ FILE_INTERNAL_INFORMATION

◆ FILE_IO_COMPLETION_INFORMATION

◆ FILE_IO_COMPLETION_NOTIFICATION_INFORMATION

◆ FILE_LINK_INFORMATION

◆ FILE_MAILSLOT_QUERY_INFORMATION

◆ FILE_MAILSLOT_SET_INFORMATION

◆ FILE_MODE_INFORMATION

◆ FILE_NAME_INFORMATION

◆ FILE_NAMES_INFORMATION

◆ FILE_NETWORK_OPEN_INFORMATION

◆ FILE_OBJECTID_BUFFER

◆ FILE_OBJECTID_INFORMATION

◆ FILE_PIPE_INFORMATION

◆ FILE_PIPE_LOCAL_INFORMATION

◆ FILE_POSITION_INFORMATION

◆ FILE_QUOTA_INFORMATION

◆ FILE_RENAME_INFORMATION

◆ FILE_REPARSE_POINT_INFORMATION

◆ FILE_STANDARD_INFORMATION

◆ FILE_STAT_INFORMATION

◆ FILE_STREAM_INFORMATION

◆ FILETIME

◆ FLS_CALLBACK

◆ FLS_INFO_CHUNK

◆ FS_INFORMATION_CLASS

◆ GDI_TEB_BATCH

◆ GLOBAL_FLS_DATA

◆ HARDERROR_RESPONSE

◆ HARDERROR_RESPONSE_OPTION

◆ INITIAL_TEB

◆ IO_COMPLETION_INFORMATION_CLASS

◆ IO_STATUS_BLOCK

◆ KCONTINUE_ARGUMENT

◆ KCONTINUE_TYPE

◆ KERNEL_CALLBACK_PROC

typedef NTSTATUS(WINAPI * KERNEL_CALLBACK_PROC) (void *, ULONG)

Definition at line 461 of file winternl.h.

◆ KERNEL_USER_TIMES

◆ KEY_BASIC_INFORMATION

◆ KEY_CACHED_INFORMATION

◆ KEY_FULL_INFORMATION

◆ KEY_INFORMATION_CLASS

◆ KEY_MULTIPLE_VALUE_INFORMATION

◆ KEY_NAME_INFORMATION

◆ KEY_NODE_INFORMATION

◆ KEY_VALUE_BASIC_INFORMATION

◆ KEY_VALUE_ENTRY

◆ KEY_VALUE_FULL_INFORMATION

◆ KEY_VALUE_INFORMATION_CLASS

◆ KEY_VALUE_PARTIAL_INFORMATION

◆ KEY_VALUE_PARTIAL_INFORMATION_ALIGN64

◆ KPROFILE_SOURCE

◆ LDR_DATA_TABLE_ENTRY

◆ LDR_DDAG_NODE

◆ LDR_DDAG_STATE

◆ LDR_DEPENDENCY

◆ LDR_DLL_LOAD_REASON

◆ LDR_DLL_LOADED_NOTIFICATION_DATA

◆ LDR_DLL_NOTIFICATION_DATA

◆ LDR_DLL_UNLOADED_NOTIFICATION_DATA

◆ LDR_RESOURCE_INFO

◆ LDR_SERVICE_TAG_RECORD

◆ LDRP_CSLIST

◆ LIST_ENTRY32

◆ LIST_ENTRY64

◆ LPC_MESSAGE

◆ LPC_SECTION_READ

◆ LPC_SECTION_WRITE

◆ LPFILETIME

◆ LPRTL_RWLOCK

◆ MANAGE_WRITES_TO_EXECUTABLE_MEMORY

◆ MEMORY_IMAGE_INFORMATION

◆ MEMORY_INFORMATION_CLASS

◆ MEMORY_RANGE_ENTRY

◆ MEMORY_REGION_INFORMATION

◆ MEMORY_RESERVE_OBJECT_TYPE

◆ MEMORY_SECTION_NAME

◆ MEMORY_WORKING_SET_EX_BLOCK

◆ MEMORY_WORKING_SET_EX_INFORMATION

◆ MUTANT_BASIC_INFORMATION

◆ MUTANT_INFORMATION_CLASS

◆ NLSTABLEINFO

◆ NT_TIB32

◆ NT_TIB64

◆ NTSTATUS

typedef LONG NTSTATUS

Definition at line 100 of file winternl.h.

◆ OBJECT_ATTRIBUTES

◆ OBJECT_BASIC_INFORMATION

◆ OBJECT_HANDLE_FLAG_INFORMATION

◆ OBJECT_INFORMATION_CLASS

◆ OBJECT_NAME_INFORMATION

◆ OBJECT_TYPE_INFORMATION

◆ OBJECT_TYPES_INFORMATION

◆ OEM_STRING

typedef STRING OEM_STRING

Definition at line 124 of file winternl.h.

◆ PACTIVATION_CONTEXT_STACK

◆ PANSI_STRING

Definition at line 121 of file winternl.h.

◆ PATOM_BASIC_INFORMATION

◆ PCANSI_STRING

Definition at line 122 of file winternl.h.

◆ PCHPE_V2_CPU_AREA_INFO

◆ PCHPEV2_PROCESS_INFO

◆ PCLIENT_ID

◆ PCOEM_STRING

Definition at line 126 of file winternl.h.

◆ PCPTABLEINFO

◆ PCRTL_BITMAP

Definition at line 252 of file winternl.h.

◆ PCRTL_BITMAP_RUN

Definition at line 259 of file winternl.h.

◆ PCSHORT

typedef CSHORT* PCSHORT

Definition at line 109 of file winternl.h.

◆ PCSZ

typedef const char* PCSZ

Definition at line 106 of file winternl.h.

◆ PCUNICODE_STRING

Definition at line 137 of file winternl.h.

◆ PCURDIR

typedef struct _CURDIR * PCURDIR

◆ PDBG_STATE

◆ PDBGKM_CREATE_PROCESS

◆ PDBGKM_CREATE_THREAD

◆ PDBGKM_EXCEPTION

◆ PDBGKM_EXIT_PROCESS

◆ PDBGKM_EXIT_THREAD

◆ PDBGKM_LOAD_DLL

◆ PDBGKM_UNLOAD_DLL

◆ PDBGUI_CREATE_PROCESS

◆ PDBGUI_CREATE_THREAD

◆ PDBGUI_WAIT_STATE_CHANGE

◆ PDEBUG_BUFFER

◆ PDEBUG_HEAP_INFORMATION

◆ PDEBUG_LOCK_INFORMATION

◆ PDEBUG_MODULE_INFORMATION

◆ PDEBUGOBJECTINFOCLASS

◆ PDIRECTORY_BASIC_INFORMATION

◆ PEB

typedef struct _PEB PEB

◆ PEB32

typedef struct _PEB32 PEB32

◆ PEB64

typedef struct _PEB64 PEB64

◆ PEB_LDR_DATA

◆ PEB_LDR_DATA32

◆ PEB_LDR_DATA64

◆ PEVENT_BASIC_INFORMATION

◆ PEVENT_INFORMATION_CLASS

◆ PFILE_ACCESS_INFORMATION

◆ PFILE_ALIGNMENT_INFORMATION

◆ PFILE_ALL_INFORMATION

◆ PFILE_ALLOCATION_INFORMATION

◆ PFILE_ATTRIBUTE_TAG_INFORMATION

◆ PFILE_BASIC_INFORMATION

◆ PFILE_BOTH_DIR_INFORMATION

◆ PFILE_BOTH_DIRECTORY_INFORMATION

◆ PFILE_COMPLETION_INFORMATION

◆ PFILE_DIRECTORY_INFORMATION

◆ PFILE_DISPOSITION_INFORMATION

◆ PFILE_DISPOSITION_INFORMATION_EX

◆ PFILE_EA_INFORMATION

◆ PFILE_END_OF_FILE_INFORMATION

◆ PFILE_FULL_DIR_INFORMATION

◆ PFILE_FULL_DIRECTORY_INFORMATION

◆ PFILE_FULL_EA_INFORMATION

◆ PFILE_ID_128

◆ PFILE_ID_BOTH_DIRECTORY_INFORMATION

◆ PFILE_ID_FULL_DIRECTORY_INFORMATION

◆ PFILE_ID_GLOBAL_TX_DIR_INFORMATION

◆ PFILE_ID_INFORMATION

◆ PFILE_INFORMATION_CLASS

◆ PFILE_INTERNAL_INFORMATION

◆ PFILE_IO_COMPLETION_INFORMATION

◆ PFILE_IO_COMPLETION_NOTIFICATION_INFORMATION

◆ PFILE_LINK_INFORMATION

◆ PFILE_MAILSLOT_QUERY_INFORMATION

◆ PFILE_MAILSLOT_SET_INFORMATION

◆ PFILE_MODE_INFORMATION

◆ PFILE_NAME_INFORMATION

◆ PFILE_NAMES_INFORMATION

◆ PFILE_NETWORK_OPEN_INFORMATION

◆ PFILE_OBJECTID_BUFFER

◆ PFILE_OBJECTID_INFORMATION

◆ PFILE_PIPE_INFORMATION

◆ PFILE_PIPE_LOCAL_INFORMATION

◆ PFILE_POSITION_INFORMATION

◆ PFILE_QUOTA_INFORMATION

◆ PFILE_RENAME_INFORMATION

◆ PFILE_REPARSE_POINT_INFORMATION

◆ PFILE_STANDARD_INFORMATION

◆ PFILE_STAT_INFORMATION

◆ PFILE_STREAM_INFORMATION

◆ PFILETIME

◆ PFLS_CALLBACK

◆ PFLS_INFO_CHUNK

◆ PFS_INFORMATION_CLASS

◆ PGLOBAL_FLS_DATA

◆ PHARDERROR_RESPONSE

◆ PHARDERROR_RESPONSE_OPTION

◆ PINITIAL_TEB

◆ PIO_APC_ROUTINE

typedef void(WINAPI * PIO_APC_ROUTINE) (PVOID, PIO_STATUS_BLOCK, ULONG)

Definition at line 2566 of file winternl.h.

◆ PIO_COMPLETION_INFORMATION_CLASS

◆ PIO_STATUS_BLOCK

◆ PKCONTINUE_ARGUMENT

◆ PKERNEL_USER_TIMES

◆ PKEY_BASIC_INFORMATION

◆ PKEY_CACHED_INFORMATION

◆ PKEY_FULL_INFORMATION

◆ PKEY_MULTIPLE_VALUE_INFORMATION

◆ PKEY_NAME_INFORMATION

◆ PKEY_NODE_INFORMATION

◆ PKEY_VALUE_BASIC_INFORMATION

◆ PKEY_VALUE_ENTRY

◆ PKEY_VALUE_FULL_INFORMATION

◆ PKEY_VALUE_PARTIAL_INFORMATION

◆ PKEY_VALUE_PARTIAL_INFORMATION_ALIGN64

◆ PKPROFILE_SOURCE

◆ PLDR_DATA_TABLE_ENTRY

◆ PLDR_DDAG_NODE

◆ PLDR_DEPENDENCY

◆ PLDR_DLL_LOAD_REASON

◆ PLDR_DLL_LOADED_NOTIFICATION_DATA

◆ PLDR_DLL_NOTIFICATION_DATA

◆ PLDR_DLL_NOTIFICATION_FUNCTION

typedef void(CALLBACK * PLDR_DLL_NOTIFICATION_FUNCTION) (ULONG, LDR_DLL_NOTIFICATION_DATA *, void *)

Definition at line 4009 of file winternl.h.

◆ PLDR_DLL_UNLOADED_NOTIFICATION_DATA

◆ PLDR_RESOURCE_INFO

◆ PLDR_SERVICE_TAG_RECORD

◆ PLDRP_CSLIST

◆ PLPC_MESSAGE

◆ PLPC_SECTION_READ

◆ PLPC_SECTION_WRITE

◆ PMANAGE_WRITES_TO_EXECUTABLE_MEMORY

◆ PMEMORY_IMAGE_INFORMATION

◆ PMEMORY_RANGE_ENTRY

◆ PMEMORY_REGION_INFORMATION

◆ PMEMORY_RESERVE_OBJECT_TYPE

◆ PMEMORY_SECTION_NAME

◆ PMEMORY_WORKING_SET_EX_BLOCK

◆ PMEMORY_WORKING_SET_EX_INFORMATION

◆ PMUTANT_BASIC_INFORMATION

◆ PMUTANT_INFORMATION_CLASS

◆ PNLSTABLEINFO

◆ PNTAPCFUNC

typedef void(CALLBACK * PNTAPCFUNC) (ULONG_PTR, ULONG_PTR, ULONG_PTR)

Definition at line 3491 of file winternl.h.

◆ POBJECT_ATTRIBUTES

◆ POBJECT_BASIC_INFORMATION

◆ POBJECT_HANDLE_FLAG_INFORMATION

◆ POBJECT_INFORMATION_CLASS

◆ POBJECT_NAME_INFORMATION

◆ POBJECT_TYPE_INFORMATION

◆ POBJECT_TYPES_INFORMATION

◆ POEM_STRING

Definition at line 125 of file winternl.h.

◆ PORT_INFORMATION_CLASS

◆ PORT_MESSAGE

◆ PORT_MESSAGE_HEADER

◆ PPEB

typedef struct _PEB * PPEB

◆ PPEB_LDR_DATA

◆ PPEB_LDR_DATA32

◆ PPEB_LDR_DATA64

◆ PPORT_INFORMATION_CLASS

◆ PPORT_MESSAGE

◆ PPORT_MESSAGE_HEADER

◆ PPROCESS_BASIC_INFORMATION

◆ PPROCESS_CYCLE_TIME_INFORMATION

◆ PPROCESS_INSTRUMENTATION_CALLBACK_INFORMATION

◆ PPROCESS_PRIORITY_CLASS

◆ PPROCESS_STACK_ALLOCATION_INFORMATION

◆ PPROCESS_STACK_ALLOCATION_INFORMATION_EX

◆ PPS_ATTRIBUTE_LIST

◆ PPS_CREATE_INFO

◆ PROCESS_BASIC_INFORMATION

◆ PROCESS_BASIC_INFORMATION64

◆ PROCESS_CYCLE_TIME_INFORMATION

◆ PROCESS_INSTRUMENTATION_CALLBACK_INFORMATION

◆ PROCESS_PRIORITY_CLASS

◆ PROCESS_STACK_ALLOCATION_INFORMATION

◆ PROCESS_STACK_ALLOCATION_INFORMATION_EX

◆ PROCESSINFOCLASS

◆ PRTL_ACTIVATION_CONTEXT_STACK_FRAME

◆ PRTL_ATOM

Definition at line 3342 of file winternl.h.

◆ PRTL_ATOM_TABLE

◆ PRTL_ATOM_TABLE_ENTRY

◆ PRTL_BITMAP

◆ PRTL_BITMAP_RUN

◆ PRTL_DRIVE_LETTER_CURDIR

◆ PRTL_DYNAMIC_TIME_ZONE_INFORMATION

◆ PRTL_EXCEPTION_FILTER

typedef LONG(CALLBACK * PRTL_EXCEPTION_FILTER) (PEXCEPTION_POINTERS)

Definition at line 4108 of file winternl.h.

◆ PRTL_HEAP_COMMIT_ROUTINE

typedef RTL_HEAP_COMMIT_ROUTINE* PRTL_HEAP_COMMIT_ROUTINE

Definition at line 2787 of file winternl.h.

◆ PRTL_HEAP_PARAMETERS

◆ PRTL_OVERLAPPED_COMPLETION_ROUTINE

typedef VOID(CALLBACK * PRTL_OVERLAPPED_COMPLETION_ROUTINE) (DWORD, DWORD, LPVOID)

Definition at line 3619 of file winternl.h.

◆ PRTL_PROCESS_MODULE_INFORMATION

◆ PRTL_PROCESS_MODULES

◆ PRTL_QUERY_REGISTRY_ROUTINE

◆ PRTL_QUERY_REGISTRY_TABLE

◆ PRTL_RELATIVE_NAME

◆ PRTL_SYSTEM_TIME

◆ PRTL_THREAD_START_ROUTINE

typedef void(CALLBACK * PRTL_THREAD_START_ROUTINE) (LPVOID)

Definition at line 3492 of file winternl.h.

◆ PRTL_TIME_ZONE_INFORMATION

◆ PRTL_USER_PROCESS_INFORMATION

◆ PRTL_USER_PROCESS_PARAMETERS

◆ PRTL_WORK_ITEM_ROUTINE

typedef DWORD(CALLBACK * PRTL_WORK_ITEM_ROUTINE) (LPVOID)

Definition at line 3493 of file winternl.h.

◆ PS_ATTRIBUTE

◆ PS_ATTRIBUTE_LIST

◆ PS_ATTRIBUTE_NUM

◆ PS_CREATE_INFO

◆ PS_CREATE_STATE

◆ PSECTION_BASIC_INFORMATION

◆ PSECTION_IMAGE_INFORMATION

◆ PSEMAPHORE_BASIC_INFORMATION

◆ PSEMAPHORE_INFORMATION_CLASS

◆ PSHUTDOWN_ACTION

◆ PSTRING

typedef struct _STRING * PSTRING

◆ PSYSDBG_COMMAND

◆ PSYSTEM_BASIC_INFORMATION

◆ PSYSTEM_CACHE_INFORMATION

◆ PSYSTEM_CODEINTEGRITY_INFORMATION

◆ PSYSTEM_CONFIGURATION_INFO

◆ PSYSTEM_CPU_INFORMATION

◆ PSYSTEM_DRIVER_INFORMATION

◆ PSYSTEM_EXCEPTION_INFORMATION

◆ PSYSTEM_EXTENDED_THREAD_INFORMATION

◆ PSYSTEM_FIRMWARE_TABLE_ACTION

◆ PSYSTEM_FIRMWARE_TABLE_INFORMATION

◆ PSYSTEM_HANDLE_ENTRY

◆ PSYSTEM_HANDLE_INFORMATION

◆ PSYSTEM_INFORMATION_CLASS

◆ PSYSTEM_INTERRUPT_INFORMATION

◆ PSYSTEM_KERNEL_DEBUGGER_INFORMATION

◆ PSYSTEM_KERNEL_DEBUGGER_INFORMATION_EX

◆ PSYSTEM_LOOKASIDE_INFORMATION

◆ PSYSTEM_PERFORMANCE_INFORMATION

◆ PSYSTEM_PROCESS_ID_INFORMATION

◆ PSYSTEM_PROCESS_INFORMATION

◆ PSYSTEM_PROCESSOR_FEATURES_INFORMATION

◆ PSYSTEM_PROCESSOR_PERFORMANCE_INFORMATION

◆ PSYSTEM_REGISTRY_QUOTA_INFORMATION

◆ PSYSTEM_THREAD_INFORMATION

◆ PSYSTEM_TIME_ADJUSTMENT

◆ PSYSTEM_TIME_ADJUSTMENT_QUERY

◆ PSYSTEM_TIMEOFDAY_INFORMATION

◆ PTEB

typedef struct _TEB * PTEB

◆ PTEB_ACTIVE_FRAME

◆ PTEB_ACTIVE_FRAME_CONTEXT

◆ PTEB_ACTIVE_FRAME_CONTEXT_EX

◆ PTEB_ACTIVE_FRAME_EX

◆ PTEB_FLS_DATA

◆ PTHREAD_BASIC_INFORMATION

◆ PTHREAD_DESCRIPTOR_INFORMATION

◆ PTHREAD_NAME_INFORMATION

◆ PTIME_FIELDS

◆ PTIMER_APC_ROUTINE

typedef VOID(CALLBACK * PTIMER_APC_ROUTINE) (PVOID, ULONG, LONG)

Definition at line 3621 of file winternl.h.

◆ PTIMER_BASIC_INFORMATION

◆ PTP_IO_CALLBACK

typedef void(CALLBACK * PTP_IO_CALLBACK) (PTP_CALLBACK_INSTANCE, void *, void *, IO_STATUS_BLOCK *, PTP_IO)

Definition at line 4110 of file winternl.h.

◆ PUNICODE_STRING

◆ PVIRTUAL_MEMORY_INFORMATION_CLASS

◆ PVM_COUNTERS

◆ PVM_COUNTERS_EX

◆ PWINSTATIONINFORMATIONW

◆ PWINSTATIONQUERYINFORMATIONW

typedef BOOLEAN(WINAPI * PWINSTATIONQUERYINFORMATIONW) (HANDLE, ULONG, WINSTATIONINFOCLASS, PVOID, ULONG, PULONG)

Definition at line 3255 of file winternl.h.

◆ PWOW64_CPU_AREA_INFO

◆ PWOW64_CPURESERVED

◆ RTL_ACTIVATION_CONTEXT_STACK_FRAME

◆ RTL_ATOM

Definition at line 3342 of file winternl.h.

◆ RTL_ATOM_TABLE

◆ RTL_ATOM_TABLE_ENTRY

◆ RTL_BITMAP

◆ RTL_BITMAP_RUN

◆ RTL_DRIVE_LETTER_CURDIR

◆ RTL_DRIVE_LETTER_CURDIR32

◆ RTL_DRIVE_LETTER_CURDIR64

◆ RTL_DYNAMIC_TIME_ZONE_INFORMATION

◆ RTL_HANDLE

◆ RTL_HANDLE_TABLE

◆ RTL_HEAP_PARAMETERS

◆ RTL_PROCESS_MODULE_INFORMATION

◆ RTL_PROCESS_MODULE_INFORMATION_EX

◆ RTL_PROCESS_MODULES

◆ RTL_QUERY_REGISTRY_TABLE

◆ RTL_RELATIVE_NAME

◆ RTL_RWLOCK

◆ RTL_SYSTEM_TIME

◆ RTL_TIME_ZONE_INFORMATION

◆ RTL_USER_PROCESS_INFORMATION

◆ RTL_USER_PROCESS_PARAMETERS

◆ RTL_USER_PROCESS_PARAMETERS32

◆ RTL_USER_PROCESS_PARAMETERS64

◆ RTL_WAITORTIMERCALLBACKFUNC

typedef void(NTAPI * RTL_WAITORTIMERCALLBACKFUNC) (PVOID, BOOLEAN)

Definition at line 3494 of file winternl.h.

◆ SECTION_BASIC_INFORMATION

◆ SECTION_IMAGE_INFORMATION

◆ SECTION_INFORMATION_CLASS

◆ SECTION_INHERIT

◆ SEMAPHORE_BASIC_INFORMATION

◆ SEMAPHORE_INFORMATION_CLASS

◆ SHUTDOWN_ACTION

◆ size

typedef PVOID PSIZE_T size

Definition at line 2786 of file winternl.h.

◆ STRING

◆ SYSDBG_COMMAND

◆ SYSTEM_BASIC_INFORMATION

◆ SYSTEM_CACHE_INFORMATION

◆ SYSTEM_CODEINTEGRITY_INFORMATION

◆ SYSTEM_CONFIGURATION_INFO

◆ SYSTEM_CPU_INFORMATION

◆ SYSTEM_DRIVER_INFORMATION

◆ SYSTEM_EXCEPTION_INFORMATION

◆ SYSTEM_EXTENDED_THREAD_INFORMATION

◆ SYSTEM_FIRMWARE_TABLE_ACTION

◆ SYSTEM_FIRMWARE_TABLE_INFORMATION

◆ SYSTEM_HANDLE_ENTRY

◆ SYSTEM_HANDLE_INFORMATION

◆ SYSTEM_HANDLE_INFORMATION_EX

◆ SYSTEM_HANDLE_TABLE_ENTRY_INFO_EX

◆ SYSTEM_INFORMATION_CLASS

◆ SYSTEM_INTERRUPT_INFORMATION

◆ SYSTEM_KERNEL_DEBUGGER_INFORMATION

◆ SYSTEM_KERNEL_DEBUGGER_INFORMATION_EX

◆ SYSTEM_LOOKASIDE_INFORMATION

◆ SYSTEM_PERFORMANCE_INFORMATION

◆ SYSTEM_PROCESS_ID_INFORMATION

◆ SYSTEM_PROCESS_INFORMATION

◆ SYSTEM_PROCESSOR_FEATURES_INFORMATION

◆ SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION

◆ SYSTEM_REGISTRY_QUOTA_INFORMATION

◆ SYSTEM_THREAD_INFORMATION

◆ SYSTEM_TIME_ADJUSTMENT

◆ SYSTEM_TIME_ADJUSTMENT_QUERY

◆ SYSTEM_TIMEOFDAY_INFORMATION

◆ TEB

typedef struct _TEB TEB

◆ TEB32

typedef struct _TEB32 TEB32

◆ TEB64

typedef struct _TEB64 TEB64

◆ TEB_ACTIVE_FRAME

◆ TEB_ACTIVE_FRAME_CONTEXT

◆ TEB_ACTIVE_FRAME_CONTEXT_EX

◆ TEB_ACTIVE_FRAME_EX

◆ TEB_FLS_DATA

◆ THREAD_BASIC_INFORMATION

◆ THREAD_DESCRIPTOR_INFORMATION

◆ THREAD_NAME_INFORMATION

◆ THREADINFOCLASS

◆ TIME_FIELDS

◆ TIMER_BASIC_INFORMATION

◆ TIMER_INFORMATION_CLASS

◆ UNICODE_STRING

◆ UNICODE_STRING32

◆ UNICODE_STRING64

◆ VM_COUNTERS

◆ VM_COUNTERS_EX

◆ WINSTATIONINFOCLASS

◆ WINSTATIONINFORMATIONW

◆ WOW64_CPU_AREA_INFO

◆ WOW64_CPURESERVED

◆ WOW64INFO

Enumeration Type Documentation

◆ _ATOM_INFORMATION_CLASS

Enumerator
AtomBasicInformation 
AtomTableInformation 
AtomBasicInformation 
AtomTableInformation 

Definition at line 3344 of file winternl.h.

3344 {
enum _ATOM_INFORMATION_CLASS ATOM_INFORMATION_CLASS
@ AtomBasicInformation
Definition: winternl.h:3345
@ AtomTableInformation
Definition: winternl.h:3346

◆ _DBG_STATE

Enumerator
DbgIdle 
DbgReplyPending 
DbgCreateThreadStateChange 
DbgCreateProcessStateChange 
DbgExitThreadStateChange 
DbgExitProcessStateChange 
DbgExceptionStateChange 
DbgBreakpointStateChange 
DbgSingleStepStateChange 
DbgLoadDllStateChange 
DbgUnloadDllStateChange 
DbgIdle 
DbgReplyPending 
DbgCreateThreadStateChange 
DbgCreateProcessStateChange 
DbgExitThreadStateChange 
DbgExitProcessStateChange 
DbgExceptionStateChange 
DbgBreakpointStateChange 
DbgSingleStepStateChange 
DbgLoadDllStateChange 
DbgUnloadDllStateChange 

Definition at line 4325 of file winternl.h.

4326{
4327 DbgIdle,
enum _DBG_STATE DBG_STATE
enum _DBG_STATE * PDBG_STATE
@ DbgBreakpointStateChange
Definition: winternl.h:4334
@ DbgCreateProcessStateChange
Definition: winternl.h:4330
@ DbgCreateThreadStateChange
Definition: winternl.h:4329
@ DbgExitProcessStateChange
Definition: winternl.h:4332
@ DbgExceptionStateChange
Definition: winternl.h:4333
@ DbgUnloadDllStateChange
Definition: winternl.h:4337
@ DbgExitThreadStateChange
Definition: winternl.h:4331
@ DbgSingleStepStateChange
Definition: winternl.h:4335
@ DbgIdle
Definition: winternl.h:4327
@ DbgLoadDllStateChange
Definition: winternl.h:4336
@ DbgReplyPending
Definition: winternl.h:4328

◆ _DEBUGOBJECTINFOCLASS

Enumerator
DebugObjectUnusedInformation 
DebugObjectKillProcessOnExitInformation 
DebugObjectKillProcessOnExitInformation 
MaxDebugObjectInfoClass 

Definition at line 4379 of file winternl.h.

4380{
enum _DEBUGOBJECTINFOCLASS DEBUGOBJECTINFOCLASS
@ MaxDebugObjectInfoClass
Definition: winternl.h:4382
@ DebugObjectKillProcessOnExitInformation
Definition: winternl.h:4381
enum _DEBUGOBJECTINFOCLASS * PDEBUGOBJECTINFOCLASS

◆ _EVENT_INFORMATION_CLASS

Enumerator
EventBasicInformation 
EventBasicInformation 

Definition at line 3623 of file winternl.h.

3623 {
enum _EVENT_INFORMATION_CLASS EVENT_INFORMATION_CLASS
@ EventBasicInformation
Definition: winternl.h:3624
enum _EVENT_INFORMATION_CLASS * PEVENT_INFORMATION_CLASS

◆ _FILE_INFORMATION_CLASS

Enumerator
FileDirectoryInformation 
FileFullDirectoryInformation 
FileBothDirectoryInformation 
FileBasicInformation 
FileStandardInformation 
FileInternalInformation 
FileEaInformation 
FileAccessInformation 
FileNameInformation 
FileRenameInformation 
FileLinkInformation 
FileNamesInformation 
FileDispositionInformation 
FilePositionInformation 
FileFullEaInformation 
FileModeInformation 
FileAlignmentInformation 
FileAllInformation 
FileAllocationInformation 
FileEndOfFileInformation 
FileAlternateNameInformation 
FileStreamInformation 
FilePipeInformation 
FilePipeLocalInformation 
FilePipeRemoteInformation 
FileMailslotQueryInformation 
FileMailslotSetInformation 
FileCompressionInformation 
FileObjectIdInformation 
FileCompletionInformation 
FileMoveClusterInformation 
FileQuotaInformation 
FileReparsePointInformation 
FileNetworkOpenInformation 
FileAttributeTagInformation 
FileTrackingInformation 
FileIdBothDirectoryInformation 
FileIdFullDirectoryInformation 
FileValidDataLengthInformation 
FileShortNameInformation 
FileIoCompletionNotificationInformation 
FileIoStatusBlockRangeInformation 
FileIoPriorityHintInformation 
FileSfioReserveInformation 
FileSfioVolumeInformation 
FileHardLinkInformation 
FileProcessIdsUsingFileInformation 
FileNormalizedNameInformation 
FileNetworkPhysicalNameInformation 
FileIdGlobalTxDirectoryInformation 
FileMaximumInformation 
FileDirectoryInformation 
FileFullDirectoryInformation 
FileBothDirectoryInformation 
FileBasicInformation 
FileStandardInformation 
FileInternalInformation 
FileEaInformation 
FileAccessInformation 
FileNameInformation 
FileRenameInformation 
FileLinkInformation 
FileNamesInformation 
FileDispositionInformation 
FilePositionInformation 
FileFullEaInformation 
FileModeInformation 
FileAlignmentInformation 
FileAllInformation 
FileAllocationInformation 
FileEndOfFileInformation 
FileAlternateNameInformation 
FileStreamInformation 
FilePipeInformation 
FilePipeLocalInformation 
FilePipeRemoteInformation 
FileMailslotQueryInformation 
FileMailslotSetInformation 
FileCompressionInformation 
FileCopyOnWriteInformation 
FileCompletionInformation 
FileMoveClusterInformation 
FileOleClassIdInformation 
FileOleStateBitsInformation 
FileNetworkOpenInformation 
FileObjectIdInformation 
FileOleAllInformation 
FileOleDirectoryInformation 
FileContentIndexInformation 
FileInheritContentIndexInformation 
FileOleInformation 
FileMaximumInformation 
FileDirectoryInformation 
FileFullDirectoryInformation 
FileBothDirectoryInformation 
FileBasicInformation 
FileStandardInformation 
FileInternalInformation 
FileEaInformation 
FileAccessInformation 
FileNameInformation 
FileRenameInformation 
FileLinkInformation 
FileNamesInformation 
FileDispositionInformation 
FilePositionInformation 
FileFullEaInformation 
FileModeInformation 
FileAlignmentInformation 
FileAllInformation 
FileAllocationInformation 
FileEndOfFileInformation 
FileAlternateNameInformation 
FileStreamInformation 
FilePipeInformation 
FilePipeLocalInformation 
FilePipeRemoteInformation 
FileMailslotQueryInformation 
FileMailslotSetInformation 
FileCompressionInformation 
FileCopyOnWriteInformation 
FileCompletionInformation 
FileMoveClusterInformation 
FileOleClassIdInformation 
FileOleStateBitsInformation 
FileNetworkOpenInformation 
FileObjectIdInformation 
FileOleAllInformation 
FileOleDirectoryInformation 
FileContentIndexInformation 
FileInheritContentIndexInformation 
FileOleInformation 
FileMaximumInformation 
FileDirectoryInformation 
FileDirectoryInformation 
FileFullDirectoryInformation 
FileBothDirectoryInformation 
FileBasicInformation 
FileStandardInformation 
FileInternalInformation 
FileEaInformation 
FileAccessInformation 
FileNameInformation 
FileRenameInformation 
FileLinkInformation 
FileNamesInformation 
FileDispositionInformation 
FilePositionInformation 
FileFullEaInformation 
FileModeInformation 
FileAlignmentInformation 
FileAllInformation 
FileAllocationInformation 
FileEndOfFileInformation 
FileAlternateNameInformation 
FileStreamInformation 
FilePipeInformation 
FilePipeLocalInformation 
FilePipeRemoteInformation 
FileMailslotQueryInformation 
FileMailslotSetInformation 
FileCompressionInformation 
FileObjectIdInformation 
FileCompletionInformation 
FileMoveClusterInformation 
FileQuotaInformation 
FileReparsePointInformation 
FileNetworkOpenInformation 
FileAttributeTagInformation 
FileTrackingInformation 
FileIdBothDirectoryInformation 
FileIdFullDirectoryInformation 
FileValidDataLengthInformation 
FileShortNameInformation 
FileIoCompletionNotificationInformation 
FileIoStatusBlockRangeInformation 
FileIoPriorityHintInformation 
FileSfioReserveInformation 
FileSfioVolumeInformation 
FileHardLinkInformation 
FileProcessIdsUsingFileInformation 
FileNormalizedNameInformation 
FileNetworkPhysicalNameInformation 
FileIdGlobalTxDirectoryInformation 
FileIsRemoteDeviceInformation 
FileAttributeCacheInformation 
FileNumaNodeInformation 
FileStandardLinkInformation 
FileRemoteProtocolInformation 
FileRenameInformationBypassAccessCheck 
FileLinkInformationBypassAccessCheck 
FileVolumeNameInformation 
FileIdInformation 
FileIdExtdDirectoryInformation 
FileReplaceCompletionInformation 
FileHardLinkFullIdInformation 
FileIdExtdBothDirectoryInformation 
FileDispositionInformationEx 
FileRenameInformationEx 
FileRenameInformationExBypassAccessCheck 
FileDesiredStorageClassInformation 
FileStatInformation 
FileMemoryPartitionInformation 
FileStatLxInformation 
FileCaseSensitiveInformation 
FileLinkInformationEx 
FileLinkInformationExBypassAccessCheck 
FileStorageReserveIdInformation 
FileCaseSensitiveInformationForceAccessCheck 
FileKnownFolderInformation 
FileMaximumInformation 
FileDirectoryInformation 
FileFullDirectoryInformation 
FileBothDirectoryInformation 
FileBasicInformation 
FileStandardInformation 
FileInternalInformation 
FileEaInformation 
FileAccessInformation 
FileNameInformation 
FileRenameInformation 
FileLinkInformation 
FileNamesInformation 
FileDispositionInformation 
FilePositionInformation 
FileFullEaInformation 
FileModeInformation 
FileAlignmentInformation 
FileAllInformation 
FileAllocationInformation 
FileEndOfFileInformation 
FileAlternateNameInformation 
FileStreamInformation 
FilePipeInformation 
FilePipeLocalInformation 
FilePipeRemoteInformation 
FileMailslotQueryInformation 
FileMailslotSetInformation 
FileCompressionInformation 
FileObjectIdInformation 
FileCompletionInformation 
FileMoveClusterInformation 
FileQuotaInformation 
FileReparsePointInformation 
FileNetworkOpenInformation 
FileAttributeTagInformation 
FileTrackingInformation 
FileIdBothDirectoryInformation 
FileIdFullDirectoryInformation 
FileValidDataLengthInformation 
FileShortNameInformation 
FileIoCompletionNotificationInformation 
FileIoStatusBlockRangeInformation 
FileIoPriorityHintInformation 
FileSfioReserveInformation 
FileSfioVolumeInformation 
FileHardLinkInformation 
FileProcessIdsUsingFileInformation 
FileNormalizedNameInformation 
FileNetworkPhysicalNameInformation 
FileIdGlobalTxDirectoryInformation 
FileIsRemoteDeviceInformation 
FileAttributeCacheInformation 
FileNumaNodeInformation 
FileStandardLinkInformation 
FileRemoteProtocolInformation 
FileMaximumInformation 

Definition at line 1375 of file winternl.h.

1375 {
@ FileDirectoryInformation
Definition: winternl.h:161
enum _FILE_INFORMATION_CLASS FILE_INFORMATION_CLASS
@ FilePositionInformation
Definition: winternl.h:1389
@ FileMoveClusterInformation
Definition: winternl.h:1406
@ FilePipeLocalInformation
Definition: winternl.h:1399
@ FileMaximumInformation
Definition: winternl.h:1452
@ FileEndOfFileInformation
Definition: winternl.h:1395
@ FileNameInformation
Definition: winternl.h:1384
@ FileIdGlobalTxDirectoryInformation
Definition: winternl.h:1425
@ FileStorageReserveIdInformation
Definition: winternl.h:1449
@ FileDesiredStorageClassInformation
Definition: winternl.h:1442
@ FileQuotaInformation
Definition: winternl.h:1407
@ FileCompressionInformation
Definition: winternl.h:1403
@ FileIdExtdBothDirectoryInformation
Definition: winternl.h:1438
@ FileHardLinkFullIdInformation
Definition: winternl.h:1437
@ FileRemoteProtocolInformation
Definition: winternl.h:1430
@ FileRenameInformation
Definition: winternl.h:1385
@ FileAllInformation
Definition: winternl.h:1393
@ FileLinkInformationEx
Definition: winternl.h:1447
@ FileStatInformation
Definition: winternl.h:1443
@ FileVolumeNameInformation
Definition: winternl.h:1433
@ FileStandardLinkInformation
Definition: winternl.h:1429
@ FilePipeRemoteInformation
Definition: winternl.h:1400
@ FileDispositionInformationEx
Definition: winternl.h:1439
@ FileTrackingInformation
Definition: winternl.h:1411
@ FileSfioVolumeInformation
Definition: winternl.h:1420
@ FileIoPriorityHintInformation
Definition: winternl.h:1418
@ FileLinkInformation
Definition: winternl.h:1386
@ FileInternalInformation
Definition: winternl.h:1381
@ FileAttributeTagInformation
Definition: winternl.h:1410
@ FileStandardInformation
Definition: winternl.h:1380
@ FileAlignmentInformation
Definition: winternl.h:1392
@ FileReparsePointInformation
Definition: winternl.h:1408
@ FileNormalizedNameInformation
Definition: winternl.h:1423
@ FileKnownFolderInformation
Definition: winternl.h:1451
@ FileObjectIdInformation
Definition: winternl.h:1404
@ FileRenameInformationEx
Definition: winternl.h:1440
@ FileLinkInformationExBypassAccessCheck
Definition: winternl.h:1448
@ FileIdBothDirectoryInformation
Definition: winternl.h:1412
@ FileEaInformation
Definition: winternl.h:1382
@ FilePipeInformation
Definition: winternl.h:1398
@ FileAlternateNameInformation
Definition: winternl.h:1396
@ FileIoCompletionNotificationInformation
Definition: winternl.h:1416
@ FileStatLxInformation
Definition: winternl.h:1445
@ FileRenameInformationExBypassAccessCheck
Definition: winternl.h:1441
@ FileCaseSensitiveInformationForceAccessCheck
Definition: winternl.h:1450
@ FileNamesInformation
Definition: winternl.h:1387
@ FileCaseSensitiveInformation
Definition: winternl.h:1446
@ FileMailslotSetInformation
Definition: winternl.h:1402
@ FileIsRemoteDeviceInformation
Definition: winternl.h:1426
@ FileValidDataLengthInformation
Definition: winternl.h:1414
@ FileLinkInformationBypassAccessCheck
Definition: winternl.h:1432
@ FileIdExtdDirectoryInformation
Definition: winternl.h:1435
@ FileMailslotQueryInformation
Definition: winternl.h:1401
@ FileIdInformation
Definition: winternl.h:1434
@ FileAllocationInformation
Definition: winternl.h:1394
@ FileMemoryPartitionInformation
Definition: winternl.h:1444
@ FileCompletionInformation
Definition: winternl.h:1405
@ FileAccessInformation
Definition: winternl.h:1383
@ FileFullDirectoryInformation
Definition: winternl.h:1377
@ FileRenameInformationBypassAccessCheck
Definition: winternl.h:1431
@ FileSfioReserveInformation
Definition: winternl.h:1419
@ FileReplaceCompletionInformation
Definition: winternl.h:1436
@ FileNetworkOpenInformation
Definition: winternl.h:1409
@ FileStreamInformation
Definition: winternl.h:1397
@ FileModeInformation
Definition: winternl.h:1391
@ FileBasicInformation
Definition: winternl.h:1379
@ FileDispositionInformation
Definition: winternl.h:1388
@ FileAttributeCacheInformation
Definition: winternl.h:1427
@ FileShortNameInformation
Definition: winternl.h:1415
@ FileNetworkPhysicalNameInformation
Definition: winternl.h:1424
@ FileNumaNodeInformation
Definition: winternl.h:1428
@ FileFullEaInformation
Definition: winternl.h:1390
@ FileProcessIdsUsingFileInformation
Definition: winternl.h:1422
@ FileBothDirectoryInformation
Definition: winternl.h:1378
@ FileIoStatusBlockRangeInformation
Definition: winternl.h:1417
@ FileHardLinkInformation
Definition: winternl.h:1421
@ FileIdFullDirectoryInformation
Definition: winternl.h:1413
enum _FILE_INFORMATION_CLASS * PFILE_INFORMATION_CLASS

◆ _FSINFOCLASS

Enumerator
FileFsVolumeInformation 
FileFsLabelInformation 
FileFsSizeInformation 
FileFsDeviceInformation 
FileFsAttributeInformation 
FileFsControlInformation 
FileFsFullSizeInformation 
FileFsObjectIdInformation 
FileFsDriverPathInformation 
FileFsVolumeFlagsInformation 
FileFsMaximumInformation 
FileFsVolumeInformation 
FileFsLabelInformation 
FileFsSizeInformation 
FileFsDeviceInformation 
FileFsAttributeInformation 
FileFsControlInformation 
FileFsQuotaQueryInformation 
FileFsQuotaSetInformation 
FileFsMaximumInformation 
FileFsVolumeInformation 
FileFsLabelInformation 
FileFsSizeInformation 
FileFsDeviceInformation 
FileFsAttributeInformation 
FileFsControlInformation 
FileFsFullSizeInformation 
FileFsObjectIdInformation 
FileFsDriverPathInformation 
FileFsMaximumInformation 
FileFsVolumeInformation 
FileFsLabelInformation 
FileFsSizeInformation 
FileFsDeviceInformation 
FileFsAttributeInformation 
FileFsControlInformation 
FileFsFullSizeInformation 
FileFsObjectIdInformation 
FileFsDriverPathInformation 
FileFsVolumeFlagsInformation 
FileFsSectorSizeInformation 
FileFsDataCopyInformation 
FileFsMetadataSizeInformation 
FileFsFullSizeInformationEx 
FileFsMaximumInformation 
FileFsVolumeInformation 
FileFsLabelInformation 
FileFsSizeInformation 
FileFsDeviceInformation 
FileFsAttributeInformation 
FileFsControlInformation 
FileFsFullSizeInformation 
FileFsObjectIdInformation 
FileFsDriverPathInformation 
FileFsVolumeFlagsInformation 
FileFsMaximumInformation 

Definition at line 1830 of file winternl.h.

1830 {
enum _FSINFOCLASS * PFS_INFORMATION_CLASS
@ FileFsVolumeFlagsInformation
Definition: winternl.h:1840
@ FileFsControlInformation
Definition: winternl.h:1836
@ FileFsSectorSizeInformation
Definition: winternl.h:1841
@ FileFsDeviceInformation
Definition: winternl.h:1834
@ FileFsLabelInformation
Definition: winternl.h:1832
@ FileFsAttributeInformation
Definition: winternl.h:1835
@ FileFsVolumeInformation
Definition: winternl.h:1831
@ FileFsObjectIdInformation
Definition: winternl.h:1838
@ FileFsSizeInformation
Definition: winternl.h:1833
@ FileFsMaximumInformation
Definition: winternl.h:1845
@ FileFsDriverPathInformation
Definition: winternl.h:1839
@ FileFsMetadataSizeInformation
Definition: winternl.h:1843
@ FileFsFullSizeInformationEx
Definition: winternl.h:1844
@ FileFsDataCopyInformation
Definition: winternl.h:1842
@ FileFsFullSizeInformation
Definition: winternl.h:1837
enum _FSINFOCLASS FS_INFORMATION_CLASS

◆ _HARDERROR_RESPONSE

Enumerator
ResponseReturnToCaller 
ResponseNotHandled 
ResponseAbort 
ResponseCancel 
ResponseIgnore 
ResponseNo 
ResponseOk 
ResponseRetry 
ResponseYes 
ResponseTryAgain 
ResponseContinue 
ResponseReturnToCaller 
ResponseNotHandled 
ResponseAbort 
ResponseCancel 
ResponseIgnore 
ResponseNo 
ResponseOk 
ResponseRetry 
ResponseYes 

Definition at line 3804 of file winternl.h.

3804 {
3810 ResponseNo,
3811 ResponseOk,
enum _HARDERROR_RESPONSE * PHARDERROR_RESPONSE
@ ResponseNo
Definition: winternl.h:3810
@ ResponseNotHandled
Definition: winternl.h:3806
@ ResponseOk
Definition: winternl.h:3811
@ ResponseRetry
Definition: winternl.h:3812
@ ResponseReturnToCaller
Definition: winternl.h:3805
@ ResponseIgnore
Definition: winternl.h:3809
@ ResponseCancel
Definition: winternl.h:3808
@ ResponseYes
Definition: winternl.h:3813
@ ResponseAbort
Definition: winternl.h:3807
enum _HARDERROR_RESPONSE HARDERROR_RESPONSE

◆ _HARDERROR_RESPONSE_OPTION

Enumerator
OptionAbortRetryIgnore 
OptionOk 
OptionOkCancel 
OptionRetryCancel 
OptionYesNo 
OptionYesNoCancel 
OptionShutdownSystem 
OptionOkNoWait 
OptionCancelTryContinue 
OptionAbortRetryIgnore 
OptionOk 
OptionOkCancel 
OptionRetryCancel 
OptionYesNo 
OptionYesNoCancel 
OptionShutdownSystem 

Definition at line 3794 of file winternl.h.

3794 {
3796 OptionOk,
enum _HARDERROR_RESPONSE_OPTION HARDERROR_RESPONSE_OPTION
@ OptionYesNoCancel
Definition: winternl.h:3800
@ OptionYesNo
Definition: winternl.h:3799
@ OptionAbortRetryIgnore
Definition: winternl.h:3795
@ OptionShutdownSystem
Definition: winternl.h:3801
@ OptionOkCancel
Definition: winternl.h:3797
@ OptionRetryCancel
Definition: winternl.h:3798
@ OptionOk
Definition: winternl.h:3796
enum _HARDERROR_RESPONSE_OPTION * PHARDERROR_RESPONSE_OPTION

◆ _IO_COMPLETION_INFORMATION_CLASS

Enumerator
IoCompletionBasicInformation 
IoCompletionBasicInformation 

Definition at line 3775 of file winternl.h.

3775 {
enum _IO_COMPLETION_INFORMATION_CLASS IO_COMPLETION_INFORMATION_CLASS
enum _IO_COMPLETION_INFORMATION_CLASS * PIO_COMPLETION_INFORMATION_CLASS
@ IoCompletionBasicInformation
Definition: winternl.h:3776

◆ _KCONTINUE_TYPE

Enumerator
KCONTINUE_UNWIND 
KCONTINUE_RESUME 
KCONTINUE_LONGJUMP 
KCONTINUE_SET 
KCONTINUE_LAST 

Definition at line 4498 of file winternl.h.

4499{
@ KCONTINUE_LAST
Definition: winternl.h:4504
@ KCONTINUE_UNWIND
Definition: winternl.h:4500
@ KCONTINUE_RESUME
Definition: winternl.h:4501
@ KCONTINUE_SET
Definition: winternl.h:4503
@ KCONTINUE_LONGJUMP
Definition: winternl.h:4502
enum _KCONTINUE_TYPE KCONTINUE_TYPE

◆ _KEY_INFORMATION_CLASS

Enumerator
KeyBasicInformation 
KeyNodeInformation 
KeyFullInformation 
KeyBasicInformation 
KeyNodeInformation 
KeyFullInformation 
KeyNameInformation 
KeyCachedInformation 
KeyFlagsInformation 
KeyVirtualizationInformation 
KeyHandleTagsInformation 
KeyTrustInformation 
KeyLayerInformation 
MaxKeyInfoClass 
KeyBasicInformation 
KeyNodeInformation 
KeyFullInformation 
KeyNameInformation 
KeyCachedInformation 
KeyFlagsInformation 
KeyVirtualizationInformation 
KeyHandleTagsInformation 
MaxKeyInfoClass 

Definition at line 1848 of file winternl.h.

1848 {
@ KeyFlagsInformation
Definition: winternl.h:1854
@ KeyVirtualizationInformation
Definition: winternl.h:1855
@ KeyCachedInformation
Definition: winternl.h:1853
@ KeyNameInformation
Definition: winternl.h:1852
@ KeyLayerInformation
Definition: winternl.h:1858
@ KeyTrustInformation
Definition: winternl.h:1857
@ KeyBasicInformation
Definition: winternl.h:1849
@ KeyHandleTagsInformation
Definition: winternl.h:1856
@ KeyNodeInformation
Definition: winternl.h:1850
@ KeyFullInformation
Definition: winternl.h:1851
@ MaxKeyInfoClass
Definition: winternl.h:1859
enum _KEY_INFORMATION_CLASS KEY_INFORMATION_CLASS

◆ _KEY_VALUE_INFORMATION_CLASS

Enumerator
KeyValueBasicInformation 
KeyValueFullInformation 
KeyValuePartialInformation 
KeyValueBasicInformation 
KeyValueFullInformation 
KeyValuePartialInformation 
KeyValueFullInformationAlign64 
KeyValuePartialInformationAlign64 
KeyValueBasicInformation 
KeyValueFullInformation 
KeyValuePartialInformation 
KeyValueFullInformationAlign64 
KeyValuePartialInformationAlign64 
KeyValueLayerInformation 
KeyValueBasicInformation 
KeyValueFullInformation 
KeyValuePartialInformation 
KeyValueFullInformationAlign64 
KeyValuePartialInformationAlign64 

Definition at line 1862 of file winternl.h.

1862 {
@ KeyValuePartialInformationAlign64
Definition: winternl.h:1867
@ KeyValueBasicInformation
Definition: winternl.h:1863
@ KeyValuePartialInformation
Definition: winternl.h:1865
@ KeyValueLayerInformation
Definition: winternl.h:1868
@ KeyValueFullInformation
Definition: winternl.h:1864
@ KeyValueFullInformationAlign64
Definition: winternl.h:1866
enum _KEY_VALUE_INFORMATION_CLASS KEY_VALUE_INFORMATION_CLASS

◆ _KPROFILE_SOURCE

Enumerator
ProfileTime 
ProfileAlignmentFixup 
ProfileTotalIssues 
ProfilePipelineDry 
ProfileLoadInstructions 
ProfilePipelineFrozen 
ProfileBranchInstructions 
ProfileTotalNonissues 
ProfileDcacheMisses 
ProfileIcacheMisses 
ProfileCacheMisses 
ProfileBranchMispredictions 
ProfileStoreInstructions 
ProfileFpInstructions 
ProfileIntegerInstructions 
Profile2Issue 
Profile3Issue 
Profile4Issue 
ProfileSpecialInstructions 
ProfileTotalCycles 
ProfileIcacheIssues 
ProfileDcacheAccesses 
ProfileMemoryBarrierCycles 
ProfileLoadLinkedIssues 
ProfileMaximum 
ProfileTime 
ProfileAlignmentFixup 
ProfileTotalIssues 
ProfilePipelineDry 
ProfileLoadInstructions 
ProfilePipelineFrozen 
ProfileBranchInstructions 
ProfileTotalNonissues 
ProfileDcacheMisses 
ProfileIcacheMisses 
ProfileCacheMisses 
ProfileBranchMispredictions 
ProfileStoreInstructions 
ProfileFpInstructions 
ProfileIntegerInstructions 
Profile2Issue 
Profile3Issue 
Profile4Issue 
ProfileSpecialInstructions 
ProfileTotalCycles 
ProfileIcacheIssues 
ProfileDcacheAccesses 
ProfileMemoryBarrierCycles 
ProfileLoadLinkedIssues 
ProfileMaximum 

Definition at line 3730 of file winternl.h.

3730 {
enum _KPROFILE_SOURCE * PKPROFILE_SOURCE
enum _KPROFILE_SOURCE KPROFILE_SOURCE
@ ProfileFpInstructions
Definition: winternl.h:3744
@ ProfileIntegerInstructions
Definition: winternl.h:3745
@ ProfileBranchMispredictions
Definition: winternl.h:3742
@ ProfileMaximum
Definition: winternl.h:3755
@ ProfileStoreInstructions
Definition: winternl.h:3743
@ ProfileAlignmentFixup
Definition: winternl.h:3732
@ ProfilePipelineDry
Definition: winternl.h:3734
@ ProfileMemoryBarrierCycles
Definition: winternl.h:3753
@ Profile3Issue
Definition: winternl.h:3747
@ ProfileLoadLinkedIssues
Definition: winternl.h:3754
@ ProfileDcacheMisses
Definition: winternl.h:3739
@ ProfileIcacheIssues
Definition: winternl.h:3751
@ ProfileIcacheMisses
Definition: winternl.h:3740
@ ProfileTotalNonissues
Definition: winternl.h:3738
@ ProfileTime
Definition: winternl.h:3731
@ ProfileSpecialInstructions
Definition: winternl.h:3749
@ Profile2Issue
Definition: winternl.h:3746
@ ProfileTotalCycles
Definition: winternl.h:3750
@ ProfileBranchInstructions
Definition: winternl.h:3737
@ ProfilePipelineFrozen
Definition: winternl.h:3736
@ ProfileDcacheAccesses
Definition: winternl.h:3752
@ ProfileLoadInstructions
Definition: winternl.h:3735
@ ProfileTotalIssues
Definition: winternl.h:3733
@ Profile4Issue
Definition: winternl.h:3748
@ ProfileCacheMisses
Definition: winternl.h:3741

◆ _LDR_DDAG_STATE

Enumerator
LdrModulesMerged 
LdrModulesInitError 
LdrModulesSnapError 
LdrModulesUnloaded 
LdrModulesUnloading 
LdrModulesPlaceHolder 
LdrModulesMapping 
LdrModulesMapped 
LdrModulesWaitingForDependencies 
LdrModulesSnapping 
LdrModulesSnapped 
LdrModulesCondensed 
LdrModulesReadyToInit 
LdrModulesInitializing 
LdrModulesReadyToRun 

Definition at line 3908 of file winternl.h.

3909{
3910 LdrModulesMerged = -5,
3913 LdrModulesUnloaded = -2,
3917 LdrModulesMapped = 2,
@ LdrModulesReadyToRun
Definition: winternl.h:3924
@ LdrModulesSnapping
Definition: winternl.h:3919
@ LdrModulesSnapError
Definition: winternl.h:3912
@ LdrModulesSnapped
Definition: winternl.h:3920
@ LdrModulesUnloading
Definition: winternl.h:3914
@ LdrModulesMapping
Definition: winternl.h:3916
@ LdrModulesUnloaded
Definition: winternl.h:3913
@ LdrModulesInitializing
Definition: winternl.h:3923
@ LdrModulesMerged
Definition: winternl.h:3910
@ LdrModulesMapped
Definition: winternl.h:3917
@ LdrModulesInitError
Definition: winternl.h:3911
@ LdrModulesWaitingForDependencies
Definition: winternl.h:3918
@ LdrModulesCondensed
Definition: winternl.h:3921
@ LdrModulesReadyToInit
Definition: winternl.h:3922
@ LdrModulesPlaceHolder
Definition: winternl.h:3915
enum _LDR_DDAG_STATE LDR_DDAG_STATE

◆ _LDR_DLL_LOAD_REASON

Enumerator
LoadReasonStaticDependency 
LoadReasonStaticForwarderDependency 
LoadReasonDynamicForwarderDependency 
LoadReasonDelayloadDependency 
LoadReasonDynamicLoad 
LoadReasonAsImageLoad 
LoadReasonAsDataLoad 
LoadReasonUnknown 

Definition at line 3941 of file winternl.h.

3942{
@ LoadReasonUnknown
Definition: winternl.h:3950
@ LoadReasonStaticDependency
Definition: winternl.h:3943
@ LoadReasonAsDataLoad
Definition: winternl.h:3949
@ LoadReasonAsImageLoad
Definition: winternl.h:3948
@ LoadReasonStaticForwarderDependency
Definition: winternl.h:3944
@ LoadReasonDynamicForwarderDependency
Definition: winternl.h:3945
@ LoadReasonDynamicLoad
Definition: winternl.h:3947
@ LoadReasonDelayloadDependency
Definition: winternl.h:3946
enum _LDR_DLL_LOAD_REASON LDR_DLL_LOAD_REASON
enum _LDR_DLL_LOAD_REASON * PLDR_DLL_LOAD_REASON

◆ _MEMORY_INFORMATION_CLASS

Enumerator
MemoryBasicInformation 
MemoryWorkingSetList 
MemorySectionName 
MemoryBasicVlmInformation 
MemoryWorkingSetExList 
MemoryBasicInformation 
MemoryWorkingSetInformation 
MemoryMappedFilenameInformation 
MemoryRegionInformation 
MemoryWorkingSetExInformation 
MemorySharedCommitInformation 
MemoryImageInformation 
MemoryRegionInformationEx 
MemoryPrivilegedBasicInformation 
MemoryEnclaveImageInformation 
MemoryBasicInformationCapped 
MemoryPhysicalContiguityInformation 
MemoryBadInformation 
MemoryBadInformationAllProcesses 

Definition at line 2384 of file winternl.h.

2384 {
2399#ifdef __WINESRC__
2400 MemoryWineUnixFuncs = 1000,
2401 MemoryWineUnixWow64Funcs,
2402#endif
@ MemoryBadInformation
Definition: winternl.h:2397
@ MemoryRegionInformation
Definition: winternl.h:2388
@ MemoryBasicInformation
Definition: winternl.h:2385
@ MemoryImageInformation
Definition: winternl.h:2391
@ MemoryWorkingSetExInformation
Definition: winternl.h:2389
@ MemoryRegionInformationEx
Definition: winternl.h:2392
@ MemoryPhysicalContiguityInformation
Definition: winternl.h:2396
@ MemoryPrivilegedBasicInformation
Definition: winternl.h:2393
@ MemoryEnclaveImageInformation
Definition: winternl.h:2394
@ MemorySharedCommitInformation
Definition: winternl.h:2390
@ MemoryBasicInformationCapped
Definition: winternl.h:2395
@ MemoryMappedFilenameInformation
Definition: winternl.h:2387
@ MemoryWorkingSetInformation
Definition: winternl.h:2386
@ MemoryBadInformationAllProcesses
Definition: winternl.h:2398
enum _MEMORY_INFORMATION_CLASS MEMORY_INFORMATION_CLASS

◆ _MEMORY_RESERVE_OBJECT_TYPE

Enumerator
MemoryReserveObjectTypeUserApc 
MemoryReserveObjectTypeIoCompletion 

Definition at line 2655 of file winternl.h.

2656{
@ MemoryReserveObjectTypeIoCompletion
Definition: winternl.h:2658
@ MemoryReserveObjectTypeUserApc
Definition: winternl.h:2657
enum _MEMORY_RESERVE_OBJECT_TYPE PMEMORY_RESERVE_OBJECT_TYPE
enum _MEMORY_RESERVE_OBJECT_TYPE MEMORY_RESERVE_OBJECT_TYPE

◆ _MUTANT_INFORMATION_CLASS

Enumerator
MutantBasicInformation 
MutantOwnerInformation 
MutantBasicInformation 

Definition at line 2469 of file winternl.h.

2470{
enum _MUTANT_INFORMATION_CLASS MUTANT_INFORMATION_CLASS
enum _MUTANT_INFORMATION_CLASS * PMUTANT_INFORMATION_CLASS
@ MutantBasicInformation
Definition: winternl.h:2471

◆ _OBJECT_INFORMATION_CLASS

Enumerator
ObjectBasicInformation 
ObjectNameInformation 
ObjectTypeInformation 
ObjectAllTypesInformation 
ObjectHandleInformation 
ObjectBasicInformation 
ObjectTypeInformation 
ObjectBasicInformation 
ObjectNameInformation 
ObjectTypeInformation 
ObjectTypesInformation 
ObjectHandleFlagInformation 
ObjectSessionInformation 
ObjectSessionObjectInformation 

Definition at line 1871 of file winternl.h.

1871 {
enum _OBJECT_INFORMATION_CLASS OBJECT_INFORMATION_CLASS
@ ObjectTypeInformation
Definition: winternl.h:444
@ ObjectBasicInformation
Definition: winternl.h:443
@ ObjectSessionInformation
Definition: winternl.h:1877
@ ObjectHandleFlagInformation
Definition: winternl.h:1876
@ ObjectNameInformation
Definition: winternl.h:1873
@ ObjectTypesInformation
Definition: winternl.h:1875
@ ObjectSessionObjectInformation
Definition: winternl.h:1878
enum _OBJECT_INFORMATION_CLASS * POBJECT_INFORMATION_CLASS

◆ _PORT_INFORMATION_CLASS

Enumerator
PortNoInformation 
PortNoInformation 

Definition at line 3771 of file winternl.h.

3771 {
enum _PORT_INFORMATION_CLASS * PPORT_INFORMATION_CLASS
@ PortNoInformation
Definition: winternl.h:3772
enum _PORT_INFORMATION_CLASS PORT_INFORMATION_CLASS

◆ _PROCESSINFOCLASS

Enumerator
ProcessBasicInformation 
ProcessDebugPort 
ProcessWow64Information 
ProcessImageFileName 
ProcessBreakOnTermination 
ProcessBasicInformation 
ProcessDebugPort 
ProcessWow64Information 
ProcessImageFileName 
ProcessBreakOnTermination 
ProcessBasicInformation 
ProcessQuotaLimits 
ProcessIoCounters 
ProcessVmCounters 
ProcessTimes 
ProcessBasePriority 
ProcessRaisePriority 
ProcessDebugPort 
ProcessExceptionPort 
ProcessAccessToken 
ProcessLdtInformation 
ProcessLdtSize 
ProcessDefaultHardErrorMode 
ProcessIoPortHandlers 
ProcessPooledUsageAndLimits 
ProcessWorkingSetWatch 
ProcessUserModeIOPL 
ProcessEnableAlignmentFaultFixup 
ProcessPriorityClass 
ProcessWx86Information 
ProcessHandleCount 
ProcessAffinityMask 
ProcessPriorityBoost 
ProcessDeviceMap 
ProcessSessionInformation 
ProcessForegroundInformation 
ProcessWow64Information 
ProcessImageFileName 
ProcessLUIDDeviceMapsEnabled 
ProcessBreakOnTermination 
ProcessDebugObjectHandle 
ProcessDebugFlags 
ProcessHandleTracing 
ProcessIoPriority 
ProcessExecuteFlags 
ProcessTlsInformation 
ProcessCookie 
ProcessImageInformation 
ProcessCycleTime 
ProcessPagePriority 
ProcessInstrumentationCallback 
ProcessThreadStackAllocation 
ProcessWorkingSetWatchEx 
ProcessImageFileNameWin32 
ProcessImageFileMapping 
ProcessAffinityUpdateMode 
ProcessMemoryAllocationMode 
ProcessGroupInformation 
ProcessTokenVirtualizationEnabled 
ProcessConsoleHostProcess 
ProcessWindowInformation 
ProcessHandleInformation 
ProcessMitigationPolicy 
ProcessDynamicFunctionTableInformation 
ProcessHandleCheckingMode 
ProcessKeepAliveCount 
ProcessRevokeFileHandles 
ProcessWorkingSetControl 
ProcessHandleTable 
ProcessCheckStackExtentsMode 
ProcessCommandLineInformation 
ProcessProtectionInformation 
ProcessMemoryExhaustion 
ProcessFaultInformation 
ProcessTelemetryIdInformation 
ProcessCommitReleaseInformation 
ProcessDefaultCpuSetsInformation 
ProcessAllowedCpuSetsInformation 
ProcessSubsystemProcess 
ProcessJobMemoryInformation 
ProcessInPrivate 
ProcessRaiseUMExceptionOnInvalidHandleClose 
ProcessIumChallengeResponse 
ProcessChildProcessInformation 
ProcessHighGraphicsPriorityInformation 
ProcessSubsystemInformation 
ProcessEnergyValues 
ProcessPowerThrottlingState 
ProcessReserved3Information 
ProcessWin32kSyscallFilterInformation 
ProcessDisableSystemAllowedCpuSets 
ProcessWakeInformation 
ProcessEnergyTrackingState 
ProcessManageWritesToExecutableMemory 
ProcessCaptureTrustletLiveDump 
ProcessTelemetryCoverage 
ProcessEnclaveInformation 
ProcessEnableReadWriteVmLogging 
ProcessUptimeInformation 
ProcessImageSection 
ProcessDebugAuthInformation 
ProcessSystemResourceManagement 
ProcessSequenceNumber 
ProcessLoaderDetour 
ProcessSecurityDomainInformation 
ProcessCombineSecurityDomainsInformation 
ProcessEnableLogging 
ProcessLeapSecondInformation 
ProcessFiberShadowStackAllocation 
ProcessFreeFiberShadowStackAllocation 
ProcessAltSystemCallInformation 
ProcessDynamicEHContinuationTargets 
ProcessDynamicEnforcedCetCompatibleRanges 
ProcessCreateStateChange 
ProcessApplyStateChange 
ProcessEnableOptionalXStateFeatures 
ProcessAltPrefetchParam 
ProcessAssignCpuPartitions 
ProcessPriorityClassEx 
ProcessMembershipInformation 
ProcessEffectiveIoPriority 
ProcessEffectivePagePriority 
MaxProcessInfoClass 
ProcessBasicInformation 
ProcessQuotaLimits 
ProcessIoCounters 
ProcessVmCounters 
ProcessTimes 
ProcessBasePriority 
ProcessRaisePriority 
ProcessDebugPort 
ProcessExceptionPort 
ProcessAccessToken 
ProcessLdtInformation 
ProcessLdtSize 
ProcessDefaultHardErrorMode 
ProcessIoPortHandlers 
ProcessPooledUsageAndLimits 
ProcessWorkingSetWatch 
ProcessUserModeIOPL 
ProcessEnableAlignmentFaultFixup 
ProcessPriorityClass 
ProcessWx86Information 
ProcessHandleCount 
ProcessAffinityMask 
ProcessPriorityBoost 
ProcessDeviceMap 
ProcessSessionInformation 
ProcessForegroundInformation 
ProcessWow64Information 
ProcessImageFileName 
ProcessLUIDDeviceMapsEnabled 
ProcessBreakOnTermination 
ProcessDebugObjectHandle 
ProcessDebugFlags 
ProcessHandleTracing 
ProcessIoPriority 
ProcessExecuteFlags 
ProcessTlsInformation 
ProcessCookie 
ProcessImageInformation 
ProcessCycleTime 
ProcessPagePriority 
ProcessInstrumentationCallback 
ProcessThreadStackAllocation 
ProcessWorkingSetWatchEx 
ProcessImageFileNameWin32 
ProcessImageFileMapping 
ProcessAffinityUpdateMode 
ProcessMemoryAllocationMode 
ProcessGroupInformation 
ProcessTokenVirtualizationEnabled 
ProcessConsoleHostProcess 
ProcessWindowInformation 
MaxProcessInfoClass 

Definition at line 1881 of file winternl.h.

1881 {
1886 ProcessTimes = 4,
1889 ProcessDebugPort = 7,
1893 ProcessLdtSize = 11,
1902 ProcessHandleCount = 20,
1905 ProcessDeviceMap = 23,
1913 ProcessDebugFlags = 31,
1915 ProcessIoPriority = 33,
1918 ProcessCookie = 36,
1920 ProcessCycleTime = 38,
1940 ProcessHandleTable = 58,
1952 ProcessInPrivate = 70,
1995#ifdef __WINESRC__
1996 ProcessWineMakeProcessSystem = 1000,
1997 ProcessWineLdtCopy,
1998 ProcessWineGrantAdminToken,
1999#endif
enum _PROCESSINFOCLASS PROCESSINFOCLASS
@ ProcessDebugPort
Definition: winternl.h:397
@ ProcessBreakOnTermination
Definition: winternl.h:400
@ ProcessBasicInformation
Definition: winternl.h:396
@ ProcessWow64Information
Definition: winternl.h:398
@ ProcessImageFileName
Definition: winternl.h:399
@ ProcessPagePriority
Definition: winternl.h:1921
@ ProcessEnableOptionalXStateFeatures
Definition: winternl.h:1987
@ ProcessLUIDDeviceMapsEnabled
Definition: winternl.h:1910
@ ProcessMemoryAllocationMode
Definition: winternl.h:1928
@ ProcessManageWritesToExecutableMemory
Definition: winternl.h:1965
@ ProcessTlsInformation
Definition: winternl.h:1917
@ ProcessEffectivePagePriority
Definition: winternl.h:1993
@ ProcessEnableReadWriteVmLogging
Definition: winternl.h:1969
@ ProcessWx86Information
Definition: winternl.h:1901
@ ProcessDynamicEHContinuationTargets
Definition: winternl.h:1983
@ ProcessCommitReleaseInformation
Definition: winternl.h:1947
@ ProcessSubsystemInformation
Definition: winternl.h:1957
@ ProcessEffectiveIoPriority
Definition: winternl.h:1992
@ ProcessReserved3Information
Definition: winternl.h:1960
@ ProcessDebugFlags
Definition: winternl.h:1913
@ ProcessFiberShadowStackAllocation
Definition: winternl.h:1980
@ MaxProcessInfoClass
Definition: winternl.h:1994
@ ProcessConsoleHostProcess
Definition: winternl.h:1931
@ ProcessLoaderDetour
Definition: winternl.h:1975
@ ProcessRevokeFileHandles
Definition: winternl.h:1938
@ ProcessSessionInformation
Definition: winternl.h:1906
@ ProcessPowerThrottlingState
Definition: winternl.h:1959
@ ProcessCheckStackExtentsMode
Definition: winternl.h:1941
@ ProcessApplyStateChange
Definition: winternl.h:1986
@ ProcessWorkingSetWatchEx
Definition: winternl.h:1924
@ ProcessAffinityMask
Definition: winternl.h:1903
@ ProcessInstrumentationCallback
Definition: winternl.h:1922
@ ProcessImageFileMapping
Definition: winternl.h:1926
@ ProcessIoPortHandlers
Definition: winternl.h:1895
@ ProcessRaisePriority
Definition: winternl.h:1888
@ ProcessAssignCpuPartitions
Definition: winternl.h:1989
@ ProcessVmCounters
Definition: winternl.h:1885
@ ProcessChildProcessInformation
Definition: winternl.h:1955
@ ProcessPriorityClass
Definition: winternl.h:1900
@ ProcessPriorityBoost
Definition: winternl.h:1904
@ ProcessDynamicFunctionTableInformation
Definition: winternl.h:1935
@ ProcessInPrivate
Definition: winternl.h:1952
@ ProcessLeapSecondInformation
Definition: winternl.h:1979
@ ProcessHandleTable
Definition: winternl.h:1940
@ ProcessAllowedCpuSetsInformation
Definition: winternl.h:1949
@ ProcessDebugAuthInformation
Definition: winternl.h:1972
@ ProcessTokenVirtualizationEnabled
Definition: winternl.h:1930
@ ProcessImageInformation
Definition: winternl.h:1919
@ ProcessExecuteFlags
Definition: winternl.h:1916
@ ProcessCookie
Definition: winternl.h:1918
@ ProcessSequenceNumber
Definition: winternl.h:1974
@ ProcessSubsystemProcess
Definition: winternl.h:1950
@ ProcessCommandLineInformation
Definition: winternl.h:1942
@ ProcessCombineSecurityDomainsInformation
Definition: winternl.h:1977
@ ProcessFaultInformation
Definition: winternl.h:1945
@ ProcessPooledUsageAndLimits
Definition: winternl.h:1896
@ ProcessLdtSize
Definition: winternl.h:1893
@ ProcessIoCounters
Definition: winternl.h:1884
@ ProcessFreeFiberShadowStackAllocation
Definition: winternl.h:1981
@ ProcessDefaultCpuSetsInformation
Definition: winternl.h:1948
@ ProcessImageFileNameWin32
Definition: winternl.h:1925
@ ProcessMemoryExhaustion
Definition: winternl.h:1944
@ ProcessDefaultHardErrorMode
Definition: winternl.h:1894
@ ProcessAffinityUpdateMode
Definition: winternl.h:1927
@ ProcessEnableAlignmentFaultFixup
Definition: winternl.h:1899
@ ProcessDeviceMap
Definition: winternl.h:1905
@ ProcessEnableLogging
Definition: winternl.h:1978
@ ProcessPriorityClassEx
Definition: winternl.h:1990
@ ProcessBasePriority
Definition: winternl.h:1887
@ ProcessRaiseUMExceptionOnInvalidHandleClose
Definition: winternl.h:1953
@ ProcessHandleInformation
Definition: winternl.h:1933
@ ProcessQuotaLimits
Definition: winternl.h:1883
@ ProcessSecurityDomainInformation
Definition: winternl.h:1976
@ ProcessCycleTime
Definition: winternl.h:1920
@ ProcessSystemResourceManagement
Definition: winternl.h:1973
@ ProcessAccessToken
Definition: winternl.h:1891
@ ProcessWakeInformation
Definition: winternl.h:1963
@ ProcessIoPriority
Definition: winternl.h:1915
@ ProcessTelemetryIdInformation
Definition: winternl.h:1946
@ ProcessImageSection
Definition: winternl.h:1971
@ ProcessHandleTracing
Definition: winternl.h:1914
@ ProcessJobMemoryInformation
Definition: winternl.h:1951
@ ProcessCreateStateChange
Definition: winternl.h:1985
@ ProcessThreadStackAllocation
Definition: winternl.h:1923
@ ProcessAltSystemCallInformation
Definition: winternl.h:1982
@ ProcessForegroundInformation
Definition: winternl.h:1907
@ ProcessWindowInformation
Definition: winternl.h:1932
@ ProcessKeepAliveCount
Definition: winternl.h:1937
@ ProcessTimes
Definition: winternl.h:1886
@ ProcessAltPrefetchParam
Definition: winternl.h:1988
@ ProcessDebugObjectHandle
Definition: winternl.h:1912
@ ProcessDynamicEnforcedCetCompatibleRanges
Definition: winternl.h:1984
@ ProcessWin32kSyscallFilterInformation
Definition: winternl.h:1961
@ ProcessHandleCheckingMode
Definition: winternl.h:1936
@ ProcessExceptionPort
Definition: winternl.h:1890
@ ProcessCaptureTrustletLiveDump
Definition: winternl.h:1966
@ ProcessDisableSystemAllowedCpuSets
Definition: winternl.h:1962
@ ProcessWorkingSetWatch
Definition: winternl.h:1897
@ ProcessEnergyTrackingState
Definition: winternl.h:1964
@ ProcessProtectionInformation
Definition: winternl.h:1943
@ ProcessMembershipInformation
Definition: winternl.h:1991
@ ProcessGroupInformation
Definition: winternl.h:1929
@ ProcessEnergyValues
Definition: winternl.h:1958
@ ProcessMitigationPolicy
Definition: winternl.h:1934
@ ProcessUptimeInformation
Definition: winternl.h:1970
@ ProcessIumChallengeResponse
Definition: winternl.h:1954
@ ProcessTelemetryCoverage
Definition: winternl.h:1967
@ ProcessWorkingSetControl
Definition: winternl.h:1939
@ ProcessLdtInformation
Definition: winternl.h:1892
@ ProcessHighGraphicsPriorityInformation
Definition: winternl.h:1956
@ ProcessEnclaveInformation
Definition: winternl.h:1968
@ ProcessHandleCount
Definition: winternl.h:1902
@ ProcessUserModeIOPL
Definition: winternl.h:1898

◆ _PS_ATTRIBUTE_NUM

Enumerator
PsAttributeParentProcess 
PsAttributeDebugPort 
PsAttributeToken 
PsAttributeClientId 
PsAttributeTebAddress 
PsAttributeImageName 
PsAttributeImageInfo 
PsAttributeMemoryReserve 
PsAttributePriorityClass 
PsAttributeErrorMode 
PsAttributeStdHandleInfo 
PsAttributeHandleList 
PsAttributeGroupAffinity 
PsAttributePreferredNode 
PsAttributeIdealProcessor 
PsAttributeUmsThread 
PsAttributeMitigationOptions 
PsAttributeProtectionLevel 
PsAttributeSecureProcess 
PsAttributeJobList 
PsAttributeChildProcessPolicy 
PsAttributeAllApplicationPackagesPolicy 
PsAttributeWin32kFilter 
PsAttributeSafeOpenPromptOriginClaim 
PsAttributeBnoIsolation 
PsAttributeDesktopAppPolicy 
PsAttributeChpe 
PsAttributeMitigationAuditOptions 
PsAttributeMachineType 
PsAttributeComponentFilter 
PsAttributeEnableOptionalXStateFeatures 
PsAttributeMax 

Definition at line 4116 of file winternl.h.

4117{
@ PsAttributeErrorMode
Definition: winternl.h:4127
@ PsAttributeStdHandleInfo
Definition: winternl.h:4128
@ PsAttributeClientId
Definition: winternl.h:4121
@ PsAttributePriorityClass
Definition: winternl.h:4126
@ PsAttributeWin32kFilter
Definition: winternl.h:4140
@ PsAttributeBnoIsolation
Definition: winternl.h:4142
@ PsAttributeMachineType
Definition: winternl.h:4146
@ PsAttributeDebugPort
Definition: winternl.h:4119
@ PsAttributePreferredNode
Definition: winternl.h:4131
@ PsAttributeImageName
Definition: winternl.h:4123
@ PsAttributeSafeOpenPromptOriginClaim
Definition: winternl.h:4141
@ PsAttributeMemoryReserve
Definition: winternl.h:4125
@ PsAttributeProtectionLevel
Definition: winternl.h:4135
@ PsAttributeGroupAffinity
Definition: winternl.h:4130
@ PsAttributeMitigationAuditOptions
Definition: winternl.h:4145
@ PsAttributeChildProcessPolicy
Definition: winternl.h:4138
@ PsAttributeHandleList
Definition: winternl.h:4129
@ PsAttributeJobList
Definition: winternl.h:4137
@ PsAttributeAllApplicationPackagesPolicy
Definition: winternl.h:4139
@ PsAttributeMitigationOptions
Definition: winternl.h:4134
@ PsAttributeSecureProcess
Definition: winternl.h:4136
@ PsAttributeIdealProcessor
Definition: winternl.h:4132
@ PsAttributeToken
Definition: winternl.h:4120
@ PsAttributeImageInfo
Definition: winternl.h:4124
@ PsAttributeParentProcess
Definition: winternl.h:4118
@ PsAttributeUmsThread
Definition: winternl.h:4133
@ PsAttributeTebAddress
Definition: winternl.h:4122
@ PsAttributeComponentFilter
Definition: winternl.h:4147
@ PsAttributeEnableOptionalXStateFeatures
Definition: winternl.h:4148
@ PsAttributeChpe
Definition: winternl.h:4144
@ PsAttributeMax
Definition: winternl.h:4149
@ PsAttributeDesktopAppPolicy
Definition: winternl.h:4143
enum _PS_ATTRIBUTE_NUM PS_ATTRIBUTE_NUM

◆ _PS_CREATE_STATE

Enumerator
PsCreateInitialState 
PsCreateFailOnFileOpen 
PsCreateFailOnSectionCreate 
PsCreateFailExeFormat 
PsCreateFailMachineMismatch 
PsCreateFailExeName 
PsCreateSuccess 
PsCreateMaximumStates 

Definition at line 4201 of file winternl.h.

4202{
enum _PS_CREATE_STATE PS_CREATE_STATE
@ PsCreateFailExeName
Definition: winternl.h:4208
@ PsCreateFailExeFormat
Definition: winternl.h:4206
@ PsCreateMaximumStates
Definition: winternl.h:4210
@ PsCreateFailOnSectionCreate
Definition: winternl.h:4205
@ PsCreateFailMachineMismatch
Definition: winternl.h:4207
@ PsCreateFailOnFileOpen
Definition: winternl.h:4204
@ PsCreateSuccess
Definition: winternl.h:4209
@ PsCreateInitialState
Definition: winternl.h:4203

◆ _SECTION_INFORMATION_CLASS

Enumerator
SectionBasicInformation 
SectionImageInformation 
SectionBasicInformation 
SectionImageInformation 
SectionRelocationInformation 
SectionOriginalBaseInformation 
SectionInternalImageInformation 

Definition at line 3641 of file winternl.h.

3642{
enum _SECTION_INFORMATION_CLASS SECTION_INFORMATION_CLASS
@ SectionRelocationInformation
Definition: winternl.h:3645
@ SectionBasicInformation
Definition: winternl.h:3643
@ SectionImageInformation
Definition: winternl.h:3644
@ SectionOriginalBaseInformation
Definition: winternl.h:3646
@ SectionInternalImageInformation
Definition: winternl.h:3647

◆ _SECTION_INHERIT

Enumerator
ViewShare 
ViewUnmap 
ViewShare 
ViewUnmap 
ViewShare 
ViewUnmap 

Definition at line 2007 of file winternl.h.

2007 {
2008 ViewShare = 1,
2009 ViewUnmap = 2
enum _SECTION_INHERIT SECTION_INHERIT
@ ViewUnmap
Definition: winternl.h:2009
@ ViewShare
Definition: winternl.h:2008

◆ _SEMAPHORE_INFORMATION_CLASS

Enumerator
SemaphoreBasicInformation 
SemaphoreBasicInformation 

Definition at line 3632 of file winternl.h.

3632 {
@ SemaphoreBasicInformation
Definition: winternl.h:3633
enum _SEMAPHORE_INFORMATION_CLASS * PSEMAPHORE_INFORMATION_CLASS
enum _SEMAPHORE_INFORMATION_CLASS SEMAPHORE_INFORMATION_CLASS

◆ _SHUTDOWN_ACTION

Enumerator
ShutdownNoReboot 
ShutdownReboot 
ShutdownPowerOff 
ShutdownNoReboot 
ShutdownReboot 
ShutdownPowerOff 

Definition at line 3724 of file winternl.h.

3724 {
@ ShutdownReboot
Definition: winternl.h:3726
@ ShutdownPowerOff
Definition: winternl.h:3727
@ ShutdownNoReboot
Definition: winternl.h:3725
enum _SHUTDOWN_ACTION SHUTDOWN_ACTION
enum _SHUTDOWN_ACTION * PSHUTDOWN_ACTION

◆ _SYSDBG_COMMAND

Enumerator
SysDbgQueryModuleInformation 
SysDbgQueryTraceInformation 
SysDbgSetTracepoint 
SysDbgSetSpecialCall 
SysDbgClearSpecialCalls 
SysDbgQuerySpecialCalls 
SysDbgBreakPoint 
SysDbgQueryVersion 
SysDbgReadVirtual 
SysDbgWriteVirtual 
SysDbgReadPhysical 
SysDbgWritePhysical 
SysDbgReadControlSpace 
SysDbgWriteControlSpace 
SysDbgReadIoSpace 
SysDbgWriteIoSpace 
SysDbgReadMsr 
SysDbgWriteMsr 
SysDbgReadBusData 
SysDbgWriteBusData 
SysDbgCheckLowMemory 
SysDbgEnableKernelDebugger 
SysDbgDisableKernelDebugger 
SysDbgGetAutoKdEnable 
SysDbgSetAutoKdEnable 
SysDbgGetPrintBufferSize 
SysDbgSetPrintBufferSize 
SysDbgGetKdUmExceptionEnable 
SysDbgSetKdUmExceptionEnable 
SysDbgGetTriageDump 
SysDbgGetKdBlockEnable 
SysDbgSetKdBlockEnable 
SysDbgRegisterForUmBreakInfo 
SysDbgGetUmBreakPid 
SysDbgClearUmBreakPid 
SysDbgGetUmAttachPid 
SysDbgClearUmAttachPid 
SysDbgGetLiveKernelDump 
SysDbgKdPullRemoteFile 
SysDbgQueryModuleInformation 
SysDbgQueryTraceInformation 
SysDbgSetTracepoint 
SysDbgSetSpecialCall 
SysDbgClearSpecialCalls 
SysDbgQuerySpecialCalls 
SysDbgBreakPoint 
SysDbgQueryVersion 
SysDbgReadVirtual 
SysDbgWriteVirtual 
SysDbgReadPhysical 
SysDbgWritePhysical 
SysDbgReadControlSpace 
SysDbgWriteControlSpace 
SysDbgReadIoSpace 
SysDbgWriteIoSpace 
SysDbgReadMsr 
SysDbgWriteMsr 
SysDbgReadBusData 
SysDbgWriteBusData 
SysDbgCheckLowMemory 
SysDbgEnableKernelDebugger 
SysDbgDisableKernelDebugger 
SysDbgGetAutoKdEnable 
SysDbgSetAutoKdEnable 
SysDbgGetPrintBufferSize 
SysDbgSetPrintBufferSize 
SysDbgGetKdUmExceptionEnable 
SysDbgSetKdUmExceptionEnable 
SysDbgGetTriageDump 
SysDbgGetKdBlockEnable 
SysDbgSetKdBlockEnable 
SysDbgRegisterForUmBreakInfo 
SysDbgGetUmBreakPid 
SysDbgClearUmBreakPid 
SysDbgGetUmAttachPid 
SysDbgClearUmAttachPid 
SysDbgGetLiveKernelDump 
SysDbgKdPullRemoteFile 
SysDbgMaxInfoClass 

Definition at line 3816 of file winternl.h.

3816 {
enum _SYSDBG_COMMAND * PSYSDBG_COMMAND
@ SysDbgCheckLowMemory
Definition: winternl.h:3837
@ SysDbgQuerySpecialCalls
Definition: winternl.h:3822
@ SysDbgKdPullRemoteFile
Definition: winternl.h:3855
@ SysDbgSetTracepoint
Definition: winternl.h:3819
@ SysDbgMaxInfoClass
Definition: winternl.h:3856
@ SysDbgReadPhysical
Definition: winternl.h:3827
@ SysDbgGetPrintBufferSize
Definition: winternl.h:3842
@ SysDbgQueryTraceInformation
Definition: winternl.h:3818
@ SysDbgGetUmAttachPid
Definition: winternl.h:3852
@ SysDbgClearSpecialCalls
Definition: winternl.h:3821
@ SysDbgReadMsr
Definition: winternl.h:3833
@ SysDbgWriteControlSpace
Definition: winternl.h:3830
@ SysDbgGetKdBlockEnable
Definition: winternl.h:3847
@ SysDbgWriteBusData
Definition: winternl.h:3836
@ SysDbgEnableKernelDebugger
Definition: winternl.h:3838
@ SysDbgWriteVirtual
Definition: winternl.h:3826
@ SysDbgWritePhysical
Definition: winternl.h:3828
@ SysDbgGetKdUmExceptionEnable
Definition: winternl.h:3844
@ SysDbgQueryVersion
Definition: winternl.h:3824
@ SysDbgReadControlSpace
Definition: winternl.h:3829
@ SysDbgReadBusData
Definition: winternl.h:3835
@ SysDbgBreakPoint
Definition: winternl.h:3823
@ SysDbgSetKdUmExceptionEnable
Definition: winternl.h:3845
@ SysDbgGetLiveKernelDump
Definition: winternl.h:3854
@ SysDbgReadIoSpace
Definition: winternl.h:3831
@ SysDbgGetAutoKdEnable
Definition: winternl.h:3840
@ SysDbgWriteMsr
Definition: winternl.h:3834
@ SysDbgClearUmAttachPid
Definition: winternl.h:3853
@ SysDbgReadVirtual
Definition: winternl.h:3825
@ SysDbgSetPrintBufferSize
Definition: winternl.h:3843
@ SysDbgClearUmBreakPid
Definition: winternl.h:3851
@ SysDbgQueryModuleInformation
Definition: winternl.h:3817
@ SysDbgSetAutoKdEnable
Definition: winternl.h:3841
@ SysDbgGetUmBreakPid
Definition: winternl.h:3850
@ SysDbgGetTriageDump
Definition: winternl.h:3846
@ SysDbgDisableKernelDebugger
Definition: winternl.h:3839
@ SysDbgWriteIoSpace
Definition: winternl.h:3832
@ SysDbgRegisterForUmBreakInfo
Definition: winternl.h:3849
@ SysDbgSetSpecialCall
Definition: winternl.h:3820
@ SysDbgSetKdBlockEnable
Definition: winternl.h:3848
enum _SYSDBG_COMMAND SYSDBG_COMMAND

◆ _SYSTEM_FIRMWARE_TABLE_ACTION

Enumerator
SystemFirmwareTable_Enumerate 
SystemFirmwareTable_Get 
SystemFirmwareTable_Enumerate 
SystemFirmwareTable_Get 

Definition at line 3213 of file winternl.h.

3214{
enum _SYSTEM_FIRMWARE_TABLE_ACTION * PSYSTEM_FIRMWARE_TABLE_ACTION
@ SystemFirmwareTable_Enumerate
Definition: winternl.h:3215
@ SystemFirmwareTable_Get
Definition: winternl.h:3216
enum _SYSTEM_FIRMWARE_TABLE_ACTION SYSTEM_FIRMWARE_TABLE_ACTION

◆ _SYSTEM_INFORMATION_CLASS

Enumerator
SystemBasicInformation 
SystemProcessorInformation 
SystemPerformanceInformation 
SystemTimeOfDayInformation 
SystemPathInformation 
SystemProcessInformation 
SystemCallCountInformation 
SystemDeviceInformation 
SystemProcessorPerformanceInformation 
SystemFlagsInformation 
SystemCallTimeInformation 
SystemModuleInformation 
SystemLocksInformation 
SystemStackTraceInformation 
SystemPagedPoolInformation 
SystemNonPagedPoolInformation 
SystemHandleInformation 
SystemObjectInformation 
SystemPageFileInformation 
SystemVdmInstemulInformation 
SystemVdmBopInformation 
SystemFileCacheInformation 
SystemPoolTagInformation 
SystemInterruptInformation 
SystemDpcBehaviorInformation 
SystemFullMemoryInformation 
SystemLoadGdiDriverInformation 
SystemUnloadGdiDriverInformation 
SystemTimeAdjustmentInformation 
SystemSummaryMemoryInformation 
SystemNextEventIdInformation 
SystemEventIdsInformation 
SystemCrashDumpInformation 
SystemExceptionInformation 
SystemCrashDumpStateInformation 
SystemKernelDebuggerInformation 
SystemContextSwitchInformation 
SystemRegistryQuotaInformation 
SystemExtendServiceTableInformation 
SystemPrioritySeperation 
SystemPlugPlayBusInformation 
SystemDockInformation 
SystemPowerInformation 
SystemProcessorSpeedInformation 
SystemCurrentTimeZoneInformation 
SystemLookasideInformation 
SystemBasicInformation 
SystemProcessorInformation 
SystemPerformanceInformation 
SystemTimeOfDayInformation 
SystemPathInformation 
SystemProcessInformation 
SystemCallCountInformation 
SystemDeviceInformation 
SystemProcessorPerformanceInformation 
SystemFlagsInformation 
SystemCallTimeInformation 
SystemModuleInformation 
SystemLocksInformation 
SystemStackTraceInformation 
SystemPagedPoolInformation 
SystemNonPagedPoolInformation 
SystemHandleInformation 
SystemObjectInformation 
SystemPageFileInformation 
SystemVdmInstemulInformation 
SystemVdmBopInformation 
SystemFileCacheInformation 
SystemPoolTagInformation 
SystemInterruptInformation 
SystemDpcBehaviorInformation 
SystemFullMemoryInformation 
SystemLoadGdiDriverInformation 
SystemUnloadGdiDriverInformation 
SystemTimeAdjustmentInformation 
SystemSummaryMemoryInformation 
SystemNextEventIdInformation 
SystemEventIdsInformation 
SystemCrashDumpInformation 
SystemExceptionInformation 
SystemCrashDumpStateInformation 
SystemKernelDebuggerInformation 
SystemContextSwitchInformation 
SystemRegistryQuotaInformation 
SystemExtendServiceTableInformation 
SystemPrioritySeperation 
SystemPlugPlayBusInformation 
SystemDockInformation 
SystemPowerInformation 
SystemProcessorSpeedInformation 
SystemCurrentTimeZoneInformation 
SystemLookasideInformation 
SystemBasicInformation 
SystemProcessorInformation 
SystemPerformanceInformation 
SystemTimeOfDayInformation 
SystemPathInformation 
SystemProcessInformation 
SystemCallCountInformation 
SystemDeviceInformation 
SystemProcessorPerformanceInformation 
SystemFlagsInformation 
SystemCallTimeInformation 
SystemModuleInformation 
SystemLocksInformation 
SystemStackTraceInformation 
SystemPagedPoolInformation 
SystemNonPagedPoolInformation 
SystemHandleInformation 
SystemObjectInformation 
SystemPageFileInformation 
SystemVdmInstemulInformation 
SystemVdmBopInformation 
SystemFileCacheInformation 
SystemPoolTagInformation 
SystemInterruptInformation 
SystemDpcBehaviorInformation 
SystemFullMemoryInformation 
SystemLoadGdiDriverInformation 
SystemUnloadGdiDriverInformation 
SystemTimeAdjustmentInformation 
SystemSummaryMemoryInformation 
SystemMirrorMemoryInformation 
SystemPerformanceTraceInformation 
SystemObsolete0 
SystemExceptionInformation 
SystemCrashDumpStateInformation 
SystemKernelDebuggerInformation 
SystemContextSwitchInformation 
SystemRegistryQuotaInformation 
SystemExtendServiceTableInformation 
SystemPrioritySeperation 
SystemVerifierAddDriverInformation 
SystemVerifierRemoveDriverInformation 
SystemProcessorIdleInformation 
SystemLegacyDriverInformation 
SystemCurrentTimeZoneInformation 
SystemLookasideInformation 
SystemTimeSlipNotification 
SystemSessionCreate 
SystemSessionDetach 
SystemSessionInformation 
SystemRangeStartInformation 
SystemVerifierInformation 
SystemVerifierThunkExtend 
SystemSessionProcessInformation 
SystemLoadGdiDriverInSystemSpace 
SystemNumaProcessorMap 
SystemPrefetcherInformation 
SystemExtendedProcessInformation 
SystemRecommendedSharedDataAlignment 
SystemComPlusPackage 
SystemNumaAvailableMemory 
SystemProcessorPowerInformation 
SystemEmulationBasicInformation 
SystemEmulationProcessorInformation 
SystemExtendedHandleInformation 
SystemLostDelayedWriteInformation 
SystemBigPoolInformation 
SystemSessionPoolTagInformation 
SystemSessionMappedViewInformation 
SystemHotpatchInformation 
SystemObjectSecurityMode 
SystemWatchdogTimerHandler 
SystemWatchdogTimerInformation 
SystemLogicalProcessorInformation 
SystemWow64SharedInformationObsolete 
SystemRegisterFirmwareTableInformationHandler 
SystemFirmwareTableInformation 
SystemModuleInformationEx 
SystemVerifierTriageInformation 
SystemSuperfetchInformation 
SystemMemoryListInformation 
SystemFileCacheInformationEx 
SystemThreadPriorityClientIdInformation 
SystemProcessorIdleCycleTimeInformation 
SystemVerifierCancellationInformation 
SystemProcessorPowerInformationEx 
SystemRefTraceInformation 
SystemSpecialPoolInformation 
SystemProcessIdInformation 
SystemErrorPortInformation 
SystemBootEnvironmentInformation 
SystemHypervisorInformation 
SystemVerifierInformationEx 
SystemTimeZoneInformation 
SystemImageFileExecutionOptionsInformation 
SystemCoverageInformation 
SystemPrefetchPatchInformation 
SystemVerifierFaultsInformation 
SystemSystemPartitionInformation 
SystemSystemDiskInformation 
SystemProcessorPerformanceDistribution 
SystemNumaProximityNodeInformation 
SystemDynamicTimeZoneInformation 
SystemCodeIntegrityInformation 
SystemProcessorMicrocodeUpdateInformation 
SystemProcessorBrandString 
SystemVirtualAddressInformation 
SystemLogicalProcessorAndGroupInformation 
SystemProcessorCycleTimeInformation 
SystemStoreInformation 
SystemRegistryAppendString 
SystemAitSamplingValue 
SystemVhdBootInformation 
SystemCpuQuotaInformation 
SystemNativeBasicInformation 
SystemErrorPortTimeouts 
SystemLowPriorityIoInformation 
SystemBootEntropyInformation 
SystemVerifierCountersInformation 
SystemPagedPoolInformationEx 
SystemSystemPtesInformationEx 
SystemNodeDistanceInformation 
SystemAcpiAuditInformation 
SystemBasicPerformanceInformation 
SystemQueryPerformanceCounterInformation 
SystemSessionBigPoolInformation 
SystemBootGraphicsInformation 
SystemScrubPhysicalMemoryInformation 
SystemBadPageInformation 
SystemProcessorProfileControlArea 
SystemCombinePhysicalMemoryInformation 
SystemEntropyInterruptTimingInformation 
SystemConsoleInformation 
SystemPlatformBinaryInformation 
SystemThrottleNotificationInformation 
SystemPolicyInformation 
SystemHypervisorProcessorCountInformation 
SystemDeviceDataInformation 
SystemDeviceDataEnumerationInformation 
SystemMemoryTopologyInformation 
SystemMemoryChannelInformation 
SystemBootLogoInformation 
SystemProcessorPerformanceInformationEx 
SystemSpare0 
SystemCriticalProcessErrorLogInformation 
SystemSecureBootPolicyInformation 
SystemPageFileInformationEx 
SystemSecureBootInformation 
SystemEntropyInterruptTimingRawInformation 
SystemPortableWorkspaceEfiLauncherInformation 
SystemFullProcessInformation 
SystemKernelDebuggerInformationEx 
SystemBootMetadataInformation 
SystemSoftRebootInformation 
SystemElamCertificateInformation 
SystemOfflineDumpConfigInformation 
SystemProcessorFeaturesInformation 
SystemRegistryReconciliationInformation 
SystemEdidInformation 
SystemManufacturingInformation 
SystemEnergyEstimationConfigInformation 
SystemHypervisorDetailInformation 
SystemProcessorCycleStatsInformation 
SystemVmGenerationCountInformation 
SystemTrustedPlatformModuleInformation 
SystemKernelDebuggerFlags 
SystemCodeIntegrityPolicyInformation 
SystemIsolatedUserModeInformation 
SystemHardwareSecurityTestInterfaceResultsInformation 
SystemSingleModuleInformation 
SystemAllowedCpuSetsInformation 
SystemVsmProtectionInformation 
SystemInterruptCpuSetsInformation 
SystemSecureBootPolicyFullInformation 
SystemCodeIntegrityPolicyFullInformation 
SystemAffinitizedInterruptProcessorInformation 
SystemRootSiloInformation 
SystemCpuSetInformation 
SystemCpuSetTagInformation 
SystemWin32WerStartCallout 
SystemSecureKernelProfileInformation 
SystemCodeIntegrityPlatformManifestInformation 
SystemInterruptSteeringInformation 
SystemSupportedProcessorArchitectures 
SystemMemoryUsageInformation 
SystemCodeIntegrityCertificateInformation 
SystemPhysicalMemoryInformation 
SystemControlFlowTransition 
SystemKernelDebuggingAllowed 
SystemActivityModerationExeState 
SystemActivityModerationUserSettings 
SystemCodeIntegrityPoliciesFullInformation 
SystemCodeIntegrityUnlockInformation 
SystemIntegrityQuotaInformation 
SystemFlushInformation 
SystemProcessorIdleMaskInformation 
SystemSecureDumpEncryptionInformation 
SystemWriteConstraintInformation 
SystemKernelVaShadowInformation 
SystemHypervisorSharedPageInformation 
SystemFirmwareBootPerformanceInformation 
SystemCodeIntegrityVerificationInformation 
SystemFirmwarePartitionInformation 
SystemSpeculationControlInformation 
SystemDmaGuardPolicyInformation 
SystemEnclaveLaunchControlInformation 
SystemWorkloadAllowedCpuSetsInformation 
SystemCodeIntegrityUnlockModeInformation 
SystemLeapSecondInformation 
SystemFlags2Information 
SystemSecurityModelInformation 
SystemCodeIntegritySyntheticCacheInformation 
SystemFeatureConfigurationInformation 
SystemFeatureConfigurationSectionInformation 
SystemFeatureUsageSubscriptionInformation 
SystemSecureSpeculationControlInformation 
SystemSpacesBootInformation 
SystemFwRamdiskInformation 
SystemWheaIpmiHardwareInformation 
SystemDifSetRuleClassInformation 
SystemDifClearRuleClassInformation 
SystemDifApplyPluginVerificationOnDriver 
SystemDifRemovePluginVerificationOnDriver 
SystemShadowStackInformation 
SystemBuildVersionInformation 
SystemPoolLimitInformation 
SystemCodeIntegrityAddDynamicStore 
SystemCodeIntegrityClearDynamicStores 
SystemDifPoolTrackingInformation 
SystemPoolZeroingInformation 
SystemDpcWatchdogInformation 
SystemDpcWatchdogInformation2 
SystemSupportedProcessorArchitectures2 
SystemSingleProcessorRelationshipInformation 
SystemXfgCheckFailureInformation 
SystemIommuStateInformation 
SystemHypervisorMinrootInformation 
SystemHypervisorBootPagesInformation 
SystemPointerAuthInformation 
SystemSecureKernelDebuggerInformation 
SystemOriginalImageFeatureInformation 
SystemMemoryNumaInformation 
SystemMemoryNumaPerformanceInformation 
SystemCodeIntegritySignedPoliciesFullInformation 
SystemSecureSecretsInformation 
SystemTrustedAppsRuntimeInformation 
SystemBadPageInformationEx 
SystemResourceDeadlockTimeout 
SystemBreakOnContextUnwindFailureInformation 
SystemOslRamdiskInformation 
MaxSystemInfoClass 
SystemBasicInformation 
SystemPerformanceInformation 
SystemTimeOfDayInformation 
SystemProcessInformation 
SystemProcessorPerformanceInformation 
SystemInterruptInformation 
SystemExceptionInformation 
SystemRegistryQuotaInformation 
SystemLookasideInformation 
SystemPolicyInformation 
SystemBasicInformation 
SystemCpuInformation 
SystemPerformanceInformation 
SystemTimeOfDayInformation 
SystemPathInformation 
SystemProcessInformation 
SystemCallCountInformation 
SystemDeviceInformation 
SystemProcessorPerformanceInformation 
SystemFlagsInformation 
SystemCallTimeInformation 
SystemModuleInformation 
SystemLocksInformation 
SystemStackTraceInformation 
SystemPagedPoolInformation 
SystemNonPagedPoolInformation 
SystemHandleInformation 
SystemObjectInformation 
SystemPageFileInformation 
SystemVdmInstemulInformation 
SystemVdmBopInformation 
SystemFileCacheInformation 
SystemPoolTagInformation 
SystemInterruptInformation 
SystemDpcBehaviorInformation 
SystemFullMemoryInformation 
SystemNotImplemented6 
SystemLoadGdiDriverInformation 
SystemUnloadGdiDriverInformation 
SystemTimeAdjustmentInformation 
SystemTimeAdjustment 
SystemSummaryMemoryInformation 
SystemMirrorMemoryInformation 
SystemPerformanceTraceInformation 
SystemObsolete0 
SystemExceptionInformation 
SystemCrashDumpStateInformation 
SystemKernelDebuggerInformation 
SystemContextSwitchInformation 
SystemRegistryQuotaInformation 
SystemExtendServiceTableInformation 
SystemPrioritySeparation 
SystemVerifierAddDriverInformation 
SystemVerifierRemoveDriverInformation 
SystemProcessorIdleInformation 
SystemLegacyDriverInformation 
SystemCurrentTimeZoneInformation 
SystemLookasideInformation 
SystemTimeSlipNotification 
SystemSessionCreate 
SystemSessionDetach 
SystemSessionInformation 
SystemRangeStartInformation 
SystemVerifierInformation 
SystemVerifierThunkExtend 
SystemSessionProcessesInformation 
SystemLoadGdiDriverInSystemSpace 
SystemNumaProcessorMap 
SystemPrefetcherInformation 
SystemExtendedProcessInformation 
SystemRecommendedSharedDataAlignment 
SystemComPlusPackage 
SystemNumaAvailableMemory 
SystemProcessorPowerInformation 
SystemEmulationBasicInformation 
SystemEmulationProcessorInformation 
SystemExtendedHandleInformation 
SystemLostDelayedWriteInformation 
SystemBigPoolInformation 
SystemSessionPoolTagInformation 
SystemSessionMappedViewInformation 
SystemHotpatchInformation 
SystemObjectSecurityMode 
SystemWatchdogTimerHandler 
SystemWatchdogTimerInformation 
SystemLogicalProcessorInformation 
SystemWow64SharedInformationObsolete 
SystemRegisterFirmwareTableInformationHandler 
SystemFirmwareTableInformation 
SystemModuleInformationEx 
SystemVerifierTriageInformation 
SystemSuperfetchInformation 
SystemMemoryListInformation 
SystemFileCacheInformationEx 
SystemThreadPriorityClientIdInformation 
SystemProcessorIdleCycleTimeInformation 
SystemVerifierCancellationInformation 
SystemProcessorPowerInformationEx 
SystemRefTraceInformation 
SystemSpecialPoolInformation 
SystemProcessIdInformation 
SystemErrorPortInformation 
SystemBootEnvironmentInformation 
SystemHypervisorInformation 
SystemVerifierInformationEx 
SystemTimeZoneInformation 
SystemImageFileExecutionOptionsInformation 
SystemCoverageInformation 
SystemPrefetchPatchInformation 
SystemVerifierFaultsInformation 
SystemSystemPartitionInformation 
SystemSystemDiskInformation 
SystemProcessorPerformanceDistribution 
SystemNumaProximityNodeInformation 
SystemDynamicTimeZoneInformation 
SystemCodeIntegrityInformation 
SystemProcessorMicrocodeUpdateInformation 
SystemProcessorBrandString 
SystemVirtualAddressInformation 
SystemLogicalProcessorInformationEx 
SystemProcessorCycleTimeInformation 
SystemStoreInformation 
SystemRegistryAppendString 
SystemAitSamplingValue 
SystemVhdBootInformation 
SystemCpuQuotaInformation 
SystemNativeBasicInformation 
SystemErrorPortTimeouts 
SystemLowPriorityIoInformation 
SystemTpmBootEntropyInformation 
SystemVerifierCountersInformation 
SystemPagedPoolInformationEx 
SystemSystemPtesInformationEx 
SystemNodeDistanceInformation 
SystemAcpiAuditInformation 
SystemBasicPerformanceInformation 
SystemQueryPerformanceCounterInformation 
SystemSessionBigPoolInformation 
SystemBootGraphicsInformation 
SystemScrubPhysicalMemoryInformation 
SystemBadPageInformation 
SystemProcessorProfileControlArea 
SystemCombinePhysicalMemoryInformation 
SystemEntropyInterruptTimingInformation 
SystemConsoleInformation 
SystemPlatformBinaryInformation 
SystemPolicyInformation 
SystemHypervisorProcessorCountInformation 
SystemDeviceDataInformation 
SystemDeviceDataEnumerationInformation 
SystemMemoryTopologyInformation 
SystemMemoryChannelInformation 
SystemBootLogoInformation 
SystemProcessorPerformanceInformationEx 
SystemCriticalProcessErrorLogInformation 
SystemSecureBootPolicyInformation 
SystemPageFileInformationEx 
SystemSecureBootInformation 
SystemEntropyInterruptTimingRawInformation 
SystemPortableWorkspaceEfiLauncherInformation 
SystemFullProcessInformation 
SystemKernelDebuggerInformationEx 
SystemBootMetadataInformation 
SystemSoftRebootInformation 
SystemElamCertificateInformation 
SystemOfflineDumpConfigInformation 
SystemProcessorFeaturesInformation 
SystemRegistryReconciliationInformation 
SystemEdidInformation 
SystemManufacturingInformation 
SystemEnergyEstimationConfigInformation 
SystemHypervisorDetailInformation 
SystemProcessorCycleStatsInformation 
SystemVmGenerationCountInformation 
SystemTrustedPlatformModuleInformation 
SystemKernelDebuggerFlags 
SystemCodeIntegrityPolicyInformation 
SystemIsolatedUserModeInformation 
SystemHardwareSecurityTestInterfaceResultsInformation 
SystemSingleModuleInformation 
SystemAllowedCpuSetsInformation 
SystemVsmProtectionInformation 
SystemInterruptCpuSetsInformation 
SystemSecureBootPolicyFullInformation 
SystemCodeIntegrityPolicyFullInformation 
SystemAffinitizedInterruptProcessorInformation 
SystemRootSiloInformation 
SystemCpuSetInformation 
SystemCpuSetTagInformation 
SystemWin32WerStartCallout 
SystemSecureKernelProfileInformation 
SystemCodeIntegrityPlatformManifestInformation 
SystemInterruptSteeringInformation 
SystemSupportedProcessorArchitectures 
SystemMemoryUsageInformation 
SystemCodeIntegrityCertificateInformation 
SystemPhysicalMemoryInformation 
SystemControlFlowTransition 
SystemKernelDebuggingAllowed 
SystemActivityModerationExeState 
SystemActivityModerationUserSettings 
SystemCodeIntegrityPoliciesFullInformation 
SystemCodeIntegrityUnlockInformation 
SystemIntegrityQuotaInformation 
SystemFlushInformation 
SystemProcessorIdleMaskInformation 
SystemSecureDumpEncryptionInformation 
SystemWriteConstraintInformation 
SystemKernelVaShadowInformation 
SystemHypervisorSharedPageInformation 
SystemFirmwareBootPerformanceInformation 
SystemCodeIntegrityVerificationInformation 
SystemFirmwarePartitionInformation 
SystemSpeculationControlInformation 
SystemDmaGuardPolicyInformation 
SystemEnclaveLaunchControlInformation 
SystemWorkloadAllowedCpuSetsInformation 
SystemCodeIntegrityUnlockModeInformation 
SystemLeapSecondInformation 
SystemFlags2Information 
SystemSecurityModelInformation 
SystemCodeIntegritySyntheticCacheInformation 
SystemFeatureConfigurationInformation 
SystemFeatureConfigurationSectionInformation 
SystemFeatureUsageSubscriptionInformation 
SystemSecureSpeculationControlInformation 
SystemSpacesBootInformation 
SystemFwRamdiskInformation 
SystemWheaIpmiHardwareInformation 
SystemDifSetRuleClassInformation 
SystemDifClearRuleClassInformation 
SystemDifApplyPluginVerificationOnDriver 
SystemDifRemovePluginVerificationOnDriver 
SystemShadowStackInformation 
SystemBuildVersionInformation 
SystemPoolLimitInformation 
SystemCodeIntegrityAddDynamicStore 
SystemCodeIntegrityClearDynamicStores 
SystemDifPoolTrackingInformation 
SystemPoolZeroingInformation 
SystemDpcWatchdogInformation 
SystemDpcWatchdogInformation2 
SystemSupportedProcessorArchitectures2 
SystemSingleProcessorRelationshipInformation 
SystemXfgCheckFailureInformation 
SystemIommuStateInformation 
SystemHypervisorMinrootInformation 
SystemHypervisorBootPagesInformation 
SystemPointerAuthInformation 
SystemSecureKernelDebuggerInformation 
SystemOriginalImageFeatureInformation 

Definition at line 2012 of file winternl.h.

2012 {
2016 SystemTimeOfDayInformation = 3, /* was SystemTimeInformation */
2047 SystemObsolete0 = 32,
2254#ifdef __WINESRC__
2255 SystemWineVersionInformation = 1000,
2256#endif
@ SystemTimeOfDayInformation
Definition: winternl.h:478
@ SystemExceptionInformation
Definition: winternl.h:482
@ SystemBasicInformation
Definition: winternl.h:476
@ SystemLookasideInformation
Definition: winternl.h:484
@ SystemRegistryQuotaInformation
Definition: winternl.h:483
@ SystemInterruptInformation
Definition: winternl.h:481
@ SystemPolicyInformation
Definition: winternl.h:485
@ SystemProcessInformation
Definition: winternl.h:479
@ SystemPerformanceInformation
Definition: winternl.h:477
@ SystemProcessorPerformanceInformation
Definition: winternl.h:480
enum _SYSTEM_INFORMATION_CLASS SYSTEM_INFORMATION_CLASS
enum _SYSTEM_INFORMATION_CLASS * PSYSTEM_INFORMATION_CLASS
@ SystemFullProcessInformation
Definition: winternl.h:2163
@ SystemMemoryChannelInformation
Definition: winternl.h:2154
@ SystemCodeIntegrityPolicyInformation
Definition: winternl.h:2179
@ SystemSessionInformation
Definition: winternl.h:2064
@ SystemDifClearRuleClassInformation
Definition: winternl.h:2233
@ SystemSupportedProcessorArchitectures
Definition: winternl.h:2196
@ SystemErrorPortTimeouts
Definition: winternl.h:2130
@ SystemSystemPtesInformationEx
Definition: winternl.h:2135
@ SystemPortableWorkspaceEfiLauncherInformation
Definition: winternl.h:2162
@ SystemCodeIntegrityCertificateInformation
Definition: winternl.h:2198
@ SystemIntegrityQuotaInformation
Definition: winternl.h:2206
@ SystemRegistryAppendString
Definition: winternl.h:2125
@ SystemCodeIntegrityPolicyFullInformation
Definition: winternl.h:2187
@ SystemCurrentTimeZoneInformation
Definition: winternl.h:2059
@ SystemFlags2Information
Definition: winternl.h:2222
@ SystemVerifierCancellationInformation
Definition: winternl.h:2099
@ SystemSuperfetchInformation
Definition: winternl.h:2094
@ SystemTimeAdjustment
Definition: winternl.h:2043
@ SystemProcessorMicrocodeUpdateInformation
Definition: winternl.h:2119
@ SystemTimeSlipNotification
Definition: winternl.h:2061
@ SystemConsoleInformation
Definition: winternl.h:2147
@ SystemScrubPhysicalMemoryInformation
Definition: winternl.h:2142
@ SystemSecureBootInformation
Definition: winternl.h:2160
@ SystemHypervisorSharedPageInformation
Definition: winternl.h:2212
@ SystemProcessorPerformanceDistribution
Definition: winternl.h:2115
@ SystemKernelDebuggerInformation
Definition: winternl.h:2050
@ SystemWheaIpmiHardwareInformation
Definition: winternl.h:2231
@ SystemBasicPerformanceInformation
Definition: winternl.h:2138
@ SystemProcessorPowerInformation
Definition: winternl.h:2076
@ SystemElamCertificateInformation
Definition: winternl.h:2167
@ SystemPlatformBinaryInformation
Definition: winternl.h:2148
@ SystemFirmwareTableInformation
Definition: winternl.h:2091
@ SystemWorkloadAllowedCpuSetsInformation
Definition: winternl.h:2219
@ SystemAllowedCpuSetsInformation
Definition: winternl.h:2183
@ SystemOfflineDumpConfigInformation
Definition: winternl.h:2168
@ SystemProcessorBrandString
Definition: winternl.h:2120
@ SystemMemoryTopologyInformation
Definition: winternl.h:2153
@ SystemAffinitizedInterruptProcessorInformation
Definition: winternl.h:2188
@ SystemNumaProximityNodeInformation
Definition: winternl.h:2116
@ SystemEdidInformation
Definition: winternl.h:2171
@ SystemWin32WerStartCallout
Definition: winternl.h:2192
@ SystemDifSetRuleClassInformation
Definition: winternl.h:2232
@ SystemBootLogoInformation
Definition: winternl.h:2155
@ SystemLogicalProcessorInformation
Definition: winternl.h:2088
@ SystemCodeIntegrityPlatformManifestInformation
Definition: winternl.h:2194
@ SystemSecureKernelDebuggerInformation
Definition: winternl.h:2252
@ SystemSingleModuleInformation
Definition: winternl.h:2182
@ SystemModuleInformation
Definition: winternl.h:2024
@ SystemMemoryListInformation
Definition: winternl.h:2095
@ SystemSecureKernelProfileInformation
Definition: winternl.h:2193
@ SystemBuildVersionInformation
Definition: winternl.h:2237
@ SystemCodeIntegrityPoliciesFullInformation
Definition: winternl.h:2204
@ SystemProcessorIdleMaskInformation
Definition: winternl.h:2208
@ SystemVerifierTriageInformation
Definition: winternl.h:2093
@ SystemVerifierInformation
Definition: winternl.h:2066
@ SystemDpcBehaviorInformation
Definition: winternl.h:2037
@ SystemProcessorPerformanceInformationEx
Definition: winternl.h:2156
@ SystemEmulationBasicInformation
Definition: winternl.h:2077
@ SystemBigPoolInformation
Definition: winternl.h:2081
@ SystemSpecialPoolInformation
Definition: winternl.h:2102
@ SystemSingleProcessorRelationshipInformation
Definition: winternl.h:2246
@ SystemSessionProcessesInformation
Definition: winternl.h:2068
@ SystemSecureBootPolicyInformation
Definition: winternl.h:2158
@ SystemCoverageInformation
Definition: winternl.h:2110
@ SystemPathInformation
Definition: winternl.h:2017
@ SystemSpacesBootInformation
Definition: winternl.h:2229
@ SystemVdmInstemulInformation
Definition: winternl.h:2032
@ SystemProcessorCycleStatsInformation
Definition: winternl.h:2175
@ SystemImageFileExecutionOptionsInformation
Definition: winternl.h:2109
@ SystemVerifierAddDriverInformation
Definition: winternl.h:2055
@ SystemCodeIntegrityInformation
Definition: winternl.h:2118
@ SystemTrustedPlatformModuleInformation
Definition: winternl.h:2177
@ SystemModuleInformationEx
Definition: winternl.h:2092
@ SystemCodeIntegrityClearDynamicStores
Definition: winternl.h:2240
@ SystemNodeDistanceInformation
Definition: winternl.h:2136
@ SystemBadPageInformation
Definition: winternl.h:2143
@ SystemMirrorMemoryInformation
Definition: winternl.h:2045
@ SystemExtendServiceTableInformation
Definition: winternl.h:2053
@ SystemNonPagedPoolInformation
Definition: winternl.h:2028
@ SystemProcessIdInformation
Definition: winternl.h:2103
@ SystemCpuInformation
Definition: winternl.h:2014
@ SystemFeatureUsageSubscriptionInformation
Definition: winternl.h:2227
@ SystemLostDelayedWriteInformation
Definition: winternl.h:2080
@ SystemCpuQuotaInformation
Definition: winternl.h:2128
@ SystemCodeIntegrityAddDynamicStore
Definition: winternl.h:2239
@ SystemPointerAuthInformation
Definition: winternl.h:2251
@ SystemBootEnvironmentInformation
Definition: winternl.h:2105
@ SystemProcessorFeaturesInformation
Definition: winternl.h:2169
@ SystemHypervisorDetailInformation
Definition: winternl.h:2174
@ SystemSecureDumpEncryptionInformation
Definition: winternl.h:2209
@ SystemSecureSpeculationControlInformation
Definition: winternl.h:2228
@ SystemHypervisorMinrootInformation
Definition: winternl.h:2249
@ SystemDynamicTimeZoneInformation
Definition: winternl.h:2117
@ SystemUnloadGdiDriverInformation
Definition: winternl.h:2041
@ SystemBootGraphicsInformation
Definition: winternl.h:2141
@ SystemFileCacheInformation
Definition: winternl.h:2034
@ SystemPoolZeroingInformation
Definition: winternl.h:2242
@ SystemPrioritySeparation
Definition: winternl.h:2054
@ SystemRecommendedSharedDataAlignment
Definition: winternl.h:2073
@ SystemKernelDebuggerInformationEx
Definition: winternl.h:2164
@ SystemRefTraceInformation
Definition: winternl.h:2101
@ SystemWriteConstraintInformation
Definition: winternl.h:2210
@ SystemExtendedHandleInformation
Definition: winternl.h:2079
@ SystemWatchdogTimerHandler
Definition: winternl.h:2086
@ SystemVerifierFaultsInformation
Definition: winternl.h:2112
@ SystemSecurityModelInformation
Definition: winternl.h:2223
@ SystemObsolete0
Definition: winternl.h:2047
@ SystemIsolatedUserModeInformation
Definition: winternl.h:2180
@ SystemPoolLimitInformation
Definition: winternl.h:2238
@ SystemTimeZoneInformation
Definition: winternl.h:2108
@ SystemXfgCheckFailureInformation
Definition: winternl.h:2247
@ SystemLocksInformation
Definition: winternl.h:2025
@ SystemActivityModerationExeState
Definition: winternl.h:2202
@ SystemStoreInformation
Definition: winternl.h:2124
@ SystemSessionCreate
Definition: winternl.h:2062
@ SystemVirtualAddressInformation
Definition: winternl.h:2121
@ SystemVerifierCountersInformation
Definition: winternl.h:2133
@ SystemProcessorIdleInformation
Definition: winternl.h:2057
@ SystemSessionMappedViewInformation
Definition: winternl.h:2083
@ SystemHandleInformation
Definition: winternl.h:2029
@ SystemEmulationProcessorInformation
Definition: winternl.h:2078
@ SystemFlushInformation
Definition: winternl.h:2207
@ SystemLogicalProcessorInformationEx
Definition: winternl.h:2122
@ SystemSpeculationControlInformation
Definition: winternl.h:2216
@ SystemPagedPoolInformationEx
Definition: winternl.h:2134
@ SystemVdmBopInformation
Definition: winternl.h:2033
@ SystemFeatureConfigurationSectionInformation
Definition: winternl.h:2226
@ SystemVerifierRemoveDriverInformation
Definition: winternl.h:2056
@ SystemSupportedProcessorArchitectures2
Definition: winternl.h:2245
@ SystemLowPriorityIoInformation
Definition: winternl.h:2131
@ SystemDifApplyPluginVerificationOnDriver
Definition: winternl.h:2234
@ SystemProcessorPowerInformationEx
Definition: winternl.h:2100
@ SystemWatchdogTimerInformation
Definition: winternl.h:2087
@ SystemCodeIntegrityUnlockModeInformation
Definition: winternl.h:2220
@ SystemCallTimeInformation
Definition: winternl.h:2023
@ SystemKernelDebuggingAllowed
Definition: winternl.h:2201
@ SystemCodeIntegritySyntheticCacheInformation
Definition: winternl.h:2224
@ SystemExtendedProcessInformation
Definition: winternl.h:2072
@ SystemThreadPriorityClientIdInformation
Definition: winternl.h:2097
@ SystemContextSwitchInformation
Definition: winternl.h:2051
@ SystemEntropyInterruptTimingRawInformation
Definition: winternl.h:2161
@ SystemDifRemovePluginVerificationOnDriver
Definition: winternl.h:2235
@ SystemVerifierInformationEx
Definition: winternl.h:2107
@ SystemCpuSetInformation
Definition: winternl.h:2190
@ SystemTimeAdjustmentInformation
Definition: winternl.h:2042
@ SystemQueryPerformanceCounterInformation
Definition: winternl.h:2139
@ SystemFullMemoryInformation
Definition: winternl.h:2038
@ SystemPhysicalMemoryInformation
Definition: winternl.h:2199
@ SystemNumaProcessorMap
Definition: winternl.h:2070
@ SystemLeapSecondInformation
Definition: winternl.h:2221
@ SystemSystemDiskInformation
Definition: winternl.h:2114
@ SystemRangeStartInformation
Definition: winternl.h:2065
@ SystemObjectSecurityMode
Definition: winternl.h:2085
@ SystemNativeBasicInformation
Definition: winternl.h:2129
@ SystemRegisterFirmwareTableInformationHandler
Definition: winternl.h:2090
@ SystemCodeIntegrityUnlockInformation
Definition: winternl.h:2205
@ SystemFeatureConfigurationInformation
Definition: winternl.h:2225
@ SystemEnergyEstimationConfigInformation
Definition: winternl.h:2173
@ SystemSoftRebootInformation
Definition: winternl.h:2166
@ SystemPageFileInformation
Definition: winternl.h:2031
@ SystemFwRamdiskInformation
Definition: winternl.h:2230
@ SystemOriginalImageFeatureInformation
Definition: winternl.h:2253
@ SystemKernelVaShadowInformation
Definition: winternl.h:2211
@ SystemStackTraceInformation
Definition: winternl.h:2026
@ SystemVmGenerationCountInformation
Definition: winternl.h:2176
@ SystemBootMetadataInformation
Definition: winternl.h:2165
@ SystemPageFileInformationEx
Definition: winternl.h:2159
@ SystemDeviceDataInformation
Definition: winternl.h:2151
@ SystemVerifierThunkExtend
Definition: winternl.h:2067
@ SystemPrefetchPatchInformation
Definition: winternl.h:2111
@ SystemCriticalProcessErrorLogInformation
Definition: winternl.h:2157
@ SystemShadowStackInformation
Definition: winternl.h:2236
@ SystemEnclaveLaunchControlInformation
Definition: winternl.h:2218
@ SystemSecureBootPolicyFullInformation
Definition: winternl.h:2186
@ SystemComPlusPackage
Definition: winternl.h:2074
@ SystemObjectInformation
Definition: winternl.h:2030
@ SystemFlagsInformation
Definition: winternl.h:2022
@ SystemCpuSetTagInformation
Definition: winternl.h:2191
@ SystemInterruptCpuSetsInformation
Definition: winternl.h:2185
@ SystemSessionPoolTagInformation
Definition: winternl.h:2082
@ SystemLoadGdiDriverInformation
Definition: winternl.h:2040
@ SystemHypervisorInformation
Definition: winternl.h:2106
@ SystemNotImplemented6
Definition: winternl.h:2039
@ SystemAcpiAuditInformation
Definition: winternl.h:2137
@ SystemCombinePhysicalMemoryInformation
Definition: winternl.h:2145
@ SystemSessionBigPoolInformation
Definition: winternl.h:2140
@ SystemHardwareSecurityTestInterfaceResultsInformation
Definition: winternl.h:2181
@ SystemMemoryUsageInformation
Definition: winternl.h:2197
@ SystemFileCacheInformationEx
Definition: winternl.h:2096
@ SystemHypervisorBootPagesInformation
Definition: winternl.h:2250
@ SystemProcessorIdleCycleTimeInformation
Definition: winternl.h:2098
@ SystemErrorPortInformation
Definition: winternl.h:2104
@ SystemProcessorProfileControlArea
Definition: winternl.h:2144
@ SystemDeviceInformation
Definition: winternl.h:2020
@ SystemSessionDetach
Definition: winternl.h:2063
@ SystemSummaryMemoryInformation
Definition: winternl.h:2044
@ SystemFirmwareBootPerformanceInformation
Definition: winternl.h:2213
@ SystemHotpatchInformation
Definition: winternl.h:2084
@ SystemPagedPoolInformation
Definition: winternl.h:2027
@ SystemDeviceDataEnumerationInformation
Definition: winternl.h:2152
@ SystemCrashDumpStateInformation
Definition: winternl.h:2049
@ SystemVsmProtectionInformation
Definition: winternl.h:2184
@ SystemCodeIntegrityVerificationInformation
Definition: winternl.h:2214
@ SystemDpcWatchdogInformation
Definition: winternl.h:2243
@ SystemDmaGuardPolicyInformation
Definition: winternl.h:2217
@ SystemRegistryReconciliationInformation
Definition: winternl.h:2170
@ SystemWow64SharedInformationObsolete
Definition: winternl.h:2089
@ SystemPerformanceTraceInformation
Definition: winternl.h:2046
@ SystemDifPoolTrackingInformation
Definition: winternl.h:2241
@ SystemCallCountInformation
Definition: winternl.h:2019
@ SystemVhdBootInformation
Definition: winternl.h:2127
@ SystemSystemPartitionInformation
Definition: winternl.h:2113
@ SystemPoolTagInformation
Definition: winternl.h:2035
@ SystemLoadGdiDriverInSystemSpace
Definition: winternl.h:2069
@ SystemIommuStateInformation
Definition: winternl.h:2248
@ SystemFirmwarePartitionInformation
Definition: winternl.h:2215
@ SystemManufacturingInformation
Definition: winternl.h:2172
@ SystemControlFlowTransition
Definition: winternl.h:2200
@ SystemRootSiloInformation
Definition: winternl.h:2189
@ SystemEntropyInterruptTimingInformation
Definition: winternl.h:2146
@ SystemNumaAvailableMemory
Definition: winternl.h:2075
@ SystemProcessorCycleTimeInformation
Definition: winternl.h:2123
@ SystemActivityModerationUserSettings
Definition: winternl.h:2203
@ SystemTpmBootEntropyInformation
Definition: winternl.h:2132
@ SystemKernelDebuggerFlags
Definition: winternl.h:2178
@ SystemLegacyDriverInformation
Definition: winternl.h:2058
@ SystemAitSamplingValue
Definition: winternl.h:2126
@ SystemDpcWatchdogInformation2
Definition: winternl.h:2244
@ SystemPrefetcherInformation
Definition: winternl.h:2071
@ SystemHypervisorProcessorCountInformation
Definition: winternl.h:2150
@ SystemInterruptSteeringInformation
Definition: winternl.h:2195

◆ _THREADINFOCLASS

Enumerator
ThreadBasicInformation 
ThreadTimes 
ThreadPriority 
ThreadBasePriority 
ThreadAffinityMask 
ThreadImpersonationToken 
ThreadDescriptorTableEntry 
ThreadEnableAlignmentFaultFixup 
ThreadEventPair_Reusable 
ThreadQuerySetWin32StartAddress 
ThreadZeroTlsCell 
ThreadPerformanceCount 
ThreadAmILastThread 
ThreadIdealProcessor 
ThreadPriorityBoost 
ThreadSetTlsArrayAddress 
ThreadIsIoPending 
ThreadHideFromDebugger 
ThreadBreakOnTermination 
ThreadSwitchLegacyState 
ThreadIsTerminated 
ThreadLastSystemCall 
ThreadIoPriority 
ThreadCycleTime 
ThreadPagePriority 
ThreadActualBasePriority 
ThreadTebInformation 
ThreadCSwitchMon 
ThreadCSwitchPmu 
ThreadWow64Context 
ThreadGroupInformation 
ThreadUmsInformation 
ThreadCounterProfiling 
ThreadIdealProcessorEx 
MaxThreadInfoClass 
ThreadIsIoPending 
ThreadBasicInformation 
ThreadTimes 
ThreadPriority 
ThreadBasePriority 
ThreadAffinityMask 
ThreadImpersonationToken 
ThreadDescriptorTableEntry 
ThreadEnableAlignmentFaultFixup 
ThreadEventPair_Reusable 
ThreadQuerySetWin32StartAddress 
ThreadZeroTlsCell 
ThreadPerformanceCount 
ThreadAmILastThread 
ThreadIdealProcessor 
ThreadPriorityBoost 
ThreadSetTlsArrayAddress 
ThreadIsIoPending 
ThreadHideFromDebugger 
ThreadBreakOnTermination 
ThreadSwitchLegacyState 
ThreadIsTerminated 
ThreadLastSystemCall 
ThreadIoPriority 
ThreadCycleTime 
ThreadPagePriority 
ThreadActualBasePriority 
ThreadTebInformation 
ThreadCSwitchMon 
ThreadCSwitchPmu 
ThreadWow64Context 
ThreadGroupInformation 
ThreadUmsInformation 
ThreadCounterProfiling 
ThreadIdealProcessorEx 
ThreadCpuAccountingInformation 
ThreadSuspendCount 
ThreadHeterogeneousCpuPolicy 
ThreadContainerId 
ThreadNameInformation 
ThreadSelectedCpuSets 
ThreadSystemThreadInformation 
ThreadActualGroupAffinity 
ThreadDynamicCodePolicyInfo 
ThreadExplicitCaseSensitivity 
ThreadWorkOnBehalfTicket 
ThreadSubsystemInformation 
ThreadDbgkWerReportActive 
ThreadAttachContainer 
ThreadManageWritesToExecutableMemory 
ThreadPowerThrottlingState 
ThreadWorkloadClass 
ThreadCreateStateChange 
ThreadApplyStateChange 
ThreadStrongerBadHandleChecks 
ThreadEffectiveIoPriority 
ThreadEffectivePagePriority 
MaxThreadInfoClass 
ThreadBasicInformation 
ThreadTimes 
ThreadPriority 
ThreadBasePriority 
ThreadAffinityMask 
ThreadImpersonationToken 
ThreadDescriptorTableEntry 
ThreadEnableAlignmentFaultFixup 
ThreadEventPair_Reusable 
ThreadQuerySetWin32StartAddress 
ThreadZeroTlsCell 
ThreadPerformanceCount 
ThreadAmILastThread 
ThreadIdealProcessor 
ThreadPriorityBoost 
ThreadSetTlsArrayAddress 
ThreadIsIoPending 
ThreadHideFromDebugger 
ThreadBreakOnTermination 
ThreadSwitchLegacyState 
ThreadIsTerminated 
ThreadLastSystemCall 
ThreadIoPriority 
ThreadCycleTime 
ThreadPagePriority 
ThreadActualBasePriority 
ThreadTebInformation 
ThreadCSwitchMon 
ThreadCSwitchPmu 
ThreadWow64Context 
ThreadGroupInformation 
ThreadUmsInformation 
ThreadCounterProfiling 
ThreadIdealProcessorEx 
ThreadCpuAccountingInformation 
ThreadSuspendCount 
ThreadHeterogeneousCpuPolicy 
ThreadContainerId 
ThreadNameInformation 
ThreadSelectedCpuSets 
ThreadSystemThreadInformation 
ThreadActualGroupAffinity 
ThreadDynamicCodePolicyInfo 
ThreadExplicitCaseSensitivity 
ThreadWorkOnBehalfTicket 
ThreadSubsystemInformation 
ThreadDbgkWerReportActive 
ThreadAttachContainer 
ThreadManageWritesToExecutableMemory 
ThreadPowerThrottlingState 
ThreadWorkloadClass 
ThreadCreateStateChange 
ThreadApplyStateChange 
ThreadStrongerBadHandleChecks 
ThreadEffectiveIoPriority 
ThreadEffectivePagePriority 
MaxThreadInfoClass 

Definition at line 2280 of file winternl.h.

2280 {
2338#ifdef __WINESRC__
2339 ThreadWineNativeThreadName = 1000,
2340#endif
enum _THREADINFOCLASS THREADINFOCLASS
@ ThreadIsIoPending
Definition: winternl.h:426
@ ThreadSuspendCount
Definition: winternl.h:2316
@ ThreadActualGroupAffinity
Definition: winternl.h:2322
@ ThreadEnableAlignmentFaultFixup
Definition: winternl.h:2288
@ ThreadCSwitchPmu
Definition: winternl.h:2309
@ ThreadDescriptorTableEntry
Definition: winternl.h:2287
@ ThreadStrongerBadHandleChecks
Definition: winternl.h:2334
@ ThreadCpuAccountingInformation
Definition: winternl.h:2315
@ ThreadWorkOnBehalfTicket
Definition: winternl.h:2325
@ ThreadEventPair_Reusable
Definition: winternl.h:2289
@ ThreadIdealProcessorEx
Definition: winternl.h:2314
@ ThreadEffectiveIoPriority
Definition: winternl.h:2335
@ ThreadAmILastThread
Definition: winternl.h:2293
@ ThreadTimes
Definition: winternl.h:2282
@ ThreadCreateStateChange
Definition: winternl.h:2332
@ ThreadPagePriority
Definition: winternl.h:2305
@ ThreadUmsInformation
Definition: winternl.h:2312
@ ThreadCSwitchMon
Definition: winternl.h:2308
@ ThreadPriority
Definition: winternl.h:2283
@ MaxThreadInfoClass
Definition: winternl.h:2337
@ ThreadSelectedCpuSets
Definition: winternl.h:2320
@ ThreadIdealProcessor
Definition: winternl.h:2294
@ ThreadActualBasePriority
Definition: winternl.h:2306
@ ThreadApplyStateChange
Definition: winternl.h:2333
@ ThreadGroupInformation
Definition: winternl.h:2311
@ ThreadSystemThreadInformation
Definition: winternl.h:2321
@ ThreadManageWritesToExecutableMemory
Definition: winternl.h:2329
@ ThreadSwitchLegacyState
Definition: winternl.h:2300
@ ThreadDynamicCodePolicyInfo
Definition: winternl.h:2323
@ ThreadQuerySetWin32StartAddress
Definition: winternl.h:2290
@ ThreadIsTerminated
Definition: winternl.h:2301
@ ThreadLastSystemCall
Definition: winternl.h:2302
@ ThreadBreakOnTermination
Definition: winternl.h:2299
@ ThreadExplicitCaseSensitivity
Definition: winternl.h:2324
@ ThreadPowerThrottlingState
Definition: winternl.h:2330
@ ThreadImpersonationToken
Definition: winternl.h:2286
@ ThreadHeterogeneousCpuPolicy
Definition: winternl.h:2317
@ ThreadSetTlsArrayAddress
Definition: winternl.h:2296
@ ThreadEffectivePagePriority
Definition: winternl.h:2336
@ ThreadAffinityMask
Definition: winternl.h:2285
@ ThreadNameInformation
Definition: winternl.h:2319
@ ThreadDbgkWerReportActive
Definition: winternl.h:2327
@ ThreadBasePriority
Definition: winternl.h:2284
@ ThreadTebInformation
Definition: winternl.h:2307
@ ThreadIoPriority
Definition: winternl.h:2303
@ ThreadCycleTime
Definition: winternl.h:2304
@ ThreadSubsystemInformation
Definition: winternl.h:2326
@ ThreadBasicInformation
Definition: winternl.h:2281
@ ThreadAttachContainer
Definition: winternl.h:2328
@ ThreadCounterProfiling
Definition: winternl.h:2313
@ ThreadPriorityBoost
Definition: winternl.h:2295
@ ThreadContainerId
Definition: winternl.h:2318
@ ThreadPerformanceCount
Definition: winternl.h:2292
@ ThreadZeroTlsCell
Definition: winternl.h:2291
@ ThreadWow64Context
Definition: winternl.h:2310
@ ThreadWorkloadClass
Definition: winternl.h:2331
@ ThreadHideFromDebugger
Definition: winternl.h:2298

◆ _TIMER_INFORMATION_CLASS

Enumerator
TimerBasicInformation 
TimerBasicInformation 

Definition at line 2480 of file winternl.h.

2481{
@ TimerBasicInformation
Definition: winternl.h:2482
enum _TIMER_INFORMATION_CLASS TIMER_INFORMATION_CLASS

◆ _WINSTATIONINFOCLASS

Enumerator
WinStationInformation 
WinStationInformation 

Definition at line 2380 of file winternl.h.

2380 {
@ WinStationInformation
Definition: winternl.h:575
enum _WINSTATIONINFOCLASS WINSTATIONINFOCLASS

◆ CROSS_PROCESS_NOTIFICATION

Enumerator
CrossProcessPreVirtualAlloc 
CrossProcessPostVirtualAlloc 
CrossProcessPreVirtualFree 
CrossProcessPostVirtualFree 
CrossProcessPreVirtualProtect 
CrossProcessPostVirtualProtect 
CrossProcessFlushCache 
CrossProcessFlushCacheHeavy 
CrossProcessMemoryWrite 

Definition at line 417 of file winternl.h.

418{
CROSS_PROCESS_NOTIFICATION
Definition: winternl.h:418
@ CrossProcessPreVirtualProtect
Definition: winternl.h:423
@ CrossProcessFlushCacheHeavy
Definition: winternl.h:426
@ CrossProcessPreVirtualFree
Definition: winternl.h:421
@ CrossProcessPostVirtualFree
Definition: winternl.h:422
@ CrossProcessPreVirtualAlloc
Definition: winternl.h:419
@ CrossProcessFlushCache
Definition: winternl.h:425
@ CrossProcessPostVirtualAlloc
Definition: winternl.h:420
@ CrossProcessPostVirtualProtect
Definition: winternl.h:424
@ CrossProcessMemoryWrite
Definition: winternl.h:427

◆ DOS_PATHNAME_TYPE

Enumerator
INVALID_PATH 
UNC_PATH 
ABSOLUTE_DRIVE_PATH 
RELATIVE_DRIVE_PATH 
ABSOLUTE_PATH 
RELATIVE_PATH 
DEVICE_PATH 
UNC_DOT_PATH 

Definition at line 2511 of file winternl.h.

2512{
2513 INVALID_PATH = 0,
2514 UNC_PATH, /* "//foo" */
2515 ABSOLUTE_DRIVE_PATH, /* "c:/foo" */
2516 RELATIVE_DRIVE_PATH, /* "c:foo" */
2517 ABSOLUTE_PATH, /* "/foo" */
2518 RELATIVE_PATH, /* "foo" */
2519 DEVICE_PATH, /* "//./foo" */
2520 UNC_DOT_PATH /* "//." */
DOS_PATHNAME_TYPE
Definition: winternl.h:2512
@ UNC_PATH
Definition: winternl.h:2514
@ RELATIVE_DRIVE_PATH
Definition: winternl.h:2516
@ ABSOLUTE_PATH
Definition: winternl.h:2517
@ INVALID_PATH
Definition: winternl.h:2513
@ ABSOLUTE_DRIVE_PATH
Definition: winternl.h:2515
@ DEVICE_PATH
Definition: winternl.h:2519
@ RELATIVE_PATH
Definition: winternl.h:2518
@ UNC_DOT_PATH
Definition: winternl.h:2520

◆ VIRTUAL_MEMORY_INFORMATION_CLASS

Enumerator
VmPrefetchInformation 
VmPagePriorityInformation 
VmCfgCallTargetInformation 
VmPageDirtyStateInformation 
VmImageHotPatchInformation 
VmPhysicalContiguityInformation 
VmVirtualMachinePrepopulateInformation 
VmRemoveFromWorkingSetInformation 

Definition at line 2491 of file winternl.h.

2492{
VIRTUAL_MEMORY_INFORMATION_CLASS
Definition: winternl.h:2492
@ VmVirtualMachinePrepopulateInformation
Definition: winternl.h:2499
@ VmCfgCallTargetInformation
Definition: winternl.h:2495
@ VmPhysicalContiguityInformation
Definition: winternl.h:2498
@ VmPagePriorityInformation
Definition: winternl.h:2494
@ VmPageDirtyStateInformation
Definition: winternl.h:2496
@ VmPrefetchInformation
Definition: winternl.h:2493
@ VmRemoveFromWorkingSetInformation
Definition: winternl.h:2500
@ VmImageHotPatchInformation
Definition: winternl.h:2497
enum VIRTUAL_MEMORY_INFORMATION_CLASS * PVIRTUAL_MEMORY_INFORMATION_CLASS

Function Documentation

◆ ApiSetQueryApiSetPresence()

NTSYSAPI NTSTATUS WINAPI ApiSetQueryApiSetPresence ( const UNICODE_STRING ,
BOOLEAN  
)

◆ ApiSetQueryApiSetPresenceEx()

NTSYSAPI NTSTATUS WINAPI ApiSetQueryApiSetPresenceEx ( const UNICODE_STRING ,
BOOLEAN ,
BOOLEAN  
)

Referenced by IsApiSetImplemented().

◆ C_ASSERT() [1/7]

C_ASSERT ( sizeof(PEB = =sizeof(PEB32))

◆ C_ASSERT() [2/7]

C_ASSERT ( sizeof(PEB32 = =0x480)

◆ C_ASSERT() [3/7]

C_ASSERT ( sizeof(PEB64 = =0x7c8)

◆ C_ASSERT() [4/7]

C_ASSERT ( sizeof(TEB = =sizeof(TEB32))

◆ C_ASSERT() [5/7]

C_ASSERT ( sizeof(TEB32 = =0x1000)

◆ C_ASSERT() [6/7]

C_ASSERT ( sizeof(TEB64 = =0x1838)

◆ C_ASSERT() [7/7]

C_ASSERT ( sizeof(WOW64INFO = =40)

◆ DbgBreakPoint()

NTSYSAPI void WINAPI DbgBreakPoint ( void  )

Referenced by __cxa_pure_virtual(), __declspec(), ARPTransmit(), AVrfpGetStackTraceAddress(), BaseInitializeContext(), CsrApiRequestThread(), CsrCallServerFromServer(), CsrCaptureArguments(), CsrReleaseCapturedArguments(), CsrShutdownProcesses(), CsrValidateMessageBuffer(), DbgBreakOnEvent(), DbgUiRemoteBreakin(), DeviceInterfaceChangeCallback(), Dispatch_fnDeviceIoControl(), DriverEntry(), EHCI_InterruptTransfer(), EHCI_QueryEndpointRequirements(), EHCI_SetAsyncEndpointState(), EHCI_SetEndpointStatus(), EHCI_SubmitTransfer(), EHCI_SuspendController(), ExAllocatePoolWithTag(), ExpInsertPoolTracker(), ExpRemovePoolTracker(), ExpWaitForResource(), FatalExit(), FatCompleteRequest_Real(), FatExceptionFilter(), FatMultiAsyncCompletionRoutine(), FatMultiSyncCompletionRoutine(), FatSingleAsyncCompletionRoutine(), FatSingleSyncCompletionRoutine(), FxLibraryCommonRegisterClient(), HalpAddDevice(), HalpGetParameters(), HalpOpcodeInvalid(), HalReturnToFirmware(), IKsPin_PinStatePropertyHandler(), KeFlushIoBuffers(), KeStartThread(), KeUpdateRunTime(), KiCheckTimerTable(), KiIpiServiceRoutine(), KsPinAttemptProcessing(), KsStreamPointerAdvance(), KsStreamPointerAdvanceOffsets(), KsStreamPointerAdvanceOffsetsAndUnlock(), KsStreamPointerDelete(), KsStreamPointerGetNextClone(), LdrpInitializeProcess(), LdrpRunInitializeRoutines(), Mx::MxDbgBreakPoint(), NdisInitializeWrapper(), NtProcessStartup(), ObInsertObject(), OHCI_InsertEndpointInSchedule(), OHCI_PollAsyncEndpoint(), OHCI_QueryEndpointRequirements(), OHCI_RemoveEndpointFromSchedule(), PciBeginStateTransition(), PciDispatchIrp(), PcRegisterSubdevice(), PinPropertyHandler(), PspCatchCriticalBreak(), Reboot(), RtlApplicationVerifierStop(), RtlAssert(), RtlpDphAllocateVm(), RtlpDphEnterCriticalSection(), RtlpDphFreeVm(), RtlpDphPointerFromHandle(), RtlpDphProtectVm(), RtlpDphRemoveFromAvailableList(), RtlpPageHeapAllocate(), RtlpPageHeapFree(), RxAssert(), SetLastError(), SmpUnhandledExceptionFilter(), SpiParseDeviceInfo(), StreamClassDebugAssert(), switch_fiber(), UhciInterruptService(), UhciQueryEndpointRequirements(), UhciRHPortResetComplete(), UhciStopController(), USBH_ChangeIndicationWorker(), USBH_CompletePortWakeIrpsWorker(), USBH_DeviceControl(), USBH_FdoIdleNotificationCallback(), USBH_FdoPower(), USBH_FdoQueryBusRelations(), USBH_FdoStartDevice(), USBH_FdoStopDevice(), USBH_FdoWWIrpIoCompletion(), USBH_FlushPortPwrList(), USBH_HubCompleteQueuedPortIdleIrps(), USBH_HubCompleteQueuedPortWakeIrps(), USBH_HubDispatch(), USBH_HubQueuePortIdleIrps(), USBH_HubQueuePortWakeIrps(), USBH_PdoDispatch(), USBH_PdoInternalControl(), USBH_PdoPnP(), USBH_PdoStopDevice(), USBH_PdoUrbFilter(), USBH_PowerIrpCompletion(), USBH_ProcessHubStateChange(), USBH_ProcessPortStateChange(), USBH_SelectConfigOrInterfaceComplete(), USBPORT_AllocateBandwidthUSB2(), USBPORT_Dispatch(), USBPORT_DmaEndpointWorker(), USBPORT_PdoDevicePowerState(), USBPORT_RestoreDevice(), USBPORT_RootHubClassCommand(), USBPORT_RootHubCreateDevice(), USBPORT_SplitBulkInterruptTransfer(), _FX_DRIVER_GLOBALS::WaitForSignal(), WdfVerifierDbgBreakPoint(), WdmAudControlOpenMixer(), and wmain().

◆ DbgPrint()

NTSYSAPI NTSTATUS WINAPIV DbgPrint ( LPCSTR  fmt,
  ... 
)

◆ DbgPrintEx()

NTSYSAPI NTSTATUS WINAPIV DbgPrintEx ( ULONG  iComponentId,
ULONG  Level,
LPCSTR  fmt,
  ... 
)

◆ DbgUiConnectToDbg()

NTSYSAPI NTSTATUS WINAPI DbgUiConnectToDbg ( void  )

Definition at line 25 of file dbgui.c.

26{
28
29 /* Don't connect twice */
30 if (NtCurrentTeb()->DbgSsReserved[1]) return STATUS_SUCCESS;
31
32 /* Setup the Attributes */
34
35 /* Create the object */
36 return ZwCreateDebugObject(&NtCurrentTeb()->DbgSsReserved[1],
40}
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
Definition: conport.c:36
NTSYSAPI NTSTATUS NTAPI ZwCreateDebugObject(_Out_ PHANDLE DebugHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ ULONG Flags)
#define DEBUG_OBJECT_ALL_ACCESS
Definition: dbgktypes.h:34
#define DBGK_KILL_PROCESS_ON_EXIT
Definition: dbgktypes.h:49
#define NtCurrentTeb
#define InitializeObjectAttributes(p, n, a, r, s)
Definition: reg.c:106
#define STATUS_SUCCESS
Definition: shellext.h:65

Referenced by CreateProcessInternalW(), DebugActiveProcess(), and Main().

◆ DbgUiContinue()

NTSYSAPI NTSTATUS WINAPI DbgUiContinue ( CLIENT_ID ,
NTSTATUS   
)

◆ DbgUiConvertStateChangeStructure()

NTSYSAPI NTSTATUS WINAPI DbgUiConvertStateChangeStructure ( DBGUI_WAIT_STATE_CHANGE ,
struct _DEBUG_EVENT  
)

◆ DbgUiDebugActiveProcess()

NTSYSAPI NTSTATUS WINAPI DbgUiDebugActiveProcess ( HANDLE  )

◆ DbgUiGetThreadDebugObject()

NTSYSAPI HANDLE WINAPI DbgUiGetThreadDebugObject ( void  )

Definition at line 333 of file dbgui.c.

334{
335 /* Just return the handle from the TEB */
336 return NtCurrentTeb()->DbgSsReserved[1];
337}

Referenced by CreateProcessInternalW(), and DebugSetProcessKillOnExit().

◆ DbgUiIssueRemoteBreakin()

NTSYSAPI NTSTATUS WINAPI DbgUiIssueRemoteBreakin ( HANDLE  )

◆ DbgUiRemoteBreakin()

NTSYSAPI void WINAPI DbgUiRemoteBreakin ( void )

◆ DbgUiSetThreadDebugObject()

NTSYSAPI void WINAPI DbgUiSetThreadDebugObject ( HANDLE  DebugObject)

Definition at line 344 of file dbgui.c.

345{
346 /* Just set the handle in the TEB */
347 NtCurrentTeb()->DbgSsReserved[1] = DebugObject;
348}

◆ DbgUiStopDebugging()

NTSYSAPI NTSTATUS WINAPI DbgUiStopDebugging ( HANDLE  )

◆ DbgUiWaitStateChange()

NTSYSAPI NTSTATUS WINAPI DbgUiWaitStateChange ( DBGUI_WAIT_STATE_CHANGE ,
LARGE_INTEGER  
)

◆ DbgUserBreakPoint()

NTSYSAPI void WINAPI DbgUserBreakPoint ( void  )

◆ LdrAccessResource()

NTSYSAPI NTSTATUS WINAPI LdrAccessResource ( HMODULE  ,
const IMAGE_RESOURCE_DATA_ENTRY ,
void **  ,
PULONG   
)

◆ LdrAddDllDirectory()

NTSYSAPI NTSTATUS WINAPI LdrAddDllDirectory ( const UNICODE_STRING ,
void **   
)

Referenced by AddDllDirectory().

◆ LdrAddRefDll()

NTSYSAPI NTSTATUS WINAPI LdrAddRefDll ( ULONG  ,
HMODULE   
)

◆ LdrDisableThreadCalloutsForDll()

NTSYSAPI NTSTATUS WINAPI LdrDisableThreadCalloutsForDll ( HMODULE  )

◆ LdrFindEntryForAddress()

NTSYSAPI NTSTATUS WINAPI LdrFindEntryForAddress ( const void ,
PLDR_DATA_TABLE_ENTRY  
)

◆ LdrFindResource_U()

◆ LdrFindResourceDirectory_U()

NTSYSAPI NTSTATUS WINAPI LdrFindResourceDirectory_U ( HMODULE  ,
const LDR_RESOURCE_INFO ,
ULONG  ,
const IMAGE_RESOURCE_DIRECTORY **   
)

◆ LdrGetDllDirectory()

NTSYSAPI NTSTATUS WINAPI LdrGetDllDirectory ( UNICODE_STRING )

◆ LdrGetDllFullName()

NTSYSAPI NTSTATUS WINAPI LdrGetDllFullName ( HMODULE  ,
UNICODE_STRING  
)

Referenced by GetModuleFileNameW().

◆ LdrGetDllHandle()

NTSYSAPI NTSTATUS WINAPI LdrGetDllHandle ( LPCWSTR  ,
ULONG  ,
const UNICODE_STRING ,
HMODULE  
)

◆ LdrGetDllHandleEx()

NTSYSAPI NTSTATUS WINAPI LdrGetDllHandleEx ( ULONG  ,
LPCWSTR  ,
ULONG ,
const UNICODE_STRING ,
HMODULE  
)

◆ LdrGetDllPath()

NTSYSAPI NTSTATUS WINAPI LdrGetDllPath ( PCWSTR  ,
ULONG  ,
PWSTR ,
PWSTR  
)

Referenced by load_library().

◆ LdrGetProcedureAddress()

NTSYSAPI NTSTATUS WINAPI LdrGetProcedureAddress ( HMODULE  ,
const ANSI_STRING ,
ULONG  ,
void **   
)

◆ LdrLoadDll()

NTSYSAPI NTSTATUS WINAPI LdrLoadDll ( LPCWSTR  ,
DWORD  ,
const UNICODE_STRING ,
HMODULE  
)

◆ LdrLockLoaderLock()

NTSYSAPI NTSTATUS WINAPI LdrLockLoaderLock ( ULONG  ,
ULONG ,
ULONG_PTR  
)

◆ LdrProcessRelocationBlock()

IMAGE_BASE_RELOCATION *WINAPI LdrProcessRelocationBlock ( void ,
UINT  ,
USHORT ,
INT_PTR   
)

◆ LdrQueryImageFileExecutionOptions()

NTSYSAPI NTSTATUS WINAPI LdrQueryImageFileExecutionOptions ( const UNICODE_STRING ,
LPCWSTR  ,
ULONG  ,
void ,
ULONG  ,
ULONG  
)

◆ LdrQueryProcessModuleInformation()

NTSYSAPI NTSTATUS WINAPI LdrQueryProcessModuleInformation ( RTL_PROCESS_MODULES ,
ULONG  ,
ULONG  
)

◆ LdrRegisterDllNotification()

NTSYSAPI NTSTATUS WINAPI LdrRegisterDllNotification ( ULONG  ,
PLDR_DLL_NOTIFICATION_FUNCTION  ,
void ,
void **   
)

◆ LdrRemoveDllDirectory()

NTSYSAPI NTSTATUS WINAPI LdrRemoveDllDirectory ( void )

Referenced by RemoveDllDirectory().

◆ LdrSetDefaultDllDirectories()

NTSYSAPI NTSTATUS WINAPI LdrSetDefaultDllDirectories ( ULONG  )

◆ LdrSetDllDirectory()

NTSYSAPI NTSTATUS WINAPI LdrSetDllDirectory ( const UNICODE_STRING )

◆ LdrShutdownProcess()

NTSYSAPI void WINAPI LdrShutdownProcess ( void  )

Definition at line 950 of file ldrinit.c.

951{
953 PLDR_DATA_TABLE_ENTRY LdrEntry;
954 PLIST_ENTRY NextEntry, ListHead;
955 RTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED ActCtx;
956 PVOID EntryPoint;
957
958 DPRINT("LdrShutdownProcess() called for %wZ\n", &LdrpImageEntry->BaseDllName);
960
961 /* Tell the Shim Engine */
962 if (g_ShimsEnabled)
963 {
967 }
968
969 /* Tell the world */
970 if (ShowSnaps)
971 {
972 DPRINT1("\n");
973 }
974
975 /* Set the shutdown variables */
976 LdrpShutdownThreadId = NtCurrentTeb()->RealClientId.UniqueThread;
978
979 /* Enter the Loader Lock */
981
982 /* Cleanup trace logging data (Etw) */
983 if (SharedUserData->TraceLogging)
984 {
985 /* FIXME */
986 DPRINT1("We don't support Etw yet.\n");
987 }
988
989 /* Start at the end */
991 NextEntry = ListHead->Blink;
992 while (NextEntry != ListHead)
993 {
994 /* Get the current entry */
995 LdrEntry = CONTAINING_RECORD(NextEntry, LDR_DATA_TABLE_ENTRY, InInitializationOrderLinks);
996 NextEntry = NextEntry->Blink;
997
998 /* Make sure it's not ourselves */
999 if (Peb->ImageBaseAddress != LdrEntry->DllBase)
1000 {
1001 /* Get the entrypoint */
1002 EntryPoint = LdrEntry->EntryPoint;
1003
1004 /* Check if we are ready to call it */
1005 if (EntryPoint &&
1006 (LdrEntry->Flags & LDRP_PROCESS_ATTACH_CALLED) &&
1007 LdrEntry->Flags)
1008 {
1009 /* Set up the Act Ctx */
1010 ActCtx.Size = sizeof(ActCtx);
1011 ActCtx.Format = 1;
1013
1014 /* Activate the ActCtx */
1015 RtlActivateActivationContextUnsafeFast(&ActCtx,
1016 LdrEntry->EntryPointActivationContext);
1017
1018 _SEH2_TRY
1019 {
1020 /* Check if it has TLS */
1021 if (LdrEntry->TlsIndex)
1022 {
1023 /* Call TLS */
1025 }
1026
1027 /* Call the Entrypoint */
1028 DPRINT("%wZ - Calling entry point at %p for thread detaching\n",
1029 &LdrEntry->BaseDllName, LdrEntry->EntryPoint);
1030 LdrpCallInitRoutine(EntryPoint,
1031 LdrEntry->DllBase,
1033 (PVOID)1);
1034 }
1036 {
1037 DPRINT1("WARNING: Exception 0x%x during LdrpCallInitRoutine(DLL_PROCESS_DETACH) for %wZ\n",
1038 _SEH2_GetExceptionCode(), &LdrEntry->BaseDllName);
1039 }
1040 _SEH2_END;
1041
1042 /* Deactivate the ActCtx */
1043 RtlDeactivateActivationContextUnsafeFast(&ActCtx);
1044 }
1045 }
1046 }
1047
1048 /* Check for TLS */
1049 if (LdrpImageHasTls)
1050 {
1051 /* Set up the Act Ctx */
1052 ActCtx.Size = sizeof(ActCtx);
1053 ActCtx.Format = 1;
1055
1056 /* Activate the ActCtx */
1057 RtlActivateActivationContextUnsafeFast(&ActCtx,
1059
1060 _SEH2_TRY
1061 {
1062 /* Do TLS callbacks */
1064 }
1066 {
1067 /* Do nothing */
1068 }
1069 _SEH2_END;
1070
1071 /* Deactivate the ActCtx */
1072 RtlDeactivateActivationContextUnsafeFast(&ActCtx);
1073 }
1074
1075 /* FIXME: Do Heap detection and Etw final shutdown */
1076
1077 /* Release the lock */
1079 DPRINT("LdrpShutdownProcess() done\n");
1080
1081 return STATUS_SUCCESS;
1082}
#define NtCurrentPeb()
Definition: FLS.c:22
#define VOID
Definition: acefi.h:82
#define DPRINT1
Definition: precomp.h:8
#define TRUE
Definition: types.h:120
#define DLL_PROCESS_DETACH
Definition: compat.h:130
PPEB Peb
Definition: dllmain.c:27
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:90
PLDR_DATA_TABLE_ENTRY LdrpImageEntry
Definition: ldrinit.c:39
BOOLEAN LdrpShutdownInProgress
Definition: ldrinit.c:34
HANDLE LdrpShutdownThreadId
Definition: ldrinit.c:35
BOOLEAN LdrpImageHasTls
Definition: ldrinit.c:52
BOOLEAN ShowSnaps
Definition: ldrinit.c:79
RTL_CRITICAL_SECTION LdrpLoaderLock
Definition: ldrinit.c:68
_In_ PCWSTR _Out_ PVOID * ActCtx
Definition: ldrtypes.h:264
#define LDRP_PROCESS_ATTACH_CALLED
Definition: ldrtypes.h:53
NTSYSAPI NTSTATUS NTAPI RtlEnterCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
NTSYSAPI NTSTATUS NTAPI RtlLeaveCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
VOID NTAPI LdrpCallTlsInitializers(IN PLDR_DATA_TABLE_ENTRY LdrEntry, IN ULONG Reason)
Definition: ldrutils.c:447
PVOID g_pfnSE_ProcessDying
Definition: ldrutils.c:27
BOOLEAN NTAPI LdrpCallInitRoutine(IN PDLL_INIT_ROUTINE EntryPoint, IN PVOID BaseAddress, IN ULONG Reason, IN PVOID Context)
Definition: ldrutils.c:100
BOOLEAN g_ShimsEnabled
Definition: ldrutils.c:21
#define _SEH2_GetExceptionCode()
Definition: pseh2_64.h:181
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:82
#define _SEH2_END
Definition: pseh2_64.h:171
#define _SEH2_TRY
Definition: pseh2_64.h:71
#define SharedUserData
PVOID NTAPI RtlDecodeSystemPointer(IN PVOID Pointer)
Definition: process.c:439
VOID NTAPI SE_ProcessDying(VOID)
Definition: shimeng.c:1441
#define DPRINT
Definition: sndvol32.h:73
Definition: btrfs_drv.h:1876
PACTIVATION_CONTEXT EntryPointActivationContext
Definition: ldrtypes.h:167
PVOID EntryPoint
Definition: ntddk_ex.h:203
PVOID DllBase
Definition: btrfs_drv.h:1880
USHORT TlsIndex
Definition: ntddk_ex.h:209
ULONG Flags
Definition: ntddk_ex.h:207
UNICODE_STRING BaseDllName
Definition: ldrtypes.h:149
Definition: typedefs.h:120
struct _LIST_ENTRY * Blink
Definition: typedefs.h:122
LIST_ENTRY InInitializationOrderModuleList
Definition: ldrtypes.h:126
PPEB_LDR_DATA Ldr
Definition: btrfs_drv.h:1912
PVOID ImageBaseAddress
Definition: ntddk_ex.h:245
#define NTAPI
Definition: typedefs.h:36
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:262
#define CONTAINING_RECORD(address, type, field)
Definition: typedefs.h:260

Referenced by ExitProcess().

◆ LdrShutdownThread()

NTSYSAPI void WINAPI LdrShutdownThread ( void  )

Definition at line 1089 of file ldrinit.c.

1090{
1091 PPEB Peb = NtCurrentPeb();
1092 PTEB Teb = NtCurrentTeb();
1093 PLDR_DATA_TABLE_ENTRY LdrEntry;
1094 PLIST_ENTRY NextEntry, ListHead;
1095 RTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED ActCtx;
1096 PVOID EntryPoint;
1097
1098 DPRINT("LdrShutdownThread() called for %wZ\n",
1100
1101 /* Cleanup trace logging data (Etw) */
1102 if (SharedUserData->TraceLogging)
1103 {
1104 /* FIXME */
1105 DPRINT1("We don't support Etw yet.\n");
1106 }
1107
1108 /* Get the Ldr Lock */
1110
1111 /* Start at the end */
1113 NextEntry = ListHead->Blink;
1114 while (NextEntry != ListHead)
1115 {
1116 /* Get the current entry */
1117 LdrEntry = CONTAINING_RECORD(NextEntry, LDR_DATA_TABLE_ENTRY, InInitializationOrderLinks);
1118 NextEntry = NextEntry->Blink;
1119
1120 /* Make sure it's not ourselves */
1121 if (Peb->ImageBaseAddress != LdrEntry->DllBase)
1122 {
1123 /* Check if we should call */
1124 if (!(LdrEntry->Flags & LDRP_DONT_CALL_FOR_THREADS) &&
1125 (LdrEntry->Flags & LDRP_PROCESS_ATTACH_CALLED) &&
1126 (LdrEntry->Flags & LDRP_IMAGE_DLL))
1127 {
1128 /* Get the entrypoint */
1129 EntryPoint = LdrEntry->EntryPoint;
1130
1131 /* Check if we are ready to call it */
1132 if (EntryPoint)
1133 {
1134 /* Set up the Act Ctx */
1135 ActCtx.Size = sizeof(ActCtx);
1136 ActCtx.Format = 1;
1138
1139 /* Activate the ActCtx */
1140 RtlActivateActivationContextUnsafeFast(&ActCtx,
1141 LdrEntry->EntryPointActivationContext);
1142
1143 _SEH2_TRY
1144 {
1145 /* Check if it has TLS */
1146 if (LdrEntry->TlsIndex)
1147 {
1148 /* Make sure we're not shutting down */
1150 {
1151 /* Call TLS */
1153 }
1154 }
1155
1156 /* Make sure we're not shutting down */
1158 {
1159 /* Call the Entrypoint */
1160 DPRINT("%wZ - Calling entry point at %p for thread detaching\n",
1161 &LdrEntry->BaseDllName, LdrEntry->EntryPoint);
1162 LdrpCallInitRoutine(EntryPoint,
1163 LdrEntry->DllBase,
1165 NULL);
1166 }
1167 }
1169 {
1170 DPRINT1("WARNING: Exception 0x%x during LdrpCallInitRoutine(DLL_THREAD_DETACH) for %wZ\n",
1171 _SEH2_GetExceptionCode(), &LdrEntry->BaseDllName);
1172 }
1173 _SEH2_END;
1174
1175 /* Deactivate the ActCtx */
1176 RtlDeactivateActivationContextUnsafeFast(&ActCtx);
1177 }
1178 }
1179 }
1180 }
1181
1182 /* Check for TLS */
1183 if (LdrpImageHasTls)
1184 {
1185 /* Set up the Act Ctx */
1186 ActCtx.Size = sizeof(ActCtx);
1187 ActCtx.Format = 1;
1189
1190 /* Activate the ActCtx */
1191 RtlActivateActivationContextUnsafeFast(&ActCtx,
1193
1194 _SEH2_TRY
1195 {
1196 /* Do TLS callbacks */
1198 }
1200 {
1201 /* Do nothing */
1202 }
1203 _SEH2_END;
1204
1205 /* Deactivate the ActCtx */
1206 RtlDeactivateActivationContextUnsafeFast(&ActCtx);
1207 }
1208
1209 /* Free TLS */
1210 LdrpFreeTls();
1212
1213 /* Check for expansion slots */
1214 if (Teb->TlsExpansionSlots)
1215 {
1216 /* Free expansion slots */
1217 RtlFreeHeap(RtlGetProcessHeap(), 0, Teb->TlsExpansionSlots);
1218 }
1219
1220 /* Check for FLS Data */
1221 if (Teb->FlsData)
1222 {
1223 /* Mimic BaseRundownFls */
1224 ULONG n, FlsHighIndex;
1225 PRTL_FLS_DATA pFlsData;
1226 PFLS_CALLBACK_FUNCTION lpCallback;
1227
1228 pFlsData = Teb->FlsData;
1229
1231 FlsHighIndex = NtCurrentPeb()->FlsHighIndex;
1232 RemoveEntryList(&pFlsData->ListEntry);
1234
1235 for (n = 1; n <= FlsHighIndex; ++n)
1236 {
1237 lpCallback = NtCurrentPeb()->FlsCallback[n];
1238 if (lpCallback && pFlsData->Data[n])
1239 {
1240 lpCallback(pFlsData->Data[n]);
1241 }
1242 }
1243
1244 RtlFreeHeap(RtlGetProcessHeap(), 0, pFlsData);
1245 Teb->FlsData = NULL;
1246 }
1247
1248 /* Check for Fiber data */
1249 if (Teb->HasFiberData)
1250 {
1251 /* Free Fiber data*/
1252 RtlFreeHeap(RtlGetProcessHeap(), 0, Teb->NtTib.FiberData);
1253 Teb->NtTib.FiberData = NULL;
1254 }
1255
1256 /* Free the activation context stack */
1258 DPRINT("LdrShutdownThread() done\n");
1259
1260 return STATUS_SUCCESS;
1261}
BOOLEAN NTAPI RtlFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID HeapBase)
Definition: heap.c:634
#define DLL_THREAD_DETACH
Definition: compat.h:133
#define RemoveEntryList(Entry)
Definition: env_spec_w32.h:986
NTSYSAPI void WINAPI RtlReleasePebLock(void)
Definition: libsupp.c:84
NTSYSAPI void WINAPI RtlAcquirePebLock(void)
Definition: libsupp.c:74
NTSYSAPI void WINAPI RtlFreeThreadActivationContextStack(void)
Definition: actctx.c:5515
VOID NTAPI LdrpFreeTls(VOID)
Definition: ldrinit.c:1391
#define LDRP_DONT_CALL_FOR_THREADS
Definition: ldrtypes.h:52
#define LDRP_IMAGE_DLL
Definition: ldrtypes.h:39
PVOID FiberData
Definition: compat.h:716
LIST_ENTRY ListEntry
Definition: rtltypes.h:1217
PVOID Data[RTL_FLS_MAXIMUM_AVAILABLE]
Definition: rtltypes.h:1218
Definition: compat.h:836
PVOID * TlsExpansionSlots
Definition: compat.h:894
NT_TIB NtTib
Definition: ntddk_ex.h:332
uint32_t ULONG
Definition: typedefs.h:59
VOID(WINAPI * PFLS_CALLBACK_FUNCTION)(PVOID)
Definition: winbase.h:1202

Referenced by ExitThread(), and RtlExitUserThread().

◆ LdrUnloadDll()

NTSYSAPI NTSTATUS WINAPI LdrUnloadDll ( HMODULE  )

◆ LdrUnlockLoaderLock()

NTSYSAPI NTSTATUS WINAPI LdrUnlockLoaderLock ( ULONG  ,
ULONG_PTR   
)

◆ LdrUnregisterDllNotification()

NTSYSAPI NTSTATUS WINAPI LdrUnregisterDllNotification ( void )

◆ NtAcceptConnectPort()

NTSYSAPI NTSTATUS WINAPI NtAcceptConnectPort ( PHANDLE  ,
ULONG  ,
PLPC_MESSAGE  ,
BOOLEAN  ,
PLPC_SECTION_WRITE  ,
PLPC_SECTION_READ   
)

◆ NtAccessCheck()

◆ NtAccessCheckAndAuditAlarm()

◆ NtAddAtom()

NTSYSAPI NTSTATUS WINAPI NtAddAtom ( const WCHAR ,
ULONG  ,
RTL_ATOM  
)

◆ NtAdjustGroupsToken()

NTSYSAPI NTSTATUS WINAPI NtAdjustGroupsToken ( HANDLE  ,
BOOLEAN  ,
PTOKEN_GROUPS  ,
ULONG  ,
PTOKEN_GROUPS  ,
PULONG   
)

◆ NtAdjustPrivilegesToken()

NTSYSAPI NTSTATUS WINAPI NtAdjustPrivilegesToken ( HANDLE  ,
BOOLEAN  ,
PTOKEN_PRIVILEGES  ,
DWORD  ,
PTOKEN_PRIVILEGES  ,
PDWORD   
)

◆ NtAlertResumeThread()

NTSYSAPI NTSTATUS WINAPI NtAlertResumeThread ( HANDLE  ,
PULONG   
)

◆ NtAlertThread()

NTSYSAPI NTSTATUS WINAPI NtAlertThread ( HANDLE  ThreadHandle)

◆ NtAlertThreadByThreadId()

NTSYSAPI NTSTATUS WINAPI NtAlertThreadByThreadId ( HANDLE  )

◆ NtAllocateLocallyUniqueId()

NTSYSAPI NTSTATUS WINAPI NtAllocateLocallyUniqueId ( PLUID  lpLuid)

◆ NtAllocateReserveObject()

NTSYSAPI NTSTATUS WINAPI NtAllocateReserveObject ( HANDLE handle,
const OBJECT_ATTRIBUTES attr,
MEMORY_RESERVE_OBJECT_TYPE  type 
)

◆ NtAllocateUuids()

NTSYSAPI NTSTATUS WINAPI NtAllocateUuids ( PULARGE_INTEGER  ,
PULONG  ,
PULONG  ,
PUCHAR   
)

◆ NtAllocateVirtualMemory()

NTSYSAPI NTSTATUS WINAPI NtAllocateVirtualMemory ( HANDLE  ,
PVOID ,
ULONG_PTR  ,
SIZE_T ,
ULONG  ,
ULONG   
)

◆ NtAllocateVirtualMemoryEx()

NTSYSAPI NTSTATUS WINAPI NtAllocateVirtualMemoryEx ( HANDLE  ,
PVOID ,
SIZE_T ,
ULONG  ,
ULONG  ,
MEM_EXTENDED_PARAMETER ,
ULONG   
)

◆ NtAreMappedFilesTheSame()

NTSYSAPI NTSTATUS WINAPI NtAreMappedFilesTheSame ( PVOID  ,
PVOID   
)

◆ NtAssignProcessToJobObject()

NTSYSAPI NTSTATUS WINAPI NtAssignProcessToJobObject ( HANDLE  JobHandle,
HANDLE  ProcessHandle 
)

Definition at line 157 of file job.c.

160{
164
165 PAGED_CODE();
166
168
169 /* make sure we're having a handle with enough rights, especially the to
170 terminate the process. otherwise one could abuse the job objects to
171 terminate processes without having rights granted to do so! The reason
172 I open the process handle before the job handle is that a simple test showed
173 that it first complains about a invalid process handle! The other way around
174 would be simpler though... */
180 (PVOID*)&Process,
181 NULL);
182 if(NT_SUCCESS(Status))
183 {
184 if(Process->Job == NULL)
185 {
186 PEJOB Job;
187
189 JobHandle,
191 PsJobType,
193 (PVOID*)&Job,
194 NULL);
195 if(NT_SUCCESS(Status))
196 {
197 /* lock the process so we can safely assign the process. Note that in the
198 meanwhile another thread could have assigned this process to a job! */
199
200 if(ExAcquireRundownProtection(&Process->RundownProtect))
201 {
202 if(Process->Job == NULL && PsGetProcessSessionId(Process) == Job->SessionId)
203 {
204 /* Just store the pointer to the job object in the process, we'll
205 assign it later. The reason we can't do this here is that locking
206 the job object might require it to wait, which is a bad thing
207 while holding the process lock! */
208 Process->Job = Job;
210 }
211 else
212 {
213 /* process is already assigned to a job or session id differs! */
215 }
216 ExReleaseRundownProtection(&Process->RundownProtect);
217
218 if(NT_SUCCESS(Status))
219 {
220 /* let's actually assign the process to the job as we're not holding
221 the process lock anymore! */
223 }
224 }
225
227 }
228 }
229 else
230 {
231 /* process is already assigned to a job or session id differs! */
233 }
234
236 }
237
238 return Status;
239}
#define PAGED_CODE()
_In_ PVOID _In_ ULONG _Out_ PVOID _In_ ULONG _Inout_ PULONG _In_ KPROCESSOR_MODE PreviousMode
LONG NTSTATUS
Definition: precomp.h:26
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:33
#define ExReleaseRundownProtection
Definition: ex.h:139
#define ExGetPreviousMode
Definition: ex.h:143
#define ExAcquireRundownProtection
Definition: ex.h:138
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
Definition: fsrtlfuncs.h:223
Status
Definition: gdiplustypes.h:25
#define PROCESS_TERMINATE
Definition: pstypes.h:158
#define JOB_OBJECT_ASSIGN_PROCESS
Definition: pstypes.h:201
_In_ HANDLE ProcessHandle
Definition: mmfuncs.h:403
NTSTATUS NTAPI PspAssignProcessToJob(PEPROCESS Process, PEJOB Job)
Definition: job.c:119
POBJECT_TYPE PsJobType
Definition: job.c:20
POBJECT_TYPE PsProcessType
Definition: process.c:20
ULONG NTAPI PsGetProcessSessionId(IN PEPROCESS Process)
Definition: process.c:1163
NTSTATUS NTAPI ObReferenceObjectByHandle(IN HANDLE Handle, IN ACCESS_MASK DesiredAccess, IN POBJECT_TYPE ObjectType, IN KPROCESSOR_MODE AccessMode, OUT PVOID *Object, OUT POBJECT_HANDLE_INFORMATION HandleInformation OPTIONAL)
Definition: obref.c:494
ULONG SessionId
Definition: pstypes.h:1595
#define STATUS_ACCESS_DENIED
Definition: udferr_usr.h:145
CCHAR KPROCESSOR_MODE
Definition: ketypes.h:7
#define ObDereferenceObject
Definition: obfuncs.h:203
#define ObReferenceObject
Definition: obfuncs.h:204

Referenced by AssignProcessToJobObject(), and CreateProcessInternalW().

◆ NtCallbackReturn()

NTSYSAPI NTSTATUS WINAPI NtCallbackReturn ( PVOID  ,
ULONG  ,
NTSTATUS   
)

◆ NtCancelIoFile()

NTSYSAPI NTSTATUS WINAPI NtCancelIoFile ( HANDLE  ,
PIO_STATUS_BLOCK   
)

◆ NtCancelIoFileEx()

◆ NtCancelSynchronousIoFile()

NTSYSAPI NTSTATUS WINAPI NtCancelSynchronousIoFile ( HANDLE  ,
PIO_STATUS_BLOCK  ,
PIO_STATUS_BLOCK   
)

Referenced by CancelSynchronousIo().

◆ NtCancelTimer()

NTSYSAPI NTSTATUS WINAPI NtCancelTimer ( HANDLE  ,
BOOLEAN  
)

◆ NtClearEvent()

NTSYSAPI NTSTATUS WINAPI NtClearEvent ( HANDLE  )

◆ NtClose()

NTSYSAPI NTSTATUS WINAPI NtClose ( HANDLE  )

◆ NtCloseObjectAuditAlarm()

NTSYSAPI NTSTATUS WINAPI NtCloseObjectAuditAlarm ( PUNICODE_STRING  ,
HANDLE  ,
BOOLEAN   
)

◆ NtCommitTransaction()

NTSYSAPI NTSTATUS WINAPI NtCommitTransaction ( HANDLE  ,
BOOLEAN   
)

◆ NtCompareObjects()

NTSYSAPI NTSTATUS WINAPI NtCompareObjects ( HANDLE  ,
HANDLE   
)

Referenced by CompareObjectHandles().

◆ NtCompareTokens()

NTSYSAPI NTSTATUS WINAPI NtCompareTokens ( HANDLE  ,
HANDLE  ,
BOOLEAN  
)

◆ NtCompleteConnectPort()

NTSYSAPI NTSTATUS WINAPI NtCompleteConnectPort ( HANDLE  )

◆ NtConnectPort()

◆ NtContinue()

NTSYSAPI NTSTATUS WINAPI NtContinue ( PCONTEXT  ,
BOOLEAN   
)

◆ NtContinueEx()

NTSYSAPI NTSTATUS WINAPI NtContinueEx ( CONTEXT ,
KCONTINUE_ARGUMENT  
)

◆ NtCreateDebugObject()

NTSYSAPI NTSTATUS WINAPI NtCreateDebugObject ( HANDLE ,
ACCESS_MASK  ,
OBJECT_ATTRIBUTES ,
ULONG   
)

◆ NtCreateDirectoryObject()

NTSYSAPI NTSTATUS WINAPI NtCreateDirectoryObject ( PHANDLE  ,
ACCESS_MASK  ,
POBJECT_ATTRIBUTES   
)

◆ NtCreateEvent()

◆ NtCreateEventPair()

NTSYSAPI NTSTATUS WINAPI NtCreateEventPair ( PHANDLE  ,
ACCESS_MASK  ,
POBJECT_ATTRIBUTES   
)

◆ NtCreateFile()

NTSYSAPI NTSTATUS WINAPI NtCreateFile ( PHANDLE  FileHandle,
ACCESS_MASK  DesiredAccess,
POBJECT_ATTRIBUTES  ObjectAttributes,
PIO_STATUS_BLOCK  IoStatusBlock,
PLARGE_INTEGER  AllocateSize,
ULONG  FileAttributes,
ULONG  ShareAccess,
ULONG  CreateDisposition,
ULONG  CreateOptions,
PVOID  EaBuffer,
ULONG  EaLength 
)

Definition at line 3759 of file file.c.

3770{
3771 /* Call the I/O Function */
3772 return IoCreateFile(FileHandle,
3776 AllocateSize,
3781 EaBuffer,
3782 EaLength,
3784 NULL,
3785 0);
3786}
_In_ PIO_STACK_LOCATION _Inout_ PFILE_OBJECT _Inout_ PVCB _Outptr_result_maybenull_ PDCB _In_ PDCB _In_ PDIRENT _In_ ULONG _In_ ULONG _In_ PUNICODE_STRING _In_ PACCESS_MASK _In_ USHORT ShareAccess
Definition: create.c:4148
IN PVCB IN PDIRENT OUT PULONG EaLength
Definition: fatprocs.h:879
_Must_inspect_result_ _In_opt_ PFLT_INSTANCE _Out_ PHANDLE _In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Out_ PIO_STATUS_BLOCK _In_opt_ PLARGE_INTEGER _In_ ULONG FileAttributes
Definition: fltkernel.h:1236
_Must_inspect_result_ _In_opt_ PFLT_INSTANCE _Out_ PHANDLE FileHandle
Definition: fltkernel.h:1231
static OUT PIO_STATUS_BLOCK IoStatusBlock
Definition: pipe.c:75
NTSTATUS NTAPI IoCreateFile(OUT PHANDLE FileHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes, OUT PIO_STATUS_BLOCK IoStatusBlock, IN PLARGE_INTEGER AllocationSize OPTIONAL, IN ULONG FileAttributes, IN ULONG ShareAccess, IN ULONG Disposition, IN ULONG CreateOptions, IN PVOID EaBuffer OPTIONAL, IN ULONG EaLength, IN CREATE_FILE_TYPE CreateFileType, IN PVOID ExtraCreateParameters OPTIONAL, IN ULONG Options)
Definition: file.c:3011
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK DesiredAccess
Definition: wdfdevice.h:2664
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_ ULONG _Out_opt_ PULONG CreateDisposition
Definition: wdfregistry.h:120
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_ ULONG CreateOptions
Definition: wdfregistry.h:118
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Out_ PIO_STATUS_BLOCK _In_opt_ PLARGE_INTEGER _In_ ULONG _In_ ULONG _In_ ULONG _In_ ULONG _In_opt_ PVOID EaBuffer
Definition: iofuncs.h:845
@ CreateFileTypeNone
Definition: iotypes.h:535

◆ NtCreateIoCompletion()

NTSYSAPI NTSTATUS WINAPI NtCreateIoCompletion ( PHANDLE  ,
ACCESS_MASK  ,
POBJECT_ATTRIBUTES  ,
ULONG   
)

◆ NtCreateJobObject()

NTSYSAPI NTSTATUS WINAPI NtCreateJobObject ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES  
)

◆ NtCreateKey()

◆ NtCreateKeyedEvent()

NTSYSAPI NTSTATUS WINAPI NtCreateKeyedEvent ( HANDLE ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES ,
ULONG   
)

◆ NtCreateKeyTransacted()

NTSYSAPI NTSTATUS WINAPI NtCreateKeyTransacted ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES ,
ULONG  ,
const UNICODE_STRING ,
ULONG  ,
HANDLE  ,
ULONG  
)

◆ NtCreateLowBoxToken()

NTSYSAPI NTSTATUS WINAPI NtCreateLowBoxToken ( HANDLE ,
HANDLE  ,
ACCESS_MASK  ,
OBJECT_ATTRIBUTES ,
SID ,
ULONG  ,
SID_AND_ATTRIBUTES ,
ULONG  ,
HANDLE  
)

◆ NtCreateMailslotFile()

NTSYSAPI NTSTATUS WINAPI NtCreateMailslotFile ( PHANDLE  ,
ACCESS_MASK  ,
POBJECT_ATTRIBUTES  ,
PIO_STATUS_BLOCK  ,
ULONG  ,
ULONG  ,
ULONG  ,
PLARGE_INTEGER   
)

◆ NtCreateMutant()

NTSYSAPI NTSTATUS WINAPI NtCreateMutant ( HANDLE ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES ,
BOOLEAN   
)

◆ NtCreateNamedPipeFile()

NTSYSAPI NTSTATUS WINAPI NtCreateNamedPipeFile ( PHANDLE  ,
ULONG  ,
POBJECT_ATTRIBUTES  ,
PIO_STATUS_BLOCK  ,
ULONG  ,
ULONG  ,
ULONG  ,
ULONG  ,
ULONG  ,
ULONG  ,
ULONG  ,
ULONG  ,
ULONG  ,
PLARGE_INTEGER   
)

◆ NtCreatePagingFile()

◆ NtCreatePort()

NTSYSAPI NTSTATUS WINAPI NtCreatePort ( PHANDLE  ,
POBJECT_ATTRIBUTES  ,
ULONG  ,
ULONG  ,
PULONG   
)

◆ NtCreateProcess()

NTSYSAPI NTSTATUS WINAPI NtCreateProcess ( PHANDLE  ,
ACCESS_MASK  ,
POBJECT_ATTRIBUTES  ,
HANDLE  ,
BOOLEAN  ,
HANDLE  ,
HANDLE  ,
HANDLE   
)

◆ NtCreateProfile()

NTSYSAPI NTSTATUS WINAPI NtCreateProfile ( PHANDLE  ,
HANDLE  ,
PVOID  ,
ULONG  ,
ULONG  ,
PVOID  ,
ULONG  ,
KPROFILE_SOURCE  ,
KAFFINITY   
)

◆ NtCreateSection()

NTSYSAPI NTSTATUS WINAPI NtCreateSection ( HANDLE ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES ,
const LARGE_INTEGER ,
ULONG  ,
ULONG  ,
HANDLE   
)

◆ NtCreateSemaphore()

NTSYSAPI NTSTATUS WINAPI NtCreateSemaphore ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES ,
LONG  ,
LONG   
)

◆ NtCreateSymbolicLinkObject()

NTSYSAPI NTSTATUS WINAPI NtCreateSymbolicLinkObject ( PHANDLE  ,
ACCESS_MASK  ,
POBJECT_ATTRIBUTES  ,
PUNICODE_STRING   
)

◆ NtCreateThread()

◆ NtCreateThreadEx()

◆ NtCreateTimer()

NTSYSAPI NTSTATUS WINAPI NtCreateTimer ( HANDLE ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES ,
TIMER_TYPE   
)

◆ NtCreateToken()

◆ NtCreateTransaction()

NTSYSAPI NTSTATUS WINAPI NtCreateTransaction ( PHANDLE  ,
ACCESS_MASK  ,
POBJECT_ATTRIBUTES  ,
LPGUID  ,
HANDLE  ,
ULONG  ,
ULONG  ,
ULONG  ,
PLARGE_INTEGER  ,
PUNICODE_STRING   
)

◆ NtCreateUserProcess()

◆ NtDebugActiveProcess()

NTSYSAPI NTSTATUS WINAPI NtDebugActiveProcess ( HANDLE  ,
HANDLE   
)

◆ NtDebugContinue()

NTSYSAPI NTSTATUS WINAPI NtDebugContinue ( HANDLE  ,
CLIENT_ID ,
NTSTATUS   
)

◆ NtDelayExecution()

NTSYSAPI NTSTATUS WINAPI NtDelayExecution ( BOOLEAN  ,
const LARGE_INTEGER  
)

◆ NtDeleteAtom()

NTSYSAPI NTSTATUS WINAPI NtDeleteAtom ( RTL_ATOM  )

◆ NtDeleteFile()

◆ NtDeleteKey()

NTSYSAPI NTSTATUS WINAPI NtDeleteKey ( HANDLE  )

◆ NtDeleteValueKey()

NTSYSAPI NTSTATUS WINAPI NtDeleteValueKey ( HANDLE  ,
const UNICODE_STRING  
)

◆ NtDeviceIoControlFile()

NTSYSAPI NTSTATUS WINAPI NtDeviceIoControlFile ( HANDLE  ,
HANDLE  ,
PIO_APC_ROUTINE  ,
PVOID  ,
PIO_STATUS_BLOCK  ,
ULONG  ,
PVOID  ,
ULONG  ,
PVOID  ,
ULONG   
)

◆ NtDisplayString()

NTSYSAPI NTSTATUS WINAPI NtDisplayString ( PUNICODE_STRING  )

◆ NtDuplicateObject()

NTSYSAPI NTSTATUS WINAPI NtDuplicateObject ( HANDLE  ,
HANDLE  ,
HANDLE  ,
PHANDLE  ,
ACCESS_MASK  ,
ULONG  ,
ULONG   
)

◆ NtDuplicateToken()

NTSYSAPI NTSTATUS WINAPI NtDuplicateToken ( HANDLE  ,
ACCESS_MASK  ,
POBJECT_ATTRIBUTES  ,
BOOLEAN  ,
TOKEN_TYPE  ,
PHANDLE   
)

◆ NtEnumerateKey()

NTSYSAPI NTSTATUS WINAPI NtEnumerateKey ( HANDLE  ,
ULONG  ,
KEY_INFORMATION_CLASS  ,
void ,
DWORD  ,
DWORD  
)

◆ NtEnumerateValueKey()

NTSYSAPI NTSTATUS WINAPI NtEnumerateValueKey ( HANDLE  ,
ULONG  ,
KEY_VALUE_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtExtendSection()

NTSYSAPI NTSTATUS WINAPI NtExtendSection ( HANDLE  ,
PLARGE_INTEGER   
)

◆ NtFilterToken()

NTSYSAPI NTSTATUS WINAPI NtFilterToken ( HANDLE  ,
ULONG  ,
TOKEN_GROUPS ,
TOKEN_PRIVILEGES ,
TOKEN_GROUPS ,
HANDLE  
)

◆ NtFindAtom()

NTSYSAPI NTSTATUS WINAPI NtFindAtom ( const WCHAR ,
ULONG  ,
RTL_ATOM  
)

◆ NtFlushBuffersFile()

NTSYSAPI NTSTATUS WINAPI NtFlushBuffersFile ( HANDLE  ,
IO_STATUS_BLOCK  
)

◆ NtFlushBuffersFileEx()

NTSYSAPI NTSTATUS WINAPI NtFlushBuffersFileEx ( HANDLE  ,
ULONG  ,
void ,
ULONG  ,
IO_STATUS_BLOCK  
)

◆ NtFlushInstructionCache()

NTSYSAPI NTSTATUS WINAPI NtFlushInstructionCache ( HANDLE  ,
LPCVOID  ,
SIZE_T   
)

◆ NtFlushKey()

NTSYSAPI NTSTATUS WINAPI NtFlushKey ( HANDLE  )

◆ NtFlushProcessWriteBuffers()

NTSYSAPI NTSTATUS WINAPI NtFlushProcessWriteBuffers ( void  )

◆ NtFlushVirtualMemory()

NTSYSAPI NTSTATUS WINAPI NtFlushVirtualMemory ( HANDLE  ,
LPCVOID ,
SIZE_T ,
ULONG   
)

◆ NtFlushWriteBuffer()

NTSYSAPI NTSTATUS WINAPI NtFlushWriteBuffer ( VOID  )

Definition at line 3939 of file file.c.

3940{
3941 PAGED_CODE();
3942
3943 /* Call the kernel */
3945 return STATUS_SUCCESS;
3946}
VOID NTAPI KeFlushWriteBuffer(VOID)
Definition: misc.c:39

Referenced by InitSysCalls(), and Test_SyscallPerformance().

◆ NtFreeVirtualMemory()

NTSYSAPI NTSTATUS WINAPI NtFreeVirtualMemory ( HANDLE  ,
PVOID ,
SIZE_T ,
ULONG   
)

◆ NtFsControlFile()

NTSYSAPI NTSTATUS WINAPI NtFsControlFile ( HANDLE  ,
HANDLE  ,
PIO_APC_ROUTINE  ,
PVOID  ,
PIO_STATUS_BLOCK  ,
ULONG  ,
PVOID  ,
ULONG  ,
PVOID  ,
ULONG   
)

◆ NtGetContextThread()

NTSYSAPI NTSTATUS WINAPI NtGetContextThread ( HANDLE  ,
CONTEXT  
)

◆ NtGetCurrentProcessorNumber()

NTSYSAPI ULONG WINAPI NtGetCurrentProcessorNumber ( void  )

Definition at line 3062 of file sysinfo.c.

3063{
3064 /* Just use Ke */
3066}
FORCEINLINE ULONG KeGetCurrentProcessorNumber(VOID)
Definition: ke.h:341

Referenced by RtlGetCurrentProcessorNumber().

◆ NtGetNextThread()

NTSYSAPI NTSTATUS WINAPI NtGetNextThread ( HANDLE  ,
HANDLE  ,
ACCESS_MASK  ,
ULONG  ,
ULONG  ,
HANDLE  
)

◆ NtGetNlsSectionPtr()

NTSYSAPI NTSTATUS WINAPI NtGetNlsSectionPtr ( ULONG  ,
ULONG  ,
void ,
void **  ,
SIZE_T  
)

◆ NtGetPlugPlayEvent()

NTSYSAPI NTSTATUS WINAPI NtGetPlugPlayEvent ( ULONG  ,
ULONG  ,
PVOID  ,
ULONG   
)

◆ NtGetTickCount()

NTSYSAPI ULONG WINAPI NtGetTickCount ( VOID  )

◆ NtGetWriteWatch()

NTSYSAPI NTSTATUS WINAPI NtGetWriteWatch ( HANDLE  ,
ULONG  ,
PVOID  ,
SIZE_T  ,
PVOID ,
ULONG_PTR ,
ULONG  
)

◆ NtImpersonateAnonymousToken()

NTSYSAPI NTSTATUS WINAPI NtImpersonateAnonymousToken ( HANDLE  )

◆ NtImpersonateClientOfPort()

NTSYSAPI NTSTATUS WINAPI NtImpersonateClientOfPort ( HANDLE  ,
PPORT_MESSAGE   
)

◆ NtImpersonateThread()

NTSYSAPI NTSTATUS WINAPI NtImpersonateThread ( HANDLE  ,
HANDLE  ,
PSECURITY_QUALITY_OF_SERVICE   
)

◆ NtInitializeNlsFiles()

NTSYSAPI NTSTATUS WINAPI NtInitializeNlsFiles ( void **  ,
LCID ,
LARGE_INTEGER  
)

◆ NtInitializeRegistry()

NTSYSAPI NTSTATUS WINAPI NtInitializeRegistry ( BOOLEAN  )

◆ NtInitiatePowerAction()

NTSYSAPI NTSTATUS WINAPI NtInitiatePowerAction ( POWER_ACTION  ,
SYSTEM_POWER_STATE  ,
ULONG  ,
BOOLEAN   
)

◆ NtIsProcessInJob()

NTSYSAPI NTSTATUS WINAPI NtIsProcessInJob ( HANDLE  ,
HANDLE   
)

◆ NtListenPort()

NTSYSAPI NTSTATUS WINAPI NtListenPort ( HANDLE  ,
PLPC_MESSAGE   
)

◆ NtLoadDriver()

◆ NtLoadKey()

◆ NtLoadKey2()

◆ NtLoadKeyEx()

◆ NtLockFile()

◆ NtLockVirtualMemory()

NTSYSAPI NTSTATUS WINAPI NtLockVirtualMemory ( HANDLE  ,
PVOID ,
SIZE_T ,
ULONG   
)

◆ NtMakePermanentObject()

NTSYSAPI NTSTATUS WINAPI NtMakePermanentObject ( HANDLE  )

◆ NtMakeTemporaryObject()

NTSYSAPI NTSTATUS WINAPI NtMakeTemporaryObject ( HANDLE  )

◆ NtMapViewOfSection()

NTSYSAPI NTSTATUS WINAPI NtMapViewOfSection ( HANDLE  ,
HANDLE  ,
PVOID ,
ULONG_PTR  ,
SIZE_T  ,
const LARGE_INTEGER ,
SIZE_T ,
SECTION_INHERIT  ,
ULONG  ,
ULONG   
)

◆ NtMapViewOfSectionEx()

NTSYSAPI NTSTATUS WINAPI NtMapViewOfSectionEx ( HANDLE  ,
HANDLE  ,
PVOID ,
const LARGE_INTEGER ,
SIZE_T ,
ULONG  ,
ULONG  ,
MEM_EXTENDED_PARAMETER ,
ULONG   
)

Referenced by MapViewOfFile3().

◆ NtNotifyChangeDirectoryFile()

NTSYSAPI NTSTATUS WINAPI NtNotifyChangeDirectoryFile ( HANDLE  ,
HANDLE  ,
PIO_APC_ROUTINE  ,
PVOID  ,
PIO_STATUS_BLOCK  ,
PVOID  ,
ULONG  ,
ULONG  ,
BOOLEAN   
)

◆ NtNotifyChangeKey()

NTSYSAPI NTSTATUS WINAPI NtNotifyChangeKey ( HANDLE  ,
HANDLE  ,
PIO_APC_ROUTINE  ,
PVOID  ,
PIO_STATUS_BLOCK  ,
ULONG  ,
BOOLEAN  ,
PVOID  ,
ULONG  ,
BOOLEAN   
)

◆ NtNotifyChangeMultipleKeys()

NTSYSAPI NTSTATUS WINAPI NtNotifyChangeMultipleKeys ( HANDLE  ,
ULONG  ,
OBJECT_ATTRIBUTES ,
HANDLE  ,
PIO_APC_ROUTINE  ,
PVOID  ,
PIO_STATUS_BLOCK  ,
ULONG  ,
BOOLEAN  ,
PVOID  ,
ULONG  ,
BOOLEAN   
)

◆ NtOpenDirectoryObject()

NTSYSAPI NTSTATUS WINAPI NtOpenDirectoryObject ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES  
)

◆ NtOpenEvent()

◆ NtOpenEventPair()

NTSYSAPI NTSTATUS WINAPI NtOpenEventPair ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES  
)

◆ NtOpenFile()

◆ NtOpenIoCompletion()

NTSYSAPI NTSTATUS WINAPI NtOpenIoCompletion ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES  
)

◆ NtOpenJobObject()

NTSYSAPI NTSTATUS WINAPI NtOpenJobObject ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES  
)

◆ NtOpenKey()

◆ NtOpenKeyedEvent()

NTSYSAPI NTSTATUS WINAPI NtOpenKeyedEvent ( HANDLE ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES  
)

◆ NtOpenKeyEx()

◆ NtOpenKeyTransacted()

NTSYSAPI NTSTATUS WINAPI NtOpenKeyTransacted ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES ,
HANDLE   
)

◆ NtOpenKeyTransactedEx()

NTSYSAPI NTSTATUS WINAPI NtOpenKeyTransactedEx ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES ,
ULONG  ,
HANDLE   
)

◆ NtOpenMutant()

◆ NtOpenObjectAuditAlarm()

◆ NtOpenProcess()

◆ NtOpenProcessToken()

NTSYSAPI NTSTATUS WINAPI NtOpenProcessToken ( HANDLE  ,
DWORD  ,
HANDLE  
)

◆ NtOpenProcessTokenEx()

NTSYSAPI NTSTATUS WINAPI NtOpenProcessTokenEx ( HANDLE  ,
DWORD  ,
DWORD  ,
HANDLE  
)

◆ NtOpenSection()

NTSYSAPI NTSTATUS WINAPI NtOpenSection ( HANDLE ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES  
)

◆ NtOpenSemaphore()

NTSYSAPI NTSTATUS WINAPI NtOpenSemaphore ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES  
)

◆ NtOpenSymbolicLinkObject()

NTSYSAPI NTSTATUS WINAPI NtOpenSymbolicLinkObject ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES  
)

◆ NtOpenThread()

NTSYSAPI NTSTATUS WINAPI NtOpenThread ( HANDLE ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES ,
const CLIENT_ID  
)

◆ NtOpenThreadToken()

NTSYSAPI NTSTATUS WINAPI NtOpenThreadToken ( HANDLE  ,
DWORD  ,
BOOLEAN  ,
HANDLE  
)

◆ NtOpenThreadTokenEx()

NTSYSAPI NTSTATUS WINAPI NtOpenThreadTokenEx ( HANDLE  ,
DWORD  ,
BOOLEAN  ,
DWORD  ,
HANDLE  
)

◆ NtOpenTimer()

NTSYSAPI NTSTATUS WINAPI NtOpenTimer ( HANDLE ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES  
)

◆ NtPowerInformation()

NTSYSAPI NTSTATUS WINAPI NtPowerInformation ( POWER_INFORMATION_LEVEL  ,
PVOID  ,
ULONG  ,
PVOID  ,
ULONG   
)

◆ NtPrivilegeCheck()

NTSYSAPI NTSTATUS WINAPI NtPrivilegeCheck ( HANDLE  ,
PPRIVILEGE_SET  ,
PBOOLEAN   
)

◆ NtPrivilegedServiceAuditAlarm()

NTSYSAPI NTSTATUS WINAPI NtPrivilegedServiceAuditAlarm ( PUNICODE_STRING  ,
PUNICODE_STRING  ,
HANDLE  ,
PPRIVILEGE_SET  ,
BOOLEAN   
)

◆ NtPrivilegeObjectAuditAlarm()

NTSYSAPI NTSTATUS WINAPI NtPrivilegeObjectAuditAlarm ( PUNICODE_STRING  ,
HANDLE  ,
HANDLE  ,
ULONG  ,
PPRIVILEGE_SET  ,
BOOLEAN   
)

◆ NtProtectVirtualMemory()

NTSYSAPI NTSTATUS WINAPI NtProtectVirtualMemory ( HANDLE  ,
PVOID ,
SIZE_T ,
ULONG  ,
ULONG  
)

◆ NtPulseEvent()

NTSYSAPI NTSTATUS WINAPI NtPulseEvent ( HANDLE  ,
LONG  
)

◆ NtQueryAttributesFile()

NTSYSAPI NTSTATUS WINAPI NtQueryAttributesFile ( const OBJECT_ATTRIBUTES ,
FILE_BASIC_INFORMATION  
)

◆ NtQueryDefaultLocale()

NTSYSAPI NTSTATUS WINAPI NtQueryDefaultLocale ( BOOLEAN  ,
LCID  
)

◆ NtQueryDefaultUILanguage()

NTSYSAPI NTSTATUS WINAPI NtQueryDefaultUILanguage ( LANGID )

◆ NtQueryDirectoryFile()

◆ NtQueryDirectoryObject()

NTSYSAPI NTSTATUS WINAPI NtQueryDirectoryObject ( HANDLE  ,
PDIRECTORY_BASIC_INFORMATION  ,
ULONG  ,
BOOLEAN  ,
BOOLEAN  ,
PULONG  ,
PULONG   
)

◆ NtQueryEaFile()

NTSYSAPI NTSTATUS WINAPI NtQueryEaFile ( HANDLE  ,
PIO_STATUS_BLOCK  ,
PVOID  ,
ULONG  ,
BOOLEAN  ,
PVOID  ,
ULONG  ,
PULONG  ,
BOOLEAN   
)

◆ NtQueryEvent()

NTSYSAPI NTSTATUS WINAPI NtQueryEvent ( HANDLE  ,
EVENT_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQueryFullAttributesFile()

NTSYSAPI NTSTATUS WINAPI NtQueryFullAttributesFile ( const OBJECT_ATTRIBUTES ,
FILE_NETWORK_OPEN_INFORMATION  
)

◆ NtQueryInformationAtom()

NTSYSAPI NTSTATUS WINAPI NtQueryInformationAtom ( RTL_ATOM  ,
ATOM_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
ULONG  
)

◆ NtQueryInformationFile()

NTSYSAPI NTSTATUS WINAPI NtQueryInformationFile ( HANDLE  ,
PIO_STATUS_BLOCK  ,
PVOID  ,
ULONG  ,
FILE_INFORMATION_CLASS   
)

◆ NtQueryInformationJobObject()

NTSYSAPI NTSTATUS WINAPI NtQueryInformationJobObject ( HANDLE  JobHandle,
JOBOBJECTINFOCLASS  JobInformationClass,
PVOID  JobInformation,
ULONG  JobInformationLength,
PULONG  ReturnLength 
)

Definition at line 485 of file job.c.

491{
492 PEJOB Job;
494 BOOLEAN NoOutput;
495 PVOID GenericCopy;
496 PLIST_ENTRY NextEntry;
497 PKTHREAD CurrentThread;
501 ULONG RequiredLength, RequiredAlign, SizeToCopy, NeededSize;
502
503 PAGED_CODE();
504
505 CurrentThread = KeGetCurrentThread();
506
507 /* Validate class */
508 if (JobInformationClass > JobObjectJobSetInformation || JobInformationClass < JobObjectBasicAccountingInformation)
509 {
511 }
512
513 /* Get associated lengths & alignments */
514 RequiredLength = PspJobInfoLengths[JobInformationClass];
515 RequiredAlign = PspJobInfoAlign[JobInformationClass];
516 SizeToCopy = RequiredLength;
517 NeededSize = RequiredLength;
518
519 /* If length mismatch (needed versus provided) */
520 if (JobInformationLength != RequiredLength)
521 {
522 /* This can only be accepted if: JobObjectBasicProcessIdList or JobObjectSecurityLimitInformation
523 * Or if size is bigger than needed
524 */
525 if ((JobInformationClass != JobObjectBasicProcessIdList && JobInformationClass != JobObjectSecurityLimitInformation) ||
526 JobInformationLength < RequiredLength)
527 {
529 }
530
531 /* Set what we need to copy out */
532 SizeToCopy = JobInformationLength;
533 }
534
536 /* If not comming from umode, we need to probe buffers */
538 {
539 ASSERT(((RequiredAlign) == 1) || ((RequiredAlign) == 2) || ((RequiredAlign) == 4) || ((RequiredAlign) == 8) || ((RequiredAlign) == 16));
540
542 {
543 /* Probe out buffer for write */
544 if (JobInformation != NULL)
545 {
546 ProbeForWrite(JobInformation, JobInformationLength, RequiredAlign);
547 }
548
549 /* But also return length if asked */
550 if (ReturnLength != NULL)
551 {
553 }
554 }
556 {
558 }
559 _SEH2_END;
560 }
561
562 /* If a job handle was provided, use it */
563 if (JobHandle != NULL)
564 {
567 PsJobType,
569 (PVOID*)&Job,
570 NULL);
571 if (!NT_SUCCESS(Status))
572 {
573 return Status;
574 }
575 }
576 /* Otherwise, get our current process' job, if any */
577 else
578 {
579 PEPROCESS CurrentProcess;
580
581 CurrentProcess = (PEPROCESS)CurrentThread->ApcState.Process;
582 Job = CurrentProcess->Job;
583 if (Job == NULL)
584 {
586 }
587
589 }
590
591 /* By default, assume we'll have to copy data */
592 NoOutput = FALSE;
593 /* Select class */
594 switch (JobInformationClass)
595 {
596 /* Basic counters */
599 /* Zero basics */
601
602 /* Lock */
603 KeEnterGuardedRegionThread(CurrentThread);
605
606 /* Initialize with job counters */
612 BasicAndIo.BasicInfo.TotalProcesses = Job->TotalProcesses;
613 BasicAndIo.BasicInfo.ActiveProcesses = Job->ActiveProcesses;
615
616 /* We also set IoInfo, even though we might not return it */
623
624 /* For every process, sum its counters */
625 for (NextEntry = Job->ProcessListHead.Flink;
626 NextEntry != &Job->ProcessListHead;
627 NextEntry = NextEntry->Flink)
628 {
630
631 Process = CONTAINING_RECORD(NextEntry, EPROCESS, JobLinks);
632 if (!BooleanFlagOn(Process->JobStatus, 2))
633 {
634 PROCESS_VALUES Values;
635
636 KeQueryValuesProcess(&Process->Pcb, &Values);
645 }
646 }
647
648 /* And done */
650 KeLeaveGuardedRegionThread(CurrentThread);
651
652 /* We'll copy back the buffer */
653 GenericCopy = &BasicAndIo;
655
656 break;
657
658 /* Limits information */
661 /* Lock */
662 KeEnterGuardedRegionThread(CurrentThread);
664
665 /* Copy basic information */
666 ExtendedLimit.BasicLimitInformation.LimitFlags = Job->LimitFlags;
672 ExtendedLimit.BasicLimitInformation.Affinity = Job->Affinity;
675
676 /* If asking for extending limits */
677 if (JobInformationClass == JobObjectExtendedLimitInformation)
678 {
679 /* Lock our memory lock */
681 /* Return limits */
682 ExtendedLimit.ProcessMemoryLimit = Job->ProcessMemoryLimit << PAGE_SHIFT;
683 ExtendedLimit.JobMemoryLimit = Job->JobMemoryLimit << PAGE_SHIFT;
685 ExtendedLimit.PeakJobMemoryUsed = Job->PeakJobMemoryUsed << PAGE_SHIFT;
687
688 /* And done */
690 KeLeaveGuardedRegionThread(CurrentThread);
691
692 /* We'll never return IoInfo, so zero it out to avoid
693 * kernel memory leak
694 */
695 RtlZeroMemory(&ExtendedLimit.IoInfo, sizeof(IO_COUNTERS));
696 }
697 else
698 {
699 /* And done */
701 KeLeaveGuardedRegionThread(CurrentThread);
702 }
703
704 /* We'll copy back the buffer */
705 GenericCopy = &ExtendedLimit;
707
708 break;
709
710 default:
711 DPRINT1("Class %d not implemented\n", JobInformationClass);
713 break;
714 }
715
716 /* Job is no longer required */
718
719 /* If we succeeed, copy back data */
720 if (NT_SUCCESS(Status))
721 {
723 {
724 /* If we have anything to copy, do it */
725 if (!NoOutput)
726 {
727 RtlCopyMemory(JobInformation, GenericCopy, SizeToCopy);
728 }
729
730 /* And return length if asked */
731 if (ReturnLength != NULL)
732 {
733 *ReturnLength = NeededSize;
734 }
735 }
737 {
739 }
740 _SEH2_END;
741 }
742
743 return Status;
744}
_In_ PVOID _In_ ULONG _Out_ PVOID _In_ ULONG _Inout_ PULONG ReturnLength
unsigned char BOOLEAN
#define STATUS_NOT_IMPLEMENTED
Definition: d3dkmdt.h:42
#define FALSE
Definition: types.h:117
#define PAGE_SHIFT
Definition: env_spec_w32.h:45
#define ExAcquireResourceSharedLite(res, wait)
Definition: env_spec_w32.h:621
VOID NTAPI ProbeForWrite(IN PVOID Address, IN SIZE_T Length, IN ULONG Alignment)
Definition: exintrin.c:143
#define BooleanFlagOn(F, SF)
Definition: ext2fs.h:183
VOID FASTCALL KeReleaseGuardedMutexUnsafe(IN OUT PKGUARDED_MUTEX GuardedMutex)
Definition: gmutex.c:75
VOID FASTCALL KeAcquireGuardedMutexUnsafe(IN OUT PKGUARDED_MUTEX GuardedMutex)
Definition: gmutex.c:64
#define KeGetCurrentThread
Definition: hal.h:55
@ JobObjectBasicLimitInformation
Definition: pstypes.h:468
@ JobObjectBasicAndIoAccountingInformation
Definition: pstypes.h:474
@ JobObjectBasicAccountingInformation
Definition: pstypes.h:467
@ JobObjectSecurityLimitInformation
Definition: pstypes.h:471
@ JobObjectExtendedLimitInformation
Definition: pstypes.h:475
@ JobObjectBasicProcessIdList
Definition: pstypes.h:469
@ JobObjectJobSetInformation
Definition: pstypes.h:476
#define JOB_OBJECT_QUERY
Definition: pstypes.h:203
#define KeEnterGuardedRegionThread(_Thread)
Definition: ke_x.h:27
#define KeLeaveGuardedRegionThread(_Thread)
Definition: ke_x.h:48
if(dx< 0)
Definition: linetemp.h:194
#define ASSERT(a)
Definition: mode.c:44
#define KernelMode
Definition: asm.h:38
struct _EPROCESS * PEPROCESS
Definition: nt_native.h:30
VOID FASTCALL ExReleaseResourceLite(IN PERESOURCE Resource)
Definition: resource.c:1822
VOID NTAPI KeQueryValuesProcess(IN PKPROCESS Process, PPROCESS_VALUES Values)
Definition: procobj.c:525
ULONG PspJobInfoAlign[]
Definition: job.c:68
ULONG PspJobInfoLengths[]
Definition: job.c:53
#define STATUS_INVALID_INFO_CLASS
Definition: ntstatus.h:333
#define _SEH2_YIELD(__stmt)
Definition: pseh2_64.h:184
#define ProbeForWriteUlong(Ptr)
Definition: probe.h:36
JOBOBJECT_BASIC_ACCOUNTING_INFORMATION BasicInfo
Definition: pstypes.h:1685
LARGE_INTEGER ThisPeriodTotalUserTime
Definition: pstypes.h:1574
ULONGLONG OtherTransferCount
Definition: pstypes.h:1602
LARGE_INTEGER TotalKernelTime
Definition: pstypes.h:1573
ULONG LimitFlags
Definition: pstypes.h:1582
ULONG TotalProcesses
Definition: pstypes.h:1577
ULONG ActiveProcessLimit
Definition: pstypes.h:1585
LIST_ENTRY ProcessListHead
Definition: pstypes.h:1570
UCHAR PriorityClass
Definition: pstypes.h:1587
ULONGLONG OtherOperationCount
Definition: pstypes.h:1599
LARGE_INTEGER PerJobUserTimeLimit
Definition: pstypes.h:1581
ULONG Affinity
Definition: pstypes.h:1586
ULONG ActiveProcesses
Definition: pstypes.h:1578
ULONG PeakProcessMemoryUsed
Definition: pstypes.h:1606
ULONG ProcessMemoryLimit
Definition: pstypes.h:1604
ULONGLONG ReadTransferCount
Definition: pstypes.h:1600
ULONG SchedulingClass
Definition: pstypes.h:1596
ULONG TotalPageFaultCount
Definition: pstypes.h:1576
ULONG MinimumWorkingSetSize
Definition: pstypes.h:1583
ULONG PeakJobMemoryUsed
Definition: pstypes.h:1607
ULONG TotalTerminatedProcesses
Definition: pstypes.h:1579
ULONG MaximumWorkingSetSize
Definition: pstypes.h:1584
LARGE_INTEGER TotalUserTime
Definition: pstypes.h:1572
ULONGLONG ReadOperationCount
Definition: pstypes.h:1597
LARGE_INTEGER ThisPeriodTotalKernelTime
Definition: pstypes.h:1575
ULONGLONG WriteOperationCount
Definition: pstypes.h:1598
EX_PUSH_LOCK MemoryLimitsLock
Definition: pstypes.h:1614
ULONG JobMemoryLimit
Definition: pstypes.h:1605
ULONGLONG WriteTransferCount
Definition: pstypes.h:1601
ERESOURCE JobLock
Definition: pstypes.h:1571
LARGE_INTEGER PerProcessUserTimeLimit
Definition: pstypes.h:1580
struct _EJOB * Job
Definition: pstypes.h:1392
ULONGLONG ReadOperationCount
Definition: pstypes.h:83
ULONGLONG WriteTransferCount
Definition: pstypes.h:87
ULONGLONG WriteOperationCount
Definition: pstypes.h:84
ULONGLONG ReadTransferCount
Definition: pstypes.h:86
ULONGLONG OtherOperationCount
Definition: pstypes.h:85
ULONGLONG OtherTransferCount
Definition: pstypes.h:88
LARGE_INTEGER PerProcessUserTimeLimit
Definition: pstypes.h:1640
JOBOBJECT_BASIC_LIMIT_INFORMATION BasicLimitInformation
Definition: pstypes.h:1691
KAPC_STATE ApcState
Definition: ketypes.h:1906
struct _LIST_ENTRY * Flink
Definition: typedefs.h:121
LARGE_INTEGER TotalUserTime
Definition: ke.h:47
IO_COUNTERS IoInfo
Definition: ke.h:48
LARGE_INTEGER TotalKernelTime
Definition: ke.h:46
#define RtlCopyMemory(Destination, Source, Length)
Definition: typedefs.h:263
#define STATUS_INFO_LENGTH_MISMATCH
Definition: udferr_usr.h:133
LONGLONG QuadPart
Definition: typedefs.h:114
_In_ ULONG _Out_opt_ PULONG RequiredLength
Definition: wmifuncs.h:30

Referenced by QueryInformationJobObject().

◆ NtQueryInformationPort()

NTSYSAPI NTSTATUS WINAPI NtQueryInformationPort ( HANDLE  ,
PORT_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQueryInformationProcess()

NTSYSAPI NTSTATUS WINAPI NtQueryInformationProcess ( HANDLE  ,
PROCESSINFOCLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQueryInformationThread()

NTSYSAPI NTSTATUS WINAPI NtQueryInformationThread ( HANDLE  ,
THREADINFOCLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQueryInformationToken()

NTSYSAPI NTSTATUS WINAPI NtQueryInformationToken ( HANDLE  ,
TOKEN_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQueryInstallUILanguage()

NTSYSAPI NTSTATUS WINAPI NtQueryInstallUILanguage ( LANGID )

◆ NtQueryIntervalProfile()

NTSYSAPI NTSTATUS WINAPI NtQueryIntervalProfile ( KPROFILE_SOURCE  ,
PULONG   
)

◆ NtQueryIoCompletion()

NTSYSAPI NTSTATUS WINAPI NtQueryIoCompletion ( HANDLE  ,
IO_COMPLETION_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQueryKey()

NTSYSAPI NTSTATUS WINAPI NtQueryKey ( HANDLE  ,
KEY_INFORMATION_CLASS  ,
void ,
DWORD  ,
DWORD  
)

◆ NtQueryLicenseValue()

NTSYSAPI NTSTATUS WINAPI NtQueryLicenseValue ( const UNICODE_STRING ,
ULONG ,
PVOID  ,
ULONG  ,
ULONG  
)

◆ NtQueryMultipleValueKey()

NTSYSAPI NTSTATUS WINAPI NtQueryMultipleValueKey ( HANDLE  ,
PKEY_MULTIPLE_VALUE_INFORMATION  ,
ULONG  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQueryMutant()

NTSYSAPI NTSTATUS WINAPI NtQueryMutant ( HANDLE  ,
MUTANT_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQueryObject()

NTSYSAPI NTSTATUS WINAPI NtQueryObject ( HANDLE  ,
OBJECT_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQueryOpenSubKeys()

NTSYSAPI NTSTATUS WINAPI NtQueryOpenSubKeys ( POBJECT_ATTRIBUTES  ,
PULONG   
)

◆ NtQueryPerformanceCounter()

NTSYSAPI NTSTATUS WINAPI NtQueryPerformanceCounter ( PLARGE_INTEGER  ,
PLARGE_INTEGER   
)

◆ NtQuerySection()

NTSYSAPI NTSTATUS WINAPI NtQuerySection ( HANDLE  ,
SECTION_INFORMATION_CLASS  ,
PVOID  ,
SIZE_T  ,
SIZE_T  
)

◆ NtQuerySecurityObject()

NTSYSAPI NTSTATUS WINAPI NtQuerySecurityObject ( HANDLE  ,
SECURITY_INFORMATION  ,
PSECURITY_DESCRIPTOR  ,
ULONG  ,
PULONG   
)

◆ NtQuerySemaphore()

NTSYSAPI NTSTATUS WINAPI NtQuerySemaphore ( HANDLE  ,
SEMAPHORE_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQuerySymbolicLinkObject()

NTSYSAPI NTSTATUS WINAPI NtQuerySymbolicLinkObject ( HANDLE  ,
PUNICODE_STRING  ,
PULONG   
)

◆ NtQuerySystemEnvironmentValue()

NTSYSAPI NTSTATUS WINAPI NtQuerySystemEnvironmentValue ( PUNICODE_STRING  ,
PWCHAR  ,
ULONG  ,
PULONG   
)

◆ NtQuerySystemEnvironmentValueEx()

NTSYSAPI NTSTATUS WINAPI NtQuerySystemEnvironmentValueEx ( PUNICODE_STRING  ,
GUID ,
void ,
ULONG ,
ULONG  
)

◆ NtQuerySystemInformation()

NTSYSAPI NTSTATUS WINAPI NtQuerySystemInformation ( SYSTEM_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQuerySystemInformationEx()

◆ NtQuerySystemTime()

NTSYSAPI NTSTATUS WINAPI NtQuerySystemTime ( PLARGE_INTEGER  )

◆ NtQueryTimer()

NTSYSAPI NTSTATUS WINAPI NtQueryTimer ( HANDLE  ,
TIMER_INFORMATION_CLASS  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtQueryTimerResolution()

NTSYSAPI NTSTATUS WINAPI NtQueryTimerResolution ( PULONG  ,
PULONG  ,
PULONG   
)

◆ NtQueryValueKey()

NTSYSAPI NTSTATUS WINAPI NtQueryValueKey ( HANDLE  ,
const UNICODE_STRING ,
KEY_VALUE_INFORMATION_CLASS  ,
void ,
DWORD  ,
DWORD  
)

◆ NtQueryVirtualMemory()

NTSYSAPI NTSTATUS WINAPI NtQueryVirtualMemory ( HANDLE  ,
LPCVOID  ,
MEMORY_INFORMATION_CLASS  ,
PVOID  ,
SIZE_T  ,
SIZE_T  
)

◆ NtQueryVolumeInformationFile()

NTSYSAPI NTSTATUS WINAPI NtQueryVolumeInformationFile ( HANDLE  ,
PIO_STATUS_BLOCK  ,
PVOID  ,
ULONG  ,
FS_INFORMATION_CLASS   
)

◆ NtQueueApcThread()

NTSYSAPI NTSTATUS WINAPI NtQueueApcThread ( HANDLE  ,
PNTAPCFUNC  ,
ULONG_PTR  ,
ULONG_PTR  ,
ULONG_PTR   
)

◆ NtQueueApcThreadEx()

NTSYSAPI NTSTATUS WINAPI NtQueueApcThreadEx ( HANDLE  ,
HANDLE  ,
PNTAPCFUNC  ,
ULONG_PTR  ,
ULONG_PTR  ,
ULONG_PTR   
)

◆ NtRaiseException()

NTSYSAPI NTSTATUS WINAPI NtRaiseException ( PEXCEPTION_RECORD  ,
PCONTEXT  ,
BOOL   
)

◆ NtRaiseHardError()

◆ NtReadFile()

◆ NtReadFileScatter()

◆ NtReadRequestData()

NTSYSAPI NTSTATUS WINAPI NtReadRequestData ( HANDLE  ,
PLPC_MESSAGE  ,
ULONG  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtReadVirtualMemory()

NTSYSAPI NTSTATUS WINAPI NtReadVirtualMemory ( HANDLE  ,
const void ,
void ,
SIZE_T  ,
SIZE_T  
)

◆ NtRegisterThreadTerminatePort()

NTSYSAPI NTSTATUS WINAPI NtRegisterThreadTerminatePort ( HANDLE  )

◆ NtReleaseKeyedEvent()

◆ NtReleaseMutant()

NTSYSAPI NTSTATUS WINAPI NtReleaseMutant ( HANDLE  ,
PLONG   
)

◆ NtReleaseSemaphore()

NTSYSAPI NTSTATUS WINAPI NtReleaseSemaphore ( HANDLE  ,
ULONG  ,
PULONG   
)

◆ NtRemoveIoCompletion()

NTSYSAPI NTSTATUS WINAPI NtRemoveIoCompletion ( HANDLE  ,
PULONG_PTR  ,
PULONG_PTR  ,
PIO_STATUS_BLOCK  ,
PLARGE_INTEGER   
)

◆ NtRemoveIoCompletionEx()

NTSYSAPI NTSTATUS WINAPI NtRemoveIoCompletionEx ( HANDLE  ,
FILE_IO_COMPLETION_INFORMATION ,
ULONG  ,
ULONG ,
LARGE_INTEGER ,
BOOLEAN   
)

◆ NtRemoveProcessDebug()

NTSYSAPI NTSTATUS WINAPI NtRemoveProcessDebug ( HANDLE  ,
HANDLE   
)

◆ NtRenameKey()

NTSYSAPI NTSTATUS WINAPI NtRenameKey ( HANDLE  ,
UNICODE_STRING  
)

◆ NtReplaceKey()

◆ NtReplyPort()

NTSYSAPI NTSTATUS WINAPI NtReplyPort ( HANDLE  ,
PLPC_MESSAGE   
)

◆ NtReplyWaitReceivePort()

NTSYSAPI NTSTATUS WINAPI NtReplyWaitReceivePort ( HANDLE  ,
PULONG  ,
PLPC_MESSAGE  ,
PLPC_MESSAGE   
)

◆ NtReplyWaitReceivePortEx()

NTSYSAPI NTSTATUS WINAPI NtReplyWaitReceivePortEx ( HANDLE  ,
PVOID ,
PPORT_MESSAGE  ,
PPORT_MESSAGE  ,
PLARGE_INTEGER   
)

◆ NtReplyWaitReplyPort()

NTSYSAPI NTSTATUS WINAPI NtReplyWaitReplyPort ( HANDLE  ,
PLPC_MESSAGE   
)

◆ NtRequestPort()

NTSYSAPI NTSTATUS WINAPI NtRequestPort ( HANDLE  ,
PLPC_MESSAGE   
)

◆ NtRequestWaitReplyPort()

NTSYSAPI NTSTATUS WINAPI NtRequestWaitReplyPort ( HANDLE  ,
PLPC_MESSAGE  ,
PLPC_MESSAGE   
)

◆ NtResetEvent()

NTSYSAPI NTSTATUS WINAPI NtResetEvent ( HANDLE  ,
LONG  
)

◆ NtResetWriteWatch()

NTSYSAPI NTSTATUS WINAPI NtResetWriteWatch ( HANDLE  ,
PVOID  ,
SIZE_T   
)

◆ NtRestoreKey()

NTSYSAPI NTSTATUS WINAPI NtRestoreKey ( HANDLE  ,
HANDLE  ,
ULONG   
)

◆ NtResumeProcess()

NTSYSAPI NTSTATUS WINAPI NtResumeProcess ( HANDLE  )

◆ NtResumeThread()

NTSYSAPI NTSTATUS WINAPI NtResumeThread ( HANDLE  ,
PULONG   
)

◆ NtRollbackTransaction()

NTSYSAPI NTSTATUS WINAPI NtRollbackTransaction ( HANDLE  ,
BOOLEAN   
)

◆ NtSaveKey()

NTSYSAPI NTSTATUS WINAPI NtSaveKey ( HANDLE  ,
HANDLE   
)

◆ NtSecureConnectPort()

◆ NtSetContextThread()

NTSYSAPI NTSTATUS WINAPI NtSetContextThread ( HANDLE  ,
const CONTEXT  
)

◆ NtSetDebugFilterState()

NTSYSAPI NTSTATUS WINAPI NtSetDebugFilterState ( ULONG  ,
ULONG  ,
BOOLEAN   
)

◆ NtSetDefaultHardErrorPort()

NTSYSAPI NTSTATUS WINAPI NtSetDefaultHardErrorPort ( HANDLE  )

◆ NtSetDefaultLocale()

NTSYSAPI NTSTATUS WINAPI NtSetDefaultLocale ( BOOLEAN  ,
LCID   
)

◆ NtSetDefaultUILanguage()

NTSYSAPI NTSTATUS WINAPI NtSetDefaultUILanguage ( LANGID  )

◆ NtSetEaFile()

NTSYSAPI NTSTATUS WINAPI NtSetEaFile ( HANDLE  ,
PIO_STATUS_BLOCK  ,
PVOID  ,
ULONG   
)

◆ NtSetEvent()

NTSYSAPI NTSTATUS WINAPI NtSetEvent ( HANDLE  ,
LONG  
)

◆ NtSetHighEventPair()

NTSYSAPI NTSTATUS WINAPI NtSetHighEventPair ( HANDLE  )

◆ NtSetHighWaitLowEventPair()

NTSYSAPI NTSTATUS WINAPI NtSetHighWaitLowEventPair ( HANDLE  )

◆ NtSetHighWaitLowThread()

NTSYSAPI NTSTATUS WINAPI NtSetHighWaitLowThread ( VOID  )

◆ NtSetInformationDebugObject()

NTSYSAPI NTSTATUS WINAPI NtSetInformationDebugObject ( HANDLE  ,
DEBUGOBJECTINFOCLASS  ,
PVOID  ,
ULONG  ,
ULONG  
)

◆ NtSetInformationFile()

NTSYSAPI NTSTATUS WINAPI NtSetInformationFile ( HANDLE  ,
PIO_STATUS_BLOCK  ,
PVOID  ,
ULONG  ,
FILE_INFORMATION_CLASS   
)

◆ NtSetInformationJobObject()

NTSYSAPI NTSTATUS WINAPI NtSetInformationJobObject ( HANDLE  JobHandle,
JOBOBJECTINFOCLASS  JobInformationClass,
PVOID  JobInformation,
ULONG  JobInformationLength 
)

Definition at line 752 of file job.c.

757{
758 PEJOB Job;
760 PKTHREAD CurrentThread;
763 ULONG RequiredLength, RequiredAlign;
764
765 PAGED_CODE();
766
767 CurrentThread = KeGetCurrentThread();
768
769 /* Validate class */
770 if (JobInformationClass > JobObjectJobSetInformation || JobInformationClass < JobObjectBasicAccountingInformation)
771 {
773 }
774
775 /* Get associated lengths & alignments */
776 RequiredLength = PspJobInfoLengths[JobInformationClass];
777 RequiredAlign = PspJobInfoAlign[JobInformationClass];
778
780 /* If not comming from umode, we need to probe buffers */
782 {
783 ASSERT(((RequiredAlign) == 1) || ((RequiredAlign) == 2) || ((RequiredAlign) == 4) || ((RequiredAlign) == 8) || ((RequiredAlign) == 16));
784
786 {
787 /* Probe out buffer for read */
788 if (JobInformationLength != 0)
789 {
790 ProbeForRead(JobInformation, JobInformationLength, RequiredAlign);
791 }
792 }
794 {
796 }
797 _SEH2_END;
798 }
799
800 /* Validate input size */
801 if (JobInformationLength != RequiredLength)
802 {
804 }
805
806 /* Open the given job */
808 if (JobInformationClass == JobObjectSecurityLimitInformation)
809 {
811 }
814 PsJobType,
816 (PVOID*)&Job,
817 NULL);
818 if (!NT_SUCCESS(Status))
819 {
820 return Status;
821 }
822
823 /* And set the information */
824 KeEnterGuardedRegionThread(CurrentThread);
825 switch (JobInformationClass)
826 {
828 DPRINT1("Class JobObjectExtendedLimitInformation not implemented\n");
830 break;
831
832 default:
833 DPRINT1("Class %d not implemented\n", JobInformationClass);
835 break;
836 }
837 KeLeaveGuardedRegionThread(CurrentThread);
838
840
841 return Status;
842}
VOID NTAPI ProbeForRead(IN CONST VOID *Address, IN SIZE_T Length, IN ULONG Alignment)
Definition: exintrin.c:102
#define JOB_OBJECT_SET_SECURITY_ATTRIBUTES
Definition: pstypes.h:205
#define JOB_OBJECT_SET_ATTRIBUTES
Definition: pstypes.h:202
ULONG ACCESS_MASK
Definition: nt_native.h:40

Referenced by SetInformationJobObject().

◆ NtSetInformationKey()

NTSYSAPI NTSTATUS WINAPI NtSetInformationKey ( HANDLE  ,
const int  ,
PVOID  ,
ULONG   
)

◆ NtSetInformationObject()

NTSYSAPI NTSTATUS WINAPI NtSetInformationObject ( HANDLE  ,
OBJECT_INFORMATION_CLASS  ,
PVOID  ,
ULONG   
)

◆ NtSetInformationProcess()

NTSYSAPI NTSTATUS WINAPI NtSetInformationProcess ( HANDLE  ,
PROCESSINFOCLASS  ,
PVOID  ,
ULONG   
)

◆ NtSetInformationThread()

NTSYSAPI NTSTATUS WINAPI NtSetInformationThread ( HANDLE  ,
THREADINFOCLASS  ,
LPCVOID  ,
ULONG   
)

◆ NtSetInformationToken()

NTSYSAPI NTSTATUS WINAPI NtSetInformationToken ( HANDLE  ,
TOKEN_INFORMATION_CLASS  ,
PVOID  ,
ULONG   
)

◆ NtSetInformationVirtualMemory()

NTSYSAPI NTSTATUS WINAPI NtSetInformationVirtualMemory ( HANDLE  ,
VIRTUAL_MEMORY_INFORMATION_CLASS  ,
ULONG_PTR  ,
PMEMORY_RANGE_ENTRY  ,
PVOID  ,
ULONG   
)

Referenced by PrefetchVirtualMemory().

◆ NtSetIntervalProfile()

NTSYSAPI NTSTATUS WINAPI NtSetIntervalProfile ( ULONG  ,
KPROFILE_SOURCE   
)

◆ NtSetIoCompletion()

NTSYSAPI NTSTATUS WINAPI NtSetIoCompletion ( HANDLE  ,
ULONG_PTR  ,
ULONG_PTR  ,
NTSTATUS  ,
SIZE_T   
)

◆ NtSetIoCompletionEx()

NTSYSAPI NTSTATUS WINAPI NtSetIoCompletionEx ( HANDLE  ,
HANDLE  ,
ULONG_PTR  ,
ULONG_PTR  ,
NTSTATUS  ,
SIZE_T   
)

◆ NtSetLdtEntries()

NTSYSAPI NTSTATUS WINAPI NtSetLdtEntries ( ULONG  Selector1,
LDT_ENTRY  LdtEntry1,
ULONG  Selector2,
LDT_ENTRY  LdtEntry2 
)

Definition at line 189 of file stubs.c.

190{
192 __debugbreak();
193 return STATUS_UNSUCCESSFUL;
194}
#define UNIMPLEMENTED
Definition: ntoskrnl.c:15
void __cdecl __debugbreak(void)
Definition: intrin_ppc.h:698
#define STATUS_UNSUCCESSFUL
Definition: udferr_usr.h:132

Referenced by init_funcs().

◆ NtSetLowEventPair()

NTSYSAPI NTSTATUS WINAPI NtSetLowEventPair ( HANDLE  )

◆ NtSetLowWaitHighEventPair()

NTSYSAPI NTSTATUS WINAPI NtSetLowWaitHighEventPair ( HANDLE  )

◆ NtSetLowWaitHighThread()

NTSYSAPI NTSTATUS WINAPI NtSetLowWaitHighThread ( VOID  )

◆ NtSetSecurityObject()

◆ NtSetSystemEnvironmentValue()

NTSYSAPI NTSTATUS WINAPI NtSetSystemEnvironmentValue ( PUNICODE_STRING  ,
PUNICODE_STRING   
)

◆ NtSetSystemInformation()

NTSYSAPI NTSTATUS WINAPI NtSetSystemInformation ( SYSTEM_INFORMATION_CLASS  ,
PVOID  ,
ULONG   
)

◆ NtSetSystemPowerState()

NTSYSAPI NTSTATUS WINAPI NtSetSystemPowerState ( POWER_ACTION  ,
SYSTEM_POWER_STATE  ,
ULONG   
)

◆ NtSetSystemTime()

NTSYSAPI NTSTATUS WINAPI NtSetSystemTime ( const LARGE_INTEGER ,
LARGE_INTEGER  
)

◆ NtSetThreadExecutionState()

NTSYSAPI NTSTATUS WINAPI NtSetThreadExecutionState ( EXECUTION_STATE  ,
EXECUTION_STATE  
)

◆ NtSetTimer()

NTSYSAPI NTSTATUS WINAPI NtSetTimer ( HANDLE  ,
const LARGE_INTEGER ,
PTIMER_APC_ROUTINE  ,
PVOID  ,
BOOLEAN  ,
ULONG  ,
BOOLEAN  
)

◆ NtSetTimerResolution()

NTSYSAPI NTSTATUS WINAPI NtSetTimerResolution ( ULONG  ,
BOOLEAN  ,
PULONG   
)

◆ NtSetValueKey()

NTSYSAPI NTSTATUS WINAPI NtSetValueKey ( HANDLE  ,
const UNICODE_STRING ,
ULONG  ,
ULONG  ,
const void ,
ULONG   
)

◆ NtSetVolumeInformationFile()

NTSYSAPI NTSTATUS WINAPI NtSetVolumeInformationFile ( HANDLE  ,
PIO_STATUS_BLOCK  ,
PVOID  ,
ULONG  ,
FS_INFORMATION_CLASS   
)

◆ NtShutdownSystem()

NTSYSAPI NTSTATUS WINAPI NtShutdownSystem ( SHUTDOWN_ACTION  )

◆ NtSignalAndWaitForSingleObject()

NTSYSAPI NTSTATUS WINAPI NtSignalAndWaitForSingleObject ( HANDLE  ,
HANDLE  ,
BOOLEAN  ,
const LARGE_INTEGER  
)

◆ NtStartProfile()

NTSYSAPI NTSTATUS WINAPI NtStartProfile ( HANDLE  )

◆ NTSTATUS()

typedef NTSTATUS ( NTAPI  RTL_HEAP_COMMIT_ROUTINE)

◆ NtStopProfile()

NTSYSAPI NTSTATUS WINAPI NtStopProfile ( HANDLE  )

◆ NtSuspendProcess()

NTSTATUS WINAPI NtSuspendProcess ( HANDLE  )

◆ NtSuspendThread()

NTSYSAPI NTSTATUS WINAPI NtSuspendThread ( HANDLE  ,
PULONG   
)

◆ NtSystemDebugControl()

NTSYSAPI NTSTATUS WINAPI NtSystemDebugControl ( SYSDBG_COMMAND  ,
PVOID  ,
ULONG  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtTerminateJobObject()

NTSYSAPI NTSTATUS WINAPI NtTerminateJobObject ( HANDLE  JobHandle,
NTSTATUS  ExitStatus 
)

Definition at line 850 of file job.c.

853{
855 PEJOB Job;
857
858 PAGED_CODE();
859
861
863 JobHandle,
865 PsJobType,
867 (PVOID*)&Job,
868 NULL);
869 if(NT_SUCCESS(Status))
870 {
872 Job,
874 ExitStatus);
876 }
877
878 return Status;
879}
#define JOB_OBJECT_TERMINATE
Definition: pstypes.h:204
_In_ NTSTATUS ExitStatus
Definition: psfuncs.h:868
NTSTATUS NTAPI PspTerminateJobObject(PEJOB Job, KPROCESSOR_MODE AccessMode, NTSTATUS ExitStatus)
Definition: job.c:128

Referenced by TerminateJobObject().

◆ NtTerminateProcess()

NTSYSAPI NTSTATUS WINAPI NtTerminateProcess ( HANDLE  ,
LONG   
)

◆ NtTerminateThread()

NTSYSAPI NTSTATUS WINAPI NtTerminateThread ( HANDLE  ,
LONG   
)

◆ NtTestAlert()

NTSYSAPI NTSTATUS WINAPI NtTestAlert ( VOID  )

Definition at line 465 of file state.c.

466{
467 /* Check and Alert Thread if needed */
470}
BOOLEAN NTAPI KeTestAlertThread(IN KPROCESSOR_MODE AlertMode)
Definition: thrdobj.c:722
#define STATUS_ALERTED
Definition: ntstatus.h:133

Referenced by LdrpInit().

◆ NtTraceControl()

NTSYSAPI NTSTATUS WINAPI NtTraceControl ( ULONG  ,
void ,
ULONG  ,
void ,
ULONG  ,
ULONG  
)

◆ NtUnloadDriver()

NTSYSAPI NTSTATUS WINAPI NtUnloadDriver ( const UNICODE_STRING )

◆ NtUnloadKey()

◆ NtUnloadKeyEx()

NTSYSAPI NTSTATUS WINAPI NtUnloadKeyEx ( POBJECT_ATTRIBUTES  ,
HANDLE   
)

◆ NtUnlockFile()

◆ NtUnlockVirtualMemory()

NTSYSAPI NTSTATUS WINAPI NtUnlockVirtualMemory ( HANDLE  ,
PVOID ,
SIZE_T ,
ULONG   
)

◆ NtUnmapViewOfSection()

NTSYSAPI NTSTATUS WINAPI NtUnmapViewOfSection ( HANDLE  ,
PVOID   
)

◆ NtUnmapViewOfSectionEx()

NTSYSAPI NTSTATUS WINAPI NtUnmapViewOfSectionEx ( HANDLE  ,
PVOID  ,
ULONG   
)

◆ NtVdmControl()

NTSYSAPI NTSTATUS WINAPI NtVdmControl ( ULONG  ,
PVOID   
)

◆ NtWaitForAlertByThreadId()

NTSYSAPI NTSTATUS WINAPI NtWaitForAlertByThreadId ( const void ,
const LARGE_INTEGER  
)

◆ NtWaitForDebugEvent()

NTSYSAPI NTSTATUS WINAPI NtWaitForDebugEvent ( HANDLE  ,
BOOLEAN  ,
LARGE_INTEGER ,
DBGUI_WAIT_STATE_CHANGE  
)

◆ NtWaitForKeyedEvent()

◆ NtWaitForMultipleObjects()

NTSYSAPI NTSTATUS WINAPI NtWaitForMultipleObjects ( ULONG  ,
const HANDLE ,
BOOLEAN  ,
BOOLEAN  ,
const LARGE_INTEGER  
)

◆ NtWaitForSingleObject()

NTSYSAPI NTSTATUS WINAPI NtWaitForSingleObject ( HANDLE  ,
BOOLEAN  ,
const LARGE_INTEGER  
)

◆ NtWaitHighEventPair()

NTSYSAPI NTSTATUS WINAPI NtWaitHighEventPair ( HANDLE  )

◆ NtWaitLowEventPair()

NTSYSAPI NTSTATUS WINAPI NtWaitLowEventPair ( HANDLE  )

◆ NtWow64AllocateVirtualMemory64()

NTSYSAPI NTSTATUS WINAPI NtWow64AllocateVirtualMemory64 ( HANDLE  ,
ULONG64 ,
ULONG64  ,
ULONG64 ,
ULONG  ,
ULONG   
)

◆ NtWow64GetNativeSystemInformation()

NTSYSAPI NTSTATUS WINAPI NtWow64GetNativeSystemInformation ( SYSTEM_INFORMATION_CLASS  ,
void ,
ULONG  ,
ULONG  
)

◆ NtWow64IsProcessorFeaturePresent()

NTSYSAPI NTSTATUS WINAPI NtWow64IsProcessorFeaturePresent ( UINT  )

◆ NtWow64QueryInformationProcess64()

NTSYSAPI NTSTATUS WINAPI NtWow64QueryInformationProcess64 ( HANDLE  ,
PROCESSINFOCLASS  ,
void ,
ULONG  ,
ULONG  
)

◆ NtWow64ReadVirtualMemory64()

NTSYSAPI NTSTATUS WINAPI NtWow64ReadVirtualMemory64 ( HANDLE  ,
ULONG64  ,
void ,
ULONG64  ,
ULONG64  
)

◆ NtWow64WriteVirtualMemory64()

NTSYSAPI NTSTATUS WINAPI NtWow64WriteVirtualMemory64 ( HANDLE  ,
ULONG64  ,
const void ,
ULONG64  ,
ULONG64  
)

◆ NtWriteFile()

◆ NtWriteFileGather()

◆ NtWriteRequestData()

NTSYSAPI NTSTATUS WINAPI NtWriteRequestData ( HANDLE  ,
PLPC_MESSAGE  ,
ULONG  ,
PVOID  ,
ULONG  ,
PULONG   
)

◆ NtWriteVirtualMemory()

NTSYSAPI NTSTATUS WINAPI NtWriteVirtualMemory ( HANDLE  ,
void ,
const void ,
SIZE_T  ,
SIZE_T  
)

◆ NtYieldExecution()

NTSYSAPI NTSTATUS WINAPI NtYieldExecution ( void  )

Definition at line 887 of file thrdschd.c.

888{
891 PKPRCB Prcb;
892 PKTHREAD Thread, NextThread;
893
894 /* NB: No instructions (other than entry code) should preceed this line */
895
896 /* Fail if there's no ready summary */
898
899 /* Now get the current thread, set the status... */
902
903 /* Raise IRQL to synch and get the KPRCB now */
905 Prcb = KeGetCurrentPrcb();
906
907 /* Now check if there's still a ready summary */
908 if (Prcb->ReadySummary)
909 {
910 /* Acquire thread and PRCB lock */
912 KiAcquirePrcbLock(Prcb);
913
914 /* Find a new thread to run if none was selected */
915 if (!Prcb->NextThread) Prcb->NextThread = KiSelectReadyThread(1, Prcb);
916
917 /* Make sure we still have a next thread to schedule */
918 NextThread = Prcb->NextThread;
919 if (NextThread)
920 {
921 /* Reset quantum and recalculate priority */
922 Thread->Quantum = Thread->QuantumReset;
923 Thread->Priority = KiComputeNewPriority(Thread, 1);
924
925 /* Release the thread lock */
927
928 /* Set context swap busy */
930
931 /* Set the new thread as running */
932 Prcb->NextThread = NULL;
933 Prcb->CurrentThread = NextThread;
934 NextThread->State = Running;
935
936 /* Setup a yield wait and queue the thread */
937 Thread->WaitReason = WrYieldExecution;
938 KxQueueReadyThread(Thread, Prcb);
939
940 /* Make it wait at APC_LEVEL */
941 Thread->WaitIrql = APC_LEVEL;
942
943 /* Sanity check */
945
946 /* Swap to new thread */
949 }
950 else
951 {
952 /* Release the PRCB and thread lock */
953 KiReleasePrcbLock(Prcb);
955 }
956 }
957
958 /* Lower IRQL and return */
960 return Status;
961}
UCHAR KIRQL
Definition: env_spec_w32.h:591
#define APC_LEVEL
Definition: env_spec_w32.h:695
#define KeLowerIrql(oldIrql)
Definition: env_spec_w32.h:602
#define DISPATCH_LEVEL
Definition: env_spec_w32.h:696
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD Thread
Definition: fltkernel.h:2653
KIRQL NTAPI KeRaiseIrqlToSynchLevel(VOID)
Definition: pic.c:156
FORCEINLINE PKTHREAD KiSelectReadyThread(IN KPRIORITY Priority, IN PKPRCB Prcb)
Definition: ke_x.h:1422
FORCEINLINE VOID KiSetThreadSwapBusy(IN PKTHREAD Thread)
Definition: ke_x.h:210
FORCEINLINE VOID KiReleasePrcbLock(IN PKPRCB Prcb)
Definition: ke_x.h:230
FORCEINLINE VOID KiAcquireThreadLock(IN PKTHREAD Thread)
Definition: ke_x.h:240
FORCEINLINE VOID KiReleaseThreadLock(IN PKTHREAD Thread)
Definition: ke_x.h:250
FORCEINLINE VOID KiAcquirePrcbLock(IN PKPRCB Prcb)
Definition: ke_x.h:220
FORCEINLINE SCHAR KiComputeNewPriority(IN PKTHREAD Thread, IN SCHAR Adjustment)
Definition: ke_x.h:1472
FORCEINLINE struct _KPRCB * KeGetCurrentPrcb(VOID)
Definition: ketypes.h:1187
@ Running
Definition: ketypes.h:390
BOOLEAN FASTCALL KiSwapContext(IN KIRQL WaitIrql, IN PKTHREAD CurrentThread)
#define STATUS_NO_YIELD_PERFORMED
Definition: ntstatus.h:225
struct _KTHREAD * CurrentThread
Definition: ketypes.h:664
struct _KTHREAD * NextThread
Definition: ketypes.h:665
ULONG ReadySummary
Definition: ketypes.h:824
volatile UCHAR State
Definition: ketypes.h:1917
#define KiGetCurrentReadySummary()
Definition: thrdschd.c:879
_Requires_lock_held_ Interrupt _Releases_lock_ Interrupt _In_ _IRQL_restores_ KIRQL OldIrql
Definition: kefuncs.h:778
@ WrYieldExecution
Definition: ketypes.h:500

Referenced by IntReadConsole(), KeDelayExecutionThread(), and SwitchToThread().

◆ RemoveHeadList()

static PLIST_ENTRY RemoveHeadList ( PLIST_ENTRY  le)
inlinestatic

Definition at line 5410 of file winternl.h.

5411{
5412 PLIST_ENTRY f, b, e;
5413
5414 e = le->Flink;
5415 f = le->Flink->Flink;
5416 b = le->Flink->Blink;
5417 f->Blink = b;
5418 b->Flink = f;
5419
5420 if (e != le) e->Flink = e->Blink = NULL;
5421 return e;
5422}
GLfloat f
Definition: glext.h:7540
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
#define e
Definition: ke_i.h:82
#define f
Definition: ke_i.h:83
#define b
Definition: ke_i.h:79

◆ RemoveTailList()

static PLIST_ENTRY RemoveTailList ( PLIST_ENTRY  le)
inlinestatic

Definition at line 5423 of file winternl.h.

5424{
5425 PLIST_ENTRY f, b, e;
5426
5427 e = le->Blink;
5428 f = le->Blink->Flink;
5429 b = le->Blink->Blink;
5430 f->Blink = b;
5431 b->Flink = f;
5432
5433 if (e != le) e->Flink = e->Blink = NULL;
5434 return e;
5435}

◆ RtlAbsoluteToSelfRelativeSD()

NTSYSAPI NTSTATUS WINAPI RtlAbsoluteToSelfRelativeSD ( PSECURITY_DESCRIPTOR  ,
PSECURITY_DESCRIPTOR  ,
PULONG   
)

◆ RtlAcquirePebLock()

◆ RtlAcquireResourceExclusive()

NTSYSAPI BYTE WINAPI RtlAcquireResourceExclusive ( LPRTL_RWLOCK  ,
BYTE   
)

◆ RtlAcquireResourceShared()

NTSYSAPI BYTE WINAPI RtlAcquireResourceShared ( LPRTL_RWLOCK  ,
BYTE   
)

◆ RtlAcquireSRWLockExclusive()

NTSYSAPI void WINAPI RtlAcquireSRWLockExclusive ( RTL_SRWLOCK )

◆ RtlAcquireSRWLockShared()

NTSYSAPI void WINAPI RtlAcquireSRWLockShared ( RTL_SRWLOCK )

◆ RtlActivateActivationContext()

NTSYSAPI NTSTATUS WINAPI RtlActivateActivationContext ( DWORD  ,
HANDLE  ,
ULONG_PTR  
)

Referenced by ActivateActCtx().

◆ RtlActivateActivationContextEx()

NTSYSAPI NTSTATUS WINAPI RtlActivateActivationContextEx ( ULONG  flags,
TEB teb,
HANDLE  handle,
ULONG_PTR cookie 
)

Definition at line 5417 of file actctx.c.

5418{
5420
5421 if (!(frame = RtlAllocateHeap( GetProcessHeap(), 0, sizeof(*frame) )))
5422 return STATUS_NO_MEMORY;
5423
5424 frame->Previous = teb->ActivationContextStackPointer->ActiveFrame;
5425 frame->ActivationContext = handle;
5426 frame->Flags = 0;
5427
5428 DPRINT("ActiveSP %p: ACTIVATE (ActiveFrame %p -> NewFrame %p, Context %p)\n",
5430 frame, handle);
5431
5432 teb->ActivationContextStackPointer->ActiveFrame = frame;
5434
5435 *cookie = (ULONG_PTR)frame;
5436 TRACE( "%p cookie=%lx\n", handle, *cookie );
5437 return STATUS_SUCCESS;
5438}
PVOID NTAPI RtlAllocateHeap(IN PVOID HeapHandle, IN ULONG Flags, IN SIZE_T Size)
Definition: heap.c:616
#define STATUS_NO_MEMORY
Definition: d3dkmdt.h:51
#define GetProcessHeap()
Definition: compat.h:736
#define ULONG_PTR
Definition: config.h:101
void WINAPI RtlAddRefActivationContext(HANDLE handle)
Definition: actctx.c:5373
#define TRACE(s)
Definition: solgame.cpp:4
struct _ACTIVATION_CONTEXT * ActivationContext
Definition: winternl.h:324
struct _RTL_ACTIVATION_CONTEXT_STACK_FRAME * Previous
Definition: winternl.h:323
PVOID ActivationContextStackPointer
Definition: compat.h:854
Definition: cookie.c:34

Referenced by CreateRemoteThread(), and RtlActivateActivationContext().

◆ RtlAddAccessAllowedAce()

◆ RtlAddAccessAllowedAceEx()

◆ RtlAddAccessAllowedObjectAce()

NTSYSAPI NTSTATUS WINAPI RtlAddAccessAllowedObjectAce ( PACL  ,
DWORD  ,
DWORD  ,
DWORD  ,
GUID ,
GUID ,
PSID   
)

◆ RtlAddAccessDeniedAce()

NTSYSAPI NTSTATUS WINAPI RtlAddAccessDeniedAce ( PACL  ,
DWORD  ,
DWORD  ,
PSID   
)

◆ RtlAddAccessDeniedAceEx()

NTSYSAPI NTSTATUS WINAPI RtlAddAccessDeniedAceEx ( PACL  ,
DWORD  ,
DWORD  ,
DWORD  ,
PSID   
)

◆ RtlAddAccessDeniedObjectAce()

NTSYSAPI NTSTATUS WINAPI RtlAddAccessDeniedObjectAce ( PACL  ,
DWORD  ,
DWORD  ,
DWORD  ,
GUID ,
GUID ,
PSID   
)

◆ RtlAddAce()

NTSYSAPI NTSTATUS WINAPI RtlAddAce ( PACL  ,
DWORD  ,
DWORD  ,
PACE_HEADER  ,
DWORD   
)

◆ RtlAddAtomToAtomTable()

NTSYSAPI NTSTATUS WINAPI RtlAddAtomToAtomTable ( RTL_ATOM_TABLE  ,
const WCHAR ,
RTL_ATOM  
)

◆ RtlAddAuditAccessAce()

NTSYSAPI NTSTATUS WINAPI RtlAddAuditAccessAce ( PACL  ,
DWORD  ,
DWORD  ,
PSID  ,
BOOL  ,
BOOL   
)

◆ RtlAddAuditAccessAceEx()

NTSYSAPI NTSTATUS WINAPI RtlAddAuditAccessAceEx ( PACL  ,
DWORD  ,
DWORD  ,
DWORD  ,
PSID  ,
BOOL  ,
BOOL   
)

◆ RtlAddAuditAccessObjectAce()

NTSYSAPI NTSTATUS WINAPI RtlAddAuditAccessObjectAce ( PACL  ,
DWORD  ,
DWORD  ,
DWORD  ,
GUID ,
GUID ,
PSID  ,
BOOL  ,
BOOL   
)

◆ RtlAddMandatoryAce()

NTSYSAPI NTSTATUS WINAPI RtlAddMandatoryAce ( PACL  ,
DWORD  ,
DWORD  ,
DWORD  ,
DWORD  ,
PSID   
)

◆ RtlAddProcessTrustLabelAce()

NTSYSAPI NTSTATUS WINAPI RtlAddProcessTrustLabelAce ( PACL  ,
DWORD  ,
DWORD  ,
PSID  ,
DWORD  ,
DWORD   
)

◆ RtlAddRefActivationContext()

NTSYSAPI void WINAPI RtlAddRefActivationContext ( HANDLE  handle)

Definition at line 5373 of file actctx.c.

5374{
5376
5378}
#define actctx
Definition: kernel32.h:8
static void actctx_addref(ACTIVATION_CONTEXT *actctx)
Definition: actctx.c:1224
static ACTIVATION_CONTEXT * check_actctx(HANDLE h)
Definition: actctx.c:1207

Referenced by AddRefActCtx(), RtlActivateActivationContextEx(), RtlGetActiveActivationContext(), and RtlQueryInformationActivationContext().

◆ RtlAddressInSectionTable()

NTSYSAPI PVOID WINAPI RtlAddressInSectionTable ( const IMAGE_NT_HEADERS ,
HMODULE  ,
DWORD   
)

◆ RtlAddVectoredContinueHandler()

NTSYSAPI PVOID WINAPI RtlAddVectoredContinueHandler ( ULONG  ,
PVECTORED_EXCEPTION_HANDLER   
)

◆ RtlAddVectoredExceptionHandler()

NTSYSAPI PVOID WINAPI RtlAddVectoredExceptionHandler ( ULONG  ,
PVECTORED_EXCEPTION_HANDLER   
)

◆ RtlAdjustPrivilege()

NTSYSAPI NTSTATUS WINAPI RtlAdjustPrivilege ( ULONG  ,
BOOLEAN  ,
BOOLEAN  ,
PBOOLEAN   
)

◆ RtlAllocateAndInitializeSid()

NTSYSAPI NTSTATUS WINAPI RtlAllocateAndInitializeSid ( PSID_IDENTIFIER_AUTHORITY  ,
BYTE  ,
DWORD  ,
DWORD  ,
DWORD  ,
DWORD  ,
DWORD  ,
DWORD  ,
DWORD  ,
DWORD  ,
PSID  
)

◆ RtlAllocateHandle()

NTSYSAPI RTL_HANDLE *WINAPI RtlAllocateHandle ( RTL_HANDLE_TABLE ,
ULONG  
)

◆ RtlAllocateHeap()

NTSYSAPI PVOID WINAPI RtlAllocateHeap ( HANDLE  Heap,
ULONG  Flags,
SIZE_T  Size 
)

◆ RtlAnsiCharToUnicodeChar()

NTSYSAPI WCHAR WINAPI RtlAnsiCharToUnicodeChar ( LPSTR )

Referenced by GetTempFileNameW(), and mbtowc().

◆ RtlAnsiStringToUnicodeSize()

NTSYSAPI DWORD WINAPI RtlAnsiStringToUnicodeSize ( const STRING )

◆ RtlAnsiStringToUnicodeString()

NTSYSAPI NTSTATUS WINAPI RtlAnsiStringToUnicodeString ( PUNICODE_STRING  ,
PCANSI_STRING  ,
BOOLEAN   
)

◆ RtlAppendAsciizToString()

NTSYSAPI NTSTATUS WINAPI RtlAppendAsciizToString ( STRING ,
LPCSTR   
)

◆ RtlAppendStringToString()

NTSYSAPI NTSTATUS WINAPI RtlAppendStringToString ( STRING ,
const STRING  
)

◆ RtlAppendUnicodeStringToString()

NTSYSAPI NTSTATUS WINAPI RtlAppendUnicodeStringToString ( UNICODE_STRING ,
const UNICODE_STRING  
)

◆ RtlAppendUnicodeToString()

NTSYSAPI NTSTATUS WINAPI RtlAppendUnicodeToString ( UNICODE_STRING ,
LPCWSTR   
)

◆ RtlAreAllAccessesGranted()

NTSYSAPI BOOLEAN WINAPI RtlAreAllAccessesGranted ( ACCESS_MASK  ,
ACCESS_MASK   
)

◆ RtlAreAnyAccessesGranted()

NTSYSAPI BOOLEAN WINAPI RtlAreAnyAccessesGranted ( ACCESS_MASK  ,
ACCESS_MASK   
)

◆ RtlAreBitsClear()

NTSYSAPI BOOLEAN WINAPI RtlAreBitsClear ( PCRTL_BITMAP  ,
ULONG  ,
ULONG   
)

◆ RtlAreBitsSet()

NTSYSAPI BOOLEAN WINAPI RtlAreBitsSet ( PCRTL_BITMAP  ,
ULONG  ,
ULONG   
)

◆ RtlCharToInteger()

NTSYSAPI NTSTATUS WINAPI RtlCharToInteger ( PCSZ  str,
ULONG  base,
PULONG  value 
)

Definition at line 261 of file unicode.c.

265{
266 CHAR chCurrent;
267 int digit;
268 ULONG RunningTotal = 0;
269 char bMinus = 0;
270
271 /* skip leading whitespaces */
272 while (*str != '\0' && *str <= ' ') str++;
273
274 /* Check for +/- */
275 if (*str == '+')
276 {
277 str++;
278 }
279 else if (*str == '-')
280 {
281 bMinus = 1;
282 str++;
283 }
284
285 /* base = 0 means autobase */
286 if (base == 0)
287 {
288 base = 10;
289
290 if (str[0] == '0')
291 {
292 if (str[1] == 'b')
293 {
294 str += 2;
295 base = 2;
296 }
297 else if (str[1] == 'o')
298 {
299 str += 2;
300 base = 8;
301 }
302 else if (str[1] == 'x')
303 {
304 str += 2;
305 base = 16;
306 }
307 }
308 }
309 else if (base != 2 && base != 8 && base != 10 && base != 16)
310 {
312 }
313
314 if (value == NULL) return STATUS_ACCESS_VIOLATION;
315
316 while (*str != '\0')
317 {
318 chCurrent = *str;
319
320 if (chCurrent >= '0' && chCurrent <= '9')
321 {
322 digit = chCurrent - '0';
323 }
324 else if (chCurrent >= 'A' && chCurrent <= 'Z')
325 {
326 digit = chCurrent - 'A' + 10;
327 }
328 else if (chCurrent >= 'a' && chCurrent <= 'z')
329 {
330 digit = chCurrent - 'a' + 10;
331 }
332 else
333 {
334 digit = -1;
335 }
336
337 if (digit < 0 || digit >= (int)base) break;
338
339 RunningTotal = RunningTotal * base + digit;
340 str++;
341 }
342
343 *value = bMinus ? (0 - RunningTotal) : RunningTotal;
344 return STATUS_SUCCESS;
345}
#define STATUS_ACCESS_VIOLATION
const WCHAR * str
#define STATUS_INVALID_PARAMETER
Definition: udferr_usr.h:135
Definition: pdh_main.c:96
char CHAR
Definition: xmlstorage.h:175

◆ RtlCheckBit()

static BOOLEAN RtlCheckBit ( PCRTL_BITMAP  lpBits,
ULONG  ulBit 
)
inlinestatic

Definition at line 5380 of file winternl.h.

5381{
5382 if (lpBits && ulBit < lpBits->SizeOfBitMap &&
5383 lpBits->Buffer[ulBit >> 5] & (1 << (ulBit & 31)))
5384 return TRUE;
5385 return FALSE;
5386}
PULONG Buffer
Definition: typedefs.h:91

◆ RtlCheckRegistryKey()

NTSYSAPI NTSTATUS WINAPI RtlCheckRegistryKey ( ULONG  ,
PWSTR   
)

Referenced by InitFunctionPtrs().

◆ RtlClearAllBits()

NTSYSAPI void WINAPI RtlClearAllBits ( PRTL_BITMAP  )

◆ RtlClearBits()

NTSYSAPI void WINAPI RtlClearBits ( PRTL_BITMAP  ,
ULONG  ,
ULONG   
)

◆ RtlCompactHeap()

NTSYSAPI ULONG WINAPI RtlCompactHeap ( HANDLE  Heap,
ULONG  Flags 
)

Definition at line 3103 of file heap.c.

3105{
3107 return 0;
3108}

Referenced by GlobalCompact(), HeapCompact(), LocalCompact(), and LocalShrink().

◆ RtlCompareUnicodeString()

NTSYSAPI LONG WINAPI RtlCompareUnicodeString ( const UNICODE_STRING ,
const UNICODE_STRING ,
BOOLEAN   
)

◆ RtlCompareUnicodeStrings()

NTSYSAPI LONG WINAPI RtlCompareUnicodeStrings ( const WCHAR ,
SIZE_T  ,
const WCHAR ,
SIZE_T  ,
BOOLEAN   
)

◆ RtlCompressBuffer()

NTSYSAPI NTSTATUS WINAPI RtlCompressBuffer ( USHORT  ,
PUCHAR  ,
ULONG  ,
PUCHAR  ,
ULONG  ,
ULONG  ,
PULONG  ,
PVOID   
)

◆ RtlComputeCrc32()

NTSYSAPI DWORD WINAPI RtlComputeCrc32 ( DWORD  ,
const BYTE ,
INT   
)

◆ RtlConvertLongToLargeInteger()

NTSYSAPI LONGLONG WINAPI RtlConvertLongToLargeInteger ( LONG  SignedInteger)

Definition at line 31 of file largeint.c.

34{
36
37 RC.QuadPart = SignedInteger;
38
39 return RC;
40}

Referenced by WSPCloseSocket(), and WSPShutdown().

◆ RtlConvertSidToUnicodeString()

NTSYSAPI NTSTATUS WINAPI RtlConvertSidToUnicodeString ( PUNICODE_STRING  ,
PSID  ,
BOOLEAN   
)

◆ RtlConvertToAutoInheritSecurityObject()

◆ RtlConvertUlongToLargeInteger()

NTSYSAPI ULONGLONG WINAPI RtlConvertUlongToLargeInteger ( ULONG  UnsignedInteger)

Definition at line 47 of file largeint.c.

50{
52
53 RC.QuadPart = UnsignedInteger;
54
55 return RC;
56}

Referenced by HalpGetResourceSortValue(), NdisAllocateMemory(), NdisMDeregisterIoPortRange(), and NdisMRegisterIoPortRange().

◆ RtlCopyContext()

NTSYSAPI NTSTATUS WINAPI RtlCopyContext ( CONTEXT ,
DWORD  ,
CONTEXT  
)

Referenced by CopyContext().

◆ RtlCopyExtendedContext()

NTSYSAPI NTSTATUS WINAPI RtlCopyExtendedContext ( CONTEXT_EX ,
ULONG  ,
CONTEXT_EX  
)

◆ RtlCopyLuid()

◆ RtlCopyLuidAndAttributesArray()

NTSYSAPI void WINAPI RtlCopyLuidAndAttributesArray ( ULONG  ,
const LUID_AND_ATTRIBUTES ,
PLUID_AND_ATTRIBUTES   
)

◆ RtlCopySecurityDescriptor()

NTSYSAPI NTSTATUS WINAPI RtlCopySecurityDescriptor ( PSECURITY_DESCRIPTOR  ,
PSECURITY_DESCRIPTOR   
)

◆ RtlCopySid()

◆ RtlCopyUnicodeString()

NTSYSAPI void WINAPI RtlCopyUnicodeString ( UNICODE_STRING ,
const UNICODE_STRING  
)

◆ RtlCreateAcl()

NTSYSAPI NTSTATUS WINAPI RtlCreateAcl ( PACL  ,
DWORD  ,
DWORD   
)

◆ RtlCreateActivationContext()

NTSYSAPI NTSTATUS WINAPI RtlCreateActivationContext ( HANDLE ,
const void  
)

◆ RtlCreateAtomTable()

NTSYSAPI NTSTATUS WINAPI RtlCreateAtomTable ( ULONG  ,
RTL_ATOM_TABLE  
)

◆ RtlCreateEnvironment()

NTSYSAPI NTSTATUS WINAPI RtlCreateEnvironment ( BOOLEAN  Inherit,
PWSTR OutEnvironment 
)

Definition at line 31 of file env.c.

34{
36 PVOID CurrentEnvironment, NewEnvironment = NULL;
39
40 /* Check if we should inherit the current environment */
41 if (Inherit)
42 {
43 /* In this case we need to lock the PEB */
45
46 /* Get a pointer to the current Environment and check if it's not NULL */
47 CurrentEnvironment = NtCurrentPeb()->ProcessParameters->Environment;
48 if (CurrentEnvironment != NULL)
49 {
50 /* Query the size of the current environment allocation */
52 CurrentEnvironment,
54 &MemInfo,
56 NULL);
57 if (!NT_SUCCESS(Status))
58 {
60 *OutEnvironment = NULL;
61 return Status;
62 }
63
64 /* Allocate a new region of the same size */
65 RegionSize = MemInfo.RegionSize;
67 &NewEnvironment,
68 0,
72 if (!NT_SUCCESS(Status))
73 {
75 *OutEnvironment = NULL;
76 return Status;
77 }
78
79 /* Copy the current environment */
80 RtlCopyMemory(NewEnvironment,
81 CurrentEnvironment,
82 MemInfo.RegionSize);
83 }
84
85 /* We are done with the PEB, release the lock */
87 }
88
89 /* Check if we still need an environment */
90 if (NewEnvironment == NULL)
91 {
92 /* Allocate a new environment */
94 &NewEnvironment,
95 0,
99 if (NT_SUCCESS(Status))
100 {
101 RtlZeroMemory(NewEnvironment, RegionSize);
102 }
103 }
104
105 *OutEnvironment = NewEnvironment;
106
107 return Status;
108}
#define PAGE_SIZE
Definition: env_spec_w32.h:49
__kernel_entry _Inout_ _Inout_ PSIZE_T RegionSize
Definition: mmfuncs.h:172
@ MemoryBasicInformation
Definition: mmtypes.h:183
#define PAGE_READWRITE
Definition: nt_native.h:1307
#define NtCurrentProcess()
Definition: nt_native.h:1660
#define MEM_RESERVE
Definition: nt_native.h:1317
#define MEM_COMMIT
Definition: nt_native.h:1316
NTSTATUS NTAPI NtQueryVirtualMemory(IN HANDLE ProcessHandle, IN PVOID BaseAddress, IN MEMORY_INFORMATION_CLASS MemoryInformationClass, OUT PVOID MemoryInformation, IN SIZE_T MemoryInformationLength, OUT PSIZE_T ReturnLength)
Definition: virtual.c:4374
NTSTATUS NTAPI NtAllocateVirtualMemory(IN HANDLE ProcessHandle, IN OUT PVOID *UBaseAddress, IN ULONG_PTR ZeroBits, IN OUT PSIZE_T URegionSize, IN ULONG AllocationType, IN ULONG Protect)
Definition: virtual.c:4457
ULONG_PTR SIZE_T
Definition: typedefs.h:80

◆ RtlCreateHeap()

NTSYSAPI HANDLE WINAPI RtlCreateHeap ( ULONG  Flags,
PVOID  Addr,
SIZE_T  TotalSize,
SIZE_T  CommitSize,
PVOID  Lock,
PRTL_HEAP_PARAMETERS  Parameters 
)

Definition at line 1422 of file heap.c.

1428{
1429 PVOID CommittedAddress = NULL, UncommittedAddress = NULL;
1430 PHEAP Heap = NULL;
1431 RTL_HEAP_PARAMETERS SafeParams = {0};
1432 ULONG_PTR MaximumUserModeAddress;
1433 SYSTEM_BASIC_INFORMATION SystemInformation;
1434 MEMORY_BASIC_INFORMATION MemoryInfo;
1435 ULONG NtGlobalFlags = RtlGetNtGlobalFlags();
1436 ULONG HeapSegmentFlags = 0;
1438 ULONG MaxBlockSize;
1439
1440 /* Check for a special heap */
1441 if (RtlpPageHeapEnabled && !Addr && !Lock)
1442 {
1443 Heap = RtlpPageHeapCreate(Flags, Addr, TotalSize, CommitSize, Lock, Parameters);
1444 if (Heap) return Heap;
1445
1446 /* Reset a special Parameters == -1 hack */
1447 if ((ULONG_PTR)Parameters == (ULONG_PTR)-1)
1448 Parameters = NULL;
1449 else
1450 DPRINT1("Enabling page heap failed\n");
1451 }
1452
1453 /* Check validation flags */
1455 {
1456 DPRINT1("Invalid flags 0x%08x, fixing...\n", Flags);
1458 }
1459
1460 /* Capture parameters */
1461 if (Parameters)
1462 {
1463 _SEH2_TRY
1464 {
1465 /* If size of structure correct, then copy it */
1466 if (Parameters->Length == sizeof(RTL_HEAP_PARAMETERS))
1467 RtlCopyMemory(&SafeParams, Parameters, sizeof(RTL_HEAP_PARAMETERS));
1468 }
1470 {
1471 _SEH2_YIELD(return NULL);
1472 }
1473 _SEH2_END;
1474 }
1475
1476 Parameters = &SafeParams;
1477
1478 /* Check global flags */
1479 if (NtGlobalFlags & FLG_HEAP_DISABLE_COALESCING)
1481
1482 if (NtGlobalFlags & FLG_HEAP_ENABLE_FREE_CHECK)
1484
1485 if (NtGlobalFlags & FLG_HEAP_ENABLE_TAIL_CHECK)
1487
1488 if (RtlpGetMode() == UserMode)
1489 {
1490 /* Also check these flags if in usermode */
1491 if (NtGlobalFlags & FLG_HEAP_VALIDATE_ALL)
1493
1494 if (NtGlobalFlags & FLG_HEAP_VALIDATE_PARAMETERS)
1496
1497 if (NtGlobalFlags & FLG_USER_STACK_TRACE_DB)
1499 }
1500
1501 /* Set tunable parameters */
1503
1504 /* Get the max um address */
1506 &SystemInformation,
1507 sizeof(SystemInformation),
1508 NULL);
1509
1510 if (!NT_SUCCESS(Status))
1511 {
1512 DPRINT1("Getting max usermode address failed with status 0x%08x\n", Status);
1513 return NULL;
1514 }
1515
1516 MaximumUserModeAddress = SystemInformation.MaximumUserModeAddress;
1517
1518 /* Calculate max alloc size */
1519 if (!Parameters->MaximumAllocationSize)
1520 Parameters->MaximumAllocationSize = MaximumUserModeAddress - (ULONG_PTR)0x10000 - PAGE_SIZE;
1521
1522 MaxBlockSize = 0x80000 - PAGE_SIZE;
1523
1524 if (!Parameters->VirtualMemoryThreshold ||
1525 Parameters->VirtualMemoryThreshold > MaxBlockSize)
1526 {
1527 Parameters->VirtualMemoryThreshold = MaxBlockSize;
1528 }
1529
1530 if (Parameters->DeCommitFreeBlockThreshold != PAGE_SIZE)
1531 {
1532 DPRINT1("WARNING: Ignoring DeCommitFreeBlockThreshold %lx, setting it to PAGE_SIZE.\n",
1533 Parameters->DeCommitFreeBlockThreshold);
1534 Parameters->DeCommitFreeBlockThreshold = PAGE_SIZE;
1535 }
1536
1537 /* Check reserve/commit sizes and set default values */
1538 if (!CommitSize)
1539 {
1541 if (TotalSize)
1542 TotalSize = ROUND_UP(TotalSize, PAGE_SIZE);
1543 else
1544 TotalSize = 64 * PAGE_SIZE;
1545 }
1546 else
1547 {
1548 /* Round up the commit size to be at least the page size */
1550
1551 if (TotalSize)
1552 TotalSize = ROUND_UP(TotalSize, PAGE_SIZE);
1553 else
1554 TotalSize = ROUND_UP(CommitSize, 16 * PAGE_SIZE);
1555 }
1556
1557 /* Call special heap */
1559 return RtlDebugCreateHeap(Flags, Addr, TotalSize, CommitSize, Lock, Parameters);
1560
1561 /* Without serialization, a lock makes no sense */
1562 if ((Flags & HEAP_NO_SERIALIZE) && (Lock != NULL))
1563 return NULL;
1564
1565 /* See if we are already provided with an address for the heap */
1566 if (Addr)
1567 {
1568 if (Parameters->CommitRoutine)
1569 {
1570 /* There is a commit routine, so no problem here, check params */
1571 if ((Flags & HEAP_GROWABLE) ||
1572 !Parameters->InitialCommit ||
1573 !Parameters->InitialReserve ||
1574 (Parameters->InitialCommit > Parameters->InitialReserve))
1575 {
1576 /* Fail */
1577 return NULL;
1578 }
1579
1580 /* Calculate committed and uncommitted addresses */
1581 CommittedAddress = Addr;
1582 UncommittedAddress = (PCHAR)Addr + Parameters->InitialCommit;
1583 TotalSize = Parameters->InitialReserve;
1584
1585 /* Zero the initial page ourselves */
1586 RtlZeroMemory(CommittedAddress, PAGE_SIZE);
1587 }
1588 else
1589 {
1590 /* Commit routine is absent, so query how much memory caller reserved */
1592 Addr,
1594 &MemoryInfo,
1595 sizeof(MemoryInfo),
1596 NULL);
1597
1598 if (!NT_SUCCESS(Status))
1599 {
1600 DPRINT1("Querying amount of user supplied memory failed with status 0x%08X\n", Status);
1601 return NULL;
1602 }
1603
1604 /* Validate it */
1605 if (MemoryInfo.BaseAddress != Addr ||
1606 MemoryInfo.State == MEM_FREE)
1607 {
1608 return NULL;
1609 }
1610
1611 /* Validation checks passed, set committed/uncommitted addresses */
1612 CommittedAddress = Addr;
1613
1614 /* Check if it's committed or not */
1615 if (MemoryInfo.State == MEM_COMMIT)
1616 {
1617 /* Zero it out because it's already committed */
1618 RtlZeroMemory(CommittedAddress, PAGE_SIZE);
1619
1620 /* Calculate uncommitted address value */
1621 CommitSize = MemoryInfo.RegionSize;
1622 TotalSize = CommitSize;
1623 UncommittedAddress = (PCHAR)Addr + CommitSize;
1624
1625 /* Check if uncommitted address is reserved */
1627 UncommittedAddress,
1629 &MemoryInfo,
1630 sizeof(MemoryInfo),
1631 NULL);
1632
1633 if (NT_SUCCESS(Status) &&
1634 MemoryInfo.State == MEM_RESERVE)
1635 {
1636 /* It is, so add it up to the reserve size */
1637 TotalSize += MemoryInfo.RegionSize;
1638 }
1639 }
1640 else
1641 {
1642 /* It's not committed, inform following code that a commit is necessary */
1644 UncommittedAddress = Addr;
1645 }
1646 }
1647
1648 /* Mark this as a user-committed mem */
1649 HeapSegmentFlags = HEAP_USER_ALLOCATED;
1650 Heap = (PHEAP)Addr;
1651 }
1652 else
1653 {
1654 /* Check commit routine */
1655 if (Parameters->CommitRoutine) return NULL;
1656
1657 /* Reserve memory */
1658 Status = ZwAllocateVirtualMemory(NtCurrentProcess(),
1659 (PVOID *)&Heap,
1660 0,
1661 &TotalSize,
1664
1665 if (!NT_SUCCESS(Status))
1666 {
1667 DPRINT1("Failed to reserve memory with status 0x%08x\n", Status);
1668 return NULL;
1669 }
1670
1671 /* Set base addresses */
1672 CommittedAddress = Heap;
1673 UncommittedAddress = Heap;
1674 }
1675
1676 /* Check if we need to commit something */
1677 if (CommittedAddress == UncommittedAddress)
1678 {
1679 /* Commit the required size */
1680 Status = ZwAllocateVirtualMemory(NtCurrentProcess(),
1681 &CommittedAddress,
1682 0,
1683 &CommitSize,
1684 MEM_COMMIT,
1686
1687 DPRINT("Committed %Iu bytes at base %p\n", CommitSize, CommittedAddress);
1688
1689 if (!NT_SUCCESS(Status))
1690 {
1691 DPRINT1("Failure, Status 0x%08X\n", Status);
1692
1693 /* Release memory if it was reserved */
1694 if (!Addr) ZwFreeVirtualMemory(NtCurrentProcess(),
1695 (PVOID *)&Heap,
1696 &TotalSize,
1697 MEM_RELEASE);
1698
1699 return NULL;
1700 }
1701
1702 /* Calculate new uncommitted address */
1703 UncommittedAddress = (PCHAR)UncommittedAddress + CommitSize;
1704 }
1705
1706 /* Initialize the heap */
1708 if (!NT_SUCCESS(Status))
1709 {
1710 DPRINT1("Failed to initialize heap (%x)\n", Status);
1711 return NULL;
1712 }
1713
1714 /* Initialize heap's first segment */
1715 Status = RtlpInitializeHeapSegment(Heap, (PHEAP_SEGMENT) (Heap), 0, HeapSegmentFlags, TotalSize, CommitSize);
1716 if (!NT_SUCCESS(Status))
1717 {
1718 DPRINT1("Failed to initialize heap segment (%x)\n", Status);
1719 return NULL;
1720 }
1721
1722 DPRINT("Created heap %p, CommitSize %x, ReserveSize %x\n", Heap, CommitSize, TotalSize);
1723
1724 /* Add heap to process list in case of usermode heap */
1725 if (RtlpGetMode() == UserMode)
1726 {
1728
1729 // FIXME: What about lookasides?
1730 }
1731
1732 return Heap;
1733}
struct _HEAP * PHEAP
KPROCESSOR_MODE NTAPI RtlpGetMode(VOID)
Definition: libsupp.c:55
VOID NTAPI RtlpSetHeapParameters(IN PRTL_HEAP_PARAMETERS Parameters)
Definition: libsupp.c:176
#define ROUND_UP(n, align)
Definition: eventvwr.h:34
NTSYSAPI NTSTATUS NTAPI ZwQuerySystemInformation(IN SYSTEM_INFORMATION_CLASS SystemInfoClass, OUT PVOID SystemInfoBuffer, IN ULONG SystemInfoBufferSize, OUT PULONG BytesReturned OPTIONAL)
@ SystemBasicInformation
Definition: ntddk_ex.h:11
#define FLG_HEAP_DISABLE_COALESCING
Definition: pstypes.h:80
#define FLG_USER_STACK_TRACE_DB
Definition: pstypes.h:67
#define FLG_HEAP_ENABLE_FREE_CHECK
Definition: pstypes.h:61
#define FLG_HEAP_VALIDATE_PARAMETERS
Definition: pstypes.h:62
#define FLG_HEAP_ENABLE_TAIL_CHECK
Definition: pstypes.h:60
#define FLG_HEAP_VALIDATE_ALL
Definition: pstypes.h:63
NTSYSAPI ULONG WINAPI RtlGetNtGlobalFlags(void)
Definition: libsupp.c:95
#define PCHAR
Definition: match.c:90
#define UserMode
Definition: asm.h:39
NTSYSAPI NTSTATUS NTAPI ZwQueryVirtualMemory(_In_ HANDLE ProcessHandle, _In_ PVOID Address, _In_ MEMORY_INFORMATION_CLASS VirtualMemoryInformationClass, _Out_ PVOID VirtualMemoryInformation, _In_ SIZE_T Length, _Out_opt_ PSIZE_T ResultLength)
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID _In_ ULONG_PTR _In_ SIZE_T CommitSize
Definition: mmfuncs.h:406
#define HEAP_SKIP_VALIDATION_CHECKS
Definition: rtltypes.h:165
#define HEAP_VALIDATE_ALL_ENABLED
Definition: rtltypes.h:166
#define HEAP_CAPTURE_STACK_BACKTRACES
Definition: rtltypes.h:164
#define HEAP_VALIDATE_PARAMETERS_ENABLED
Definition: rtltypes.h:167
#define MEM_FREE
Definition: nt_native.h:1320
#define HEAP_FREE_CHECKING_ENABLED
Definition: nt_native.h:1701
#define HEAP_DISABLE_COALESCE_ON_FREE
Definition: nt_native.h:1702
#define HEAP_TAIL_CHECKING_ENABLED
Definition: nt_native.h:1700
#define HEAP_GROWABLE
Definition: nt_native.h:1696
#define MEM_RELEASE
Definition: nt_native.h:1319
#define HEAP_CREATE_VALID_MASK
Definition: nt_native.h:1731
#define HEAP_NO_SERIALIZE
Definition: nt_native.h:1695
HANDLE NTAPI RtlpPageHeapCreate(ULONG Flags, PVOID Addr, SIZE_T TotalSize, SIZE_T CommitSize, PVOID Lock, PRTL_HEAP_PARAMETERS Parameters)
Definition: heappage.c:1537
BOOLEAN RtlpPageHeapEnabled
Definition: heappage.c:107
VOID NTAPI RtlpAddHeapToProcessList(struct _HEAP *Heap)
Definition: libsupp.c:230
NTSTATUS NTAPI RtlpInitializeHeapSegment(IN OUT PHEAP Heap, OUT PHEAP_SEGMENT Segment, IN UCHAR SegmentIndex, IN ULONG SegmentFlags, IN SIZE_T SegmentReserve, IN SIZE_T SegmentCommit)
Definition: heap.c:1015
NTSTATUS NTAPI RtlpInitializeHeap(OUT PHEAP Heap, IN ULONG Flags, IN PHEAP_LOCK Lock OPTIONAL, IN PRTL_HEAP_PARAMETERS Parameters)
Definition: heap.c:106
FORCEINLINE BOOLEAN RtlpHeapIsSpecial(ULONG Flags)
Definition: heap.h:59
NTSYSAPI HANDLE NTAPI RtlDebugCreateHeap(ULONG Flags, PVOID Addr, SIZE_T TotalSize, SIZE_T CommitSize, PVOID Lock, PRTL_HEAP_PARAMETERS Parameters)
Definition: heapdbg.c:20
#define HEAP_USER_ALLOCATED
Definition: heap.h:55
Definition: heap.c:52
uint32_t ULONG_PTR
Definition: typedefs.h:65
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ WDFREQUEST _In_opt_ WDFFILEOBJECT _Inout_opt_ PWDF_REQUEST_PARAMETERS Parameters
Definition: wdfio.h:869
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWAITLOCK * Lock
Definition: wdfsync.h:127
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170

◆ RtlCreateProcessParameters()

◆ RtlCreateProcessParametersEx()

◆ RtlCreateQueryDebugBuffer()

NTSYSAPI PDEBUG_BUFFER WINAPI RtlCreateQueryDebugBuffer ( ULONG  ,
BOOLEAN   
)

◆ RtlCreateRegistryKey()

NTSYSAPI NTSTATUS WINAPI RtlCreateRegistryKey ( ULONG  ,
PWSTR   
)

◆ RtlCreateSecurityDescriptor()

NTSYSAPI NTSTATUS WINAPI RtlCreateSecurityDescriptor ( PSECURITY_DESCRIPTOR  ,
DWORD   
)

◆ RtlCreateTimer()

NTSYSAPI NTSTATUS WINAPI RtlCreateTimer ( HANDLE  TimerQueue,
HANDLE NewTimer,
RTL_WAITORTIMERCALLBACKFUNC  Callback,
PVOID  Parameter,
DWORD  DueTime,
DWORD  Period,
ULONG  Flags 
)

Definition at line 1003 of file threadpool.c.

1007{
1009 struct queue_timer *t;
1010 struct timer_queue *q = get_timer_queue(TimerQueue);
1011
1012 if (!q) return STATUS_NO_MEMORY;
1013 if (q->magic != TIMER_QUEUE_MAGIC) return STATUS_INVALID_HANDLE;
1014
1015 t = RtlAllocateHeap(GetProcessHeap(), 0, sizeof *t);
1016 if (!t)
1017 return STATUS_NO_MEMORY;
1018
1019 t->q = q;
1020 t->runcount = 0;
1021 t->callback = Callback;
1022 t->param = Parameter;
1023 t->period = Period;
1024 t->flags = Flags;
1025 t->destroy = FALSE;
1026 t->event = NULL;
1027
1030 if (q->quit)
1032 else
1035
1036 if (status == STATUS_SUCCESS)
1037 *NewTimer = t;
1038 else
1040
1041 return status;
1042}
#define STATUS_INVALID_HANDLE
Definition: d3dkmdt.h:40
GLdouble GLdouble t
Definition: gl.h:2047
GLdouble GLdouble GLdouble GLdouble q
Definition: gl.h:2063
static void queue_add_timer(struct queue_timer *t, ULONGLONG time, BOOL set_event)
Definition: threadpool.c:684
static ULONGLONG queue_current_time(void)
Definition: threadpool.c:677
#define TIMER_QUEUE_MAGIC
Definition: threadpool.c:80
static struct timer_queue * get_timer_queue(HANDLE TimerQueue)
Definition: threadpool.c:954
Definition: ps.c:97
_In_ WDFINTERRUPT _In_ PFN_WDF_INTERRUPT_SYNCHRONIZE Callback
Definition: wdfinterrupt.h:458
_In_ WDFTIMER _In_ LONGLONG DueTime
Definition: wdftimer.h:190
_In_ LARGE_INTEGER _In_ ULONG Period
Definition: kefuncs.h:1313
_Inout_opt_ PVOID Parameter
Definition: rtltypes.h:336

◆ RtlCreateTimerQueue()

NTSYSAPI NTSTATUS WINAPI RtlCreateTimerQueue ( PHANDLE  NewTimerQueue)

Definition at line 864 of file threadpool.c.

865{
867 struct timer_queue *q = RtlAllocateHeap(GetProcessHeap(), 0, sizeof *q);
868 if (!q)
869 return STATUS_NO_MEMORY;
870
872 list_init(&q->timers);
873 q->quit = FALSE;
874 q->magic = TIMER_QUEUE_MAGIC;
876 if (status != STATUS_SUCCESS)
877 {
879 return status;
880 }
882 timer_queue_thread_proc, q, &q->thread, NULL);
883 if (status != STATUS_SUCCESS)
884 {
885 NtClose(q->event);
887 return status;
888 }
889
890 *NewTimerQueue = q;
891 return STATUS_SUCCESS;
892}
static void list_init(struct list_entry *head)
Definition: list.h:51
#define GetCurrentProcess()
Definition: compat.h:759
#define EVENT_ALL_ACCESS
Definition: isotest.c:82
NTSYSAPI NTSTATUS NTAPI RtlCreateUserThread(_In_ PVOID ThreadContext, _Out_ HANDLE *OutThreadHandle, _Reserved_ PVOID Reserved1, _Reserved_ PVOID Reserved2, _Reserved_ PVOID Reserved3, _Reserved_ PVOID Reserved4, _Reserved_ PVOID Reserved5, _Reserved_ PVOID Reserved6, _Reserved_ PVOID Reserved7, _Reserved_ PVOID Reserved8)
NTSYSAPI NTSTATUS NTAPI RtlInitializeCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
NTSTATUS NTAPI NtClose(IN HANDLE Handle)
Definition: obhandle.c:3402
@ SynchronizationEvent
NTSTATUS NTAPI NtCreateEvent(OUT PHANDLE EventHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL, IN EVENT_TYPE EventType, IN BOOLEAN InitialState)
Definition: event.c:96
static void WINAPI timer_queue_thread_proc(LPVOID p)
Definition: threadpool.c:788

Referenced by get_timer_queue().

◆ RtlCreateUnicodeString()

NTSYSAPI BOOLEAN WINAPI RtlCreateUnicodeString ( PUNICODE_STRING  ,
LPCWSTR   
)

◆ RtlCreateUnicodeStringFromAsciiz()

NTSYSAPI BOOLEAN WINAPI RtlCreateUnicodeStringFromAsciiz ( PUNICODE_STRING  ,
LPCSTR   
)

◆ RtlCreateUserProcess()

◆ RtlCreateUserStack()

NTSYSAPI NTSTATUS WINAPI RtlCreateUserStack ( SIZE_T  ,
SIZE_T  ,
ULONG  ,
SIZE_T  ,
SIZE_T  ,
INITIAL_TEB  
)

Referenced by CreateFiberEx().

◆ RtlCreateUserThread()

NTSYSAPI NTSTATUS WINAPI RtlCreateUserThread ( HANDLE  ,
SECURITY_DESCRIPTOR ,
BOOLEAN  ,
ULONG  ,
SIZE_T  ,
SIZE_T  ,
PRTL_THREAD_START_ROUTINE  ,
void ,
HANDLE ,
CLIENT_ID  
)

◆ RtlCustomCPToUnicodeN()

NTSYSAPI NTSTATUS WINAPI RtlCustomCPToUnicodeN ( CPTABLEINFO ,
WCHAR ,
DWORD  ,
DWORD ,
const char ,
DWORD   
)

◆ RtlDeactivateActivationContext()

NTSYSAPI void WINAPI RtlDeactivateActivationContext ( DWORD  ,
ULONG_PTR   
)

Referenced by DeactivateActCtx().

◆ RtlDecodePointer()

◆ RtlDecompressBuffer()

NTSYSAPI NTSTATUS WINAPI RtlDecompressBuffer ( USHORT  ,
PUCHAR  ,
ULONG  ,
PUCHAR  ,
ULONG  ,
PULONG   
)

◆ RtlDecompressFragment()

NTSYSAPI NTSTATUS WINAPI RtlDecompressFragment ( USHORT  ,
PUCHAR  ,
ULONG  ,
PUCHAR  ,
ULONG  ,
ULONG  ,
PULONG  ,
PVOID   
)

◆ RtlDefaultNpAcl()

NTSYSAPI NTSTATUS WINAPI RtlDefaultNpAcl ( PACL )

◆ RtlDeleteAce()

NTSYSAPI NTSTATUS WINAPI RtlDeleteAce ( PACL  ,
DWORD   
)

◆ RtlDeleteAtomFromAtomTable()

NTSYSAPI NTSTATUS WINAPI RtlDeleteAtomFromAtomTable ( RTL_ATOM_TABLE  ,
RTL_ATOM   
)

◆ RtlDeleteCriticalSection()

NTSYSAPI NTSTATUS WINAPI RtlDeleteCriticalSection ( RTL_CRITICAL_SECTION )

◆ RtlDeleteRegistryValue()

◆ RtlDeleteResource()

NTSYSAPI void WINAPI RtlDeleteResource ( LPRTL_RWLOCK  )

◆ RtlDeleteSecurityObject()

NTSYSAPI NTSTATUS WINAPI RtlDeleteSecurityObject ( PSECURITY_DESCRIPTOR )

◆ RtlDeleteTimer()

NTSYSAPI NTSTATUS WINAPI RtlDeleteTimer ( HANDLE  TimerQueue,
HANDLE  Timer,
HANDLE  CompletionEvent 
)

Definition at line 1098 of file threadpool.c.

1100{
1101 struct queue_timer *t = Timer;
1102 struct timer_queue *q;
1104 HANDLE event = NULL;
1105
1106 if (!Timer)
1108 q = t->q;
1109 if (CompletionEvent == INVALID_HANDLE_VALUE)
1110 {
1112 if (status == STATUS_SUCCESS)
1114 }
1115 else if (CompletionEvent)
1116 event = CompletionEvent;
1117
1119 t->event = event;
1120 if (t->runcount == 0 && event)
1124
1125 if (CompletionEvent == INVALID_HANDLE_VALUE && event)
1126 {
1127 if (status == STATUS_PENDING)
1128 {
1131 }
1132 NtClose(event);
1133 }
1134
1135 return status;
1136}
#define INVALID_HANDLE_VALUE
Definition: compat.h:731
struct _cl_event * event
Definition: glext.h:7739
NTSYSAPI NTSTATUS NTAPI NtWaitForSingleObject(IN HANDLE hObject, IN BOOLEAN bAlertable, IN PLARGE_INTEGER Timeout)
#define STATUS_INVALID_PARAMETER_1
Definition: ntstatus.h:569
static void queue_destroy_timer(struct queue_timer *t)
Definition: threadpool.c:837
#define STATUS_PENDING
Definition: telnetd.h:14

◆ RtlDeleteTimerQueueEx()

NTSYSAPI NTSTATUS WINAPI RtlDeleteTimerQueueEx ( HANDLE  TimerQueue,
HANDLE  CompletionEvent 
)

Definition at line 910 of file threadpool.c.

911{
912 struct timer_queue *q = TimerQueue;
913 struct queue_timer *t, *temp;
916
917 if (!q || q->magic != TIMER_QUEUE_MAGIC)
919
920 thread = q->thread;
921
923 q->quit = TRUE;
924 if (list_head(&q->timers))
925 /* When the last timer is removed, it will signal the timer thread to
926 exit... */
927 LIST_FOR_EACH_ENTRY_SAFE(t, temp, &q->timers, struct queue_timer, entry)
929 else
930 /* However if we have none, we must do it ourselves. */
931 NtSetEvent(q->event, NULL);
933
934 if (CompletionEvent == INVALID_HANDLE_VALUE)
935 {
938 }
939 else
940 {
941 if (CompletionEvent)
942 {
943 FIXME("asynchronous return on completion event unimplemented\n");
945 NtSetEvent(CompletionEvent, NULL);
946 }
948 }
949
951 return status;
952}
#define FIXME(fmt,...)
Definition: precomp.h:53
static HANDLE thread
Definition: service.c:33
uint32_t entry
Definition: isohybrid.c:63
NTSTATUS NTAPI NtSetEvent(IN HANDLE EventHandle, OUT PLONG PreviousState OPTIONAL)
Definition: event.c:463
static calc_node_t temp
Definition: rpn_ieee.c:38
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
Definition: list.h:204
Definition: list.h:15

Referenced by get_timer_queue().

◆ RtlDeNormalizeProcessParams()

◆ RtlDeregisterWait()

NTSYSAPI NTSTATUS WINAPI RtlDeregisterWait ( HANDLE  WaitHandle)

Definition at line 3499 of file threadpool.c.

3500{
3501 return RtlDeregisterWaitEx(WaitHandle, NULL);
3502}
NTSTATUS WINAPI RtlDeregisterWaitEx(HANDLE handle, HANDLE event)
Definition: threadpool.c:3458

◆ RtlDeregisterWaitEx()

NTSYSAPI NTSTATUS WINAPI RtlDeregisterWaitEx ( HANDLE  handle,
HANDLE  event 
)

Definition at line 3458 of file threadpool.c.

3459{
3460 struct threadpool_object *object = handle;
3462
3463 TRACE( "handle %p, event %p\n", handle, event );
3464
3465 if (!object) return STATUS_INVALID_HANDLE;
3466
3467 TpSetWait( (TP_WAIT *)object, NULL, NULL );
3468
3469 if (event == INVALID_HANDLE_VALUE) TpWaitForWait( (TP_WAIT *)object, TRUE );
3470 else
3471 {
3472 assert( object->completed_event == NULL );
3473 object->completed_event = event;
3474 }
3475
3476 RtlEnterCriticalSection( &object->pool->cs );
3477 if (object->num_pending_callbacks + object->num_running_callbacks
3478 + object->num_associated_callbacks) status = STATUS_PENDING;
3479 else status = STATUS_SUCCESS;
3480 RtlLeaveCriticalSection( &object->pool->cs );
3481
3482 TpReleaseWait( (TP_WAIT *)object );
3483 return status;
3484}
#define assert(x)
Definition: debug.h:53
VOID WINAPI TpWaitForWait(TP_WAIT *wait, BOOL cancel_pending)
Definition: threadpool.c:3317
VOID WINAPI TpReleaseWait(TP_WAIT *wait)
Definition: threadpool.c:3041
VOID WINAPI TpSetWait(TP_WAIT *wait, HANDLE handle, LARGE_INTEGER *timeout)
Definition: threadpool.c:3191
struct _TP_WAIT TP_WAIT
Definition: winnt_old.h:4645

Referenced by RtlDeregisterWait().

◆ RtlDestroyAtomTable()

NTSYSAPI NTSTATUS WINAPI RtlDestroyAtomTable ( RTL_ATOM_TABLE  )

◆ RtlDestroyEnvironment()

NTSYSAPI NTSTATUS WINAPI RtlDestroyEnvironment ( PWSTR  Environment)

Definition at line 115 of file env.c.

116{
117 SIZE_T Size = 0;
118
121 &Size,
123}
PVOID PVOID PWCHAR PVOID Environment
Definition: env.c:47
NTSTATUS NTAPI NtFreeVirtualMemory(IN HANDLE ProcessHandle, IN PVOID *UBaseAddress, IN PSIZE_T URegionSize, IN ULONG FreeType)
Definition: virtual.c:5192
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
Definition: wdfdevice.h:4539

◆ RtlDestroyHandleTable()

NTSYSAPI NTSTATUS WINAPI RtlDestroyHandleTable ( RTL_HANDLE_TABLE )

◆ RtlDestroyHeap()

NTSYSAPI HANDLE WINAPI RtlDestroyHeap ( HANDLE  HeapPtr)

Definition at line 1748 of file heap.c.

1749{
1750 PHEAP Heap = (PHEAP)HeapPtr;
1751 PLIST_ENTRY Current;
1752 PHEAP_UCR_SEGMENT UcrSegment;
1753 PHEAP_VIRTUAL_ALLOC_ENTRY VirtualEntry;
1755 SIZE_T Size;
1756 LONG i;
1758
1759 if (!HeapPtr) return NULL;
1760
1761 /* Call page heap routine if required */
1762 if (Heap->ForceFlags & HEAP_FLAG_PAGE_ALLOCS) return RtlpPageHeapDestroy(HeapPtr);
1763
1764 /* Call special heap */
1765 if (RtlpHeapIsSpecial(Heap->Flags))
1766 {
1767 if (!RtlDebugDestroyHeap(Heap)) return HeapPtr;
1768 }
1769
1770 /* Check for a process heap */
1771 if (RtlpGetMode() == UserMode &&
1772 HeapPtr == NtCurrentPeb()->ProcessHeap) return HeapPtr;
1773
1774 /* Free up all big allocations */
1775 Current = Heap->VirtualAllocdBlocks.Flink;
1776 while (Current != &Heap->VirtualAllocdBlocks)
1777 {
1778 VirtualEntry = CONTAINING_RECORD(Current, HEAP_VIRTUAL_ALLOC_ENTRY, Entry);
1779 BaseAddress = (PVOID)VirtualEntry;
1780 Current = Current->Flink;
1781 Size = 0;
1782 ZwFreeVirtualMemory(NtCurrentProcess(),
1783 &BaseAddress,
1784 &Size,
1785 MEM_RELEASE);
1786 }
1787
1788 /* Delete tags and remove heap from the process heaps list in user mode */
1789 if (RtlpGetMode() == UserMode)
1790 {
1791 // FIXME DestroyTags
1793 }
1794
1795 /* Delete the heap lock */
1796 if (!(Heap->Flags & HEAP_NO_SERIALIZE))
1797 {
1798 /* Delete it if it wasn't user allocated */
1799 if (!(Heap->Flags & HEAP_LOCK_USER_ALLOCATED))
1801
1802 /* Clear out the lock variable */
1803 Heap->LockVariable = NULL;
1804 }
1805
1806 /* Free UCR segments if any were created */
1807 Current = Heap->UCRSegments.Flink;
1808 while (Current != &Heap->UCRSegments)
1809 {
1810 UcrSegment = CONTAINING_RECORD(Current, HEAP_UCR_SEGMENT, ListEntry);
1811
1812 /* Advance to the next descriptor */
1813 Current = Current->Flink;
1814
1815 BaseAddress = (PVOID)UcrSegment;
1816 Size = 0;
1817
1818 /* Release that memory */
1819 ZwFreeVirtualMemory(NtCurrentProcess(),
1820 &BaseAddress,
1821 &Size,
1822 MEM_RELEASE);
1823 }
1824
1825 /* Go through segments and destroy them */
1826 for (i = HEAP_SEGMENTS - 1; i >= 0; i--)
1827 {
1828 Segment = Heap->Segments[i];
1830 }
1831
1832 return NULL;
1833}
HANDLE ProcessHeap
Definition: servman.c:15
NTSTATUS NTAPI RtlDeleteHeapLock(IN OUT PHEAP_LOCK Lock)
Definition: libsupp.c:103
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID * BaseAddress
Definition: mmfuncs.h:404
#define HEAP_LOCK_USER_ALLOCATED
Definition: rtltypes.h:168
#define HEAP_FLAG_PAGE_ALLOCS
Definition: rtltypes.h:160
PVOID NTAPI RtlpPageHeapDestroy(HANDLE HeapPtr)
Definition: heappage.c:1678
VOID NTAPI RtlpRemoveHeapFromProcessList(struct _HEAP *Heap)
Definition: libsupp.c:237
long LONG
Definition: pedump.c:60
VOID NTAPI RtlpDestroyHeapSegment(PHEAP_SEGMENT Segment)
Definition: heap.c:1137
BOOLEAN NTAPI RtlDebugDestroyHeap(HANDLE HeapPtr)
Definition: heapdbg.c:95
#define HEAP_SEGMENTS
Definition: heap.h:15
base of all file and directory entries
Definition: entries.h:83
Definition: heap.h:308
ULONG Flags
Definition: heap.h:226
ULONG ForceFlags
Definition: heap.h:227
LIST_ENTRY VirtualAllocdBlocks
Definition: heap.h:251
LIST_ENTRY UCRSegments
Definition: heap.h:248
PHEAP_LOCK LockVariable
Definition: heap.h:260
struct _HEAP_SEGMENT * Segments[HEAP_SEGMENTS]
Definition: heap.h:253
void * PVOID
Definition: typedefs.h:50
_Inout_ PVOID Segment
Definition: exfuncs.h:1101

◆ RtlDestroyProcessParameters()

NTSYSAPI void WINAPI RtlDestroyProcessParameters ( RTL_USER_PROCESS_PARAMETERS )

◆ RtlDestroyQueryDebugBuffer()

NTSYSAPI NTSTATUS WINAPI RtlDestroyQueryDebugBuffer ( PDEBUG_BUFFER  )

◆ RtlDetermineDosPathNameType_U()

NTSYSAPI DOS_PATHNAME_TYPE WINAPI RtlDetermineDosPathNameType_U ( PCWSTR  )

◆ RtlDllShutdownInProgress()

NTSYSAPI BOOLEAN WINAPI RtlDllShutdownInProgress ( void  )

Definition at line 1559 of file ldrapi.c.

1560{
1561 /* Return the internal global */
1563}
BOOLEAN LdrpShutdownInProgress
Definition: ldrinit.c:34

Referenced by CtfImmDispatchDefImeMessage(), and ISPY_PreUninitialize().

◆ RtlDoesFileExists_U()

NTSYSAPI BOOLEAN WINAPI RtlDoesFileExists_U ( LPCWSTR  )

◆ RtlDosPathNameToNtPathName_U()

NTSYSAPI BOOLEAN WINAPI RtlDosPathNameToNtPathName_U ( PCWSTR  ,
PUNICODE_STRING  ,
PWSTR ,
CURDIR  
)

◆ RtlDosPathNameToNtPathName_U_WithStatus()

◆ RtlDosPathNameToRelativeNtPathName_U()

NTSYSAPI BOOLEAN WINAPI RtlDosPathNameToRelativeNtPathName_U ( PCWSTR  ,
PUNICODE_STRING  ,
PWSTR ,
RTL_RELATIVE_NAME  
)

◆ RtlDosPathNameToRelativeNtPathName_U_WithStatus()

NTSYSAPI NTSTATUS WINAPI RtlDosPathNameToRelativeNtPathName_U_WithStatus ( PCWSTR  ,
PUNICODE_STRING  ,
PWSTR ,
RTL_RELATIVE_NAME  
)

◆ RtlDosSearchPath_U()

NTSYSAPI ULONG WINAPI RtlDosSearchPath_U ( LPCWSTR  ,
LPCWSTR  ,
LPCWSTR  ,
ULONG  ,
LPWSTR  ,
LPWSTR  
)

◆ RtlDowncaseUnicodeChar()

NTSYSAPI WCHAR WINAPI RtlDowncaseUnicodeChar ( WCHAR  )

◆ RtlDowncaseUnicodeString()

◆ RtlDumpResource()

NTSYSAPI void WINAPI RtlDumpResource ( LPRTL_RWLOCK  )

◆ RtlDuplicateUnicodeString()

◆ RtlEmptyAtomTable()

NTSYSAPI NTSTATUS WINAPI RtlEmptyAtomTable ( RTL_ATOM_TABLE  ,
BOOLEAN   
)

◆ RtlEncodePointer()

◆ RtlEnlargedIntegerMultiply()

NTSYSAPI LONGLONG WINAPI RtlEnlargedIntegerMultiply ( INT  ,
INT   
)

Referenced by WSPSelect().

◆ RtlEnlargedUnsignedDivide()

NTSYSAPI UINT WINAPI RtlEnlargedUnsignedDivide ( ULONGLONG  ,
UINT  ,
UINT  
)

Referenced by MulDiv().

◆ RtlEnlargedUnsignedMultiply()

NTSYSAPI ULONGLONG WINAPI RtlEnlargedUnsignedMultiply ( UINT  Multiplicand,
UINT  Multiplier 
)

Definition at line 97 of file largeint.c.

101{
102 LARGE_INTEGER RC;
103
104 RC.QuadPart = (ULONGLONG) Multiplicand * Multiplier;
105
106 return RC;
107}
uint64_t ULONGLONG
Definition: typedefs.h:67

◆ RtlEnterCriticalSection()

NTSYSAPI NTSTATUS WINAPI RtlEnterCriticalSection ( RTL_CRITICAL_SECTION )

◆ RtlEqualComputerName()

NTSYSAPI NTSTATUS WINAPI RtlEqualComputerName ( const UNICODE_STRING ,
const UNICODE_STRING  
)

◆ RtlEqualDomainName()

NTSYSAPI NTSTATUS WINAPI RtlEqualDomainName ( const UNICODE_STRING ,
const UNICODE_STRING  
)

◆ RtlEqualLuid()

NTSYSAPI BOOLEAN WINAPI RtlEqualLuid ( const LUID ,
const LUID  
)

◆ RtlEqualPrefixSid()

NTSYSAPI BOOL WINAPI RtlEqualPrefixSid ( PSID  ,
PSID   
)

◆ RtlEqualSid()

NTSYSAPI BOOL WINAPI RtlEqualSid ( PSID  ,
PSID   
)

◆ RtlEqualUnicodeString()

NTSYSAPI BOOLEAN WINAPI RtlEqualUnicodeString ( const UNICODE_STRING ,
const UNICODE_STRING ,
BOOLEAN   
)

◆ RtlEraseUnicodeString()

NTSYSAPI void WINAPI RtlEraseUnicodeString ( UNICODE_STRING )

◆ RtlExitUserProcess()

◆ RtlExitUserThread()

NTSYSAPI void DECLSPEC_NORETURN WINAPI RtlExitUserThread ( ULONG  )

◆ RtlExpandEnvironmentStrings()

NTSYSAPI NTSTATUS WINAPI RtlExpandEnvironmentStrings ( const WCHAR ,
WCHAR ,
SIZE_T  ,
WCHAR ,
SIZE_T  ,
SIZE_T  
)

◆ RtlExpandEnvironmentStrings_U()

◆ RtlExtendedIntegerMultiply()

NTSYSAPI LONGLONG WINAPI RtlExtendedIntegerMultiply ( LONGLONG  ,
INT   
)

Referenced by RawQueryFsSizeInfo().

◆ RtlExtendedLargeIntegerDivide()

NTSYSAPI LONGLONG WINAPI RtlExtendedLargeIntegerDivide ( LONGLONG  ,
INT  ,
INT  
)

◆ RtlExtendedMagicDivide()

NTSYSAPI LONGLONG WINAPI RtlExtendedMagicDivide ( LONGLONG  ,
LONGLONG  ,
INT   
)

◆ RtlFindActivationContextSectionGuid()

NTSYSAPI NTSTATUS WINAPI RtlFindActivationContextSectionGuid ( ULONG  ,
const GUID ,
ULONG  ,
const GUID ,
PVOID   
)

◆ RtlFindActivationContextSectionString()

NTSYSAPI NTSTATUS WINAPI RtlFindActivationContextSectionString ( ULONG  flags,
const GUID guid,
ULONG  section_kind,
const UNICODE_STRING section_name,
PVOID  ptr 
)

Definition at line 5874 of file actctx.c.

5876{
5879
5880 TRACE("%08x %s %u %s %p\n", flags, debugstr_guid(guid), section_kind,
5881 debugstr_us(section_name), data);
5882
5883#ifdef __REACTOS__
5884 status = RtlpFindActivationContextSection_CheckParameters(flags, guid, section_kind, section_name, data);
5885 if (!NT_SUCCESS(status))
5886 {
5887 DPRINT1("RtlFindActivationContextSectionString() failed with status %x\n", status);
5888 return status;
5889 }
5890
5892
5893 /* if there is no data, but params are valid,
5894 we return that sxs key is not found to be at least somehow compatible */
5895 if (!data)
5896 {
5897 DPRINT("RtlFindActivationContextSectionString() failed with status %x\n", status);
5898 return status;
5899 }
5900#else
5901 if (guid)
5902 {
5903 FIXME("expected guid == NULL\n");
5905 }
5906 if (flags & ~FIND_ACTCTX_SECTION_KEY_RETURN_HACTCTX)
5907 {
5908 FIXME("unknown flags %08x\n", flags);
5910 }
5911 if ((data && data->cbSize < offsetof(ACTCTX_SECTION_KEYED_DATA, ulAssemblyRosterIndex)) ||
5912 !section_name || !section_name->Buffer)
5913 {
5914 WARN("invalid parameter\n");
5916 }
5917#endif // __REACTOS__
5918
5920 ASSERT(NtCurrentTeb()->ActivationContextStackPointer);
5921
5922 DPRINT("ActiveFrame: %p\n",NtCurrentTeb()->ActivationContextStackPointer->ActiveFrame);
5923 if (NtCurrentTeb()->ActivationContextStackPointer->ActiveFrame)
5924 {
5925 ACTIVATION_CONTEXT *actctx = check_actctx(NtCurrentTeb()->ActivationContextStackPointer->ActiveFrame->ActivationContext);
5926 if (actctx) status = find_string( actctx, section_kind, section_name, flags, data );
5927 }
5928
5929 DPRINT("status %x\n", status);
5930 if (status != STATUS_SUCCESS)
5931 status = find_string( process_actctx, section_kind, section_name, flags, data );
5932
5933 if (status != STATUS_SUCCESS)
5934 status = find_string( implicit_actctx, section_kind, section_name, flags, data );
5935
5936 DPRINT("RtlFindActivationContextSectionString() returns status %x\n", status);
5937 return status;
5938}
#define WARN(fmt,...)
Definition: precomp.h:61
GUID guid
Definition: version.c:147
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
GLbitfield flags
Definition: glext.h:7161
#define debugstr_guid
Definition: kernel32.h:35
static PVOID ptr
Definition: dispmode.c:27
static const GUID PACTCTX_SECTION_KEYED_DATA
Definition: actctx.c:36
#define STATUS_SXS_KEY_NOT_FOUND
Definition: ntstatus.h:1777
#define offsetof(TYPE, MEMBER)
static ACTIVATION_CONTEXT * implicit_actctx
Definition: actctx.c:771
static ACTIVATION_CONTEXT * process_actctx
Definition: actctx.c:770
static NTSTATUS find_string(ACTIVATION_CONTEXT *actctx, ULONG section_kind, const UNICODE_STRING *section_name, DWORD flags, PACTCTX_SECTION_KEYED_DATA data)
Definition: actctx.c:5100
LPCSTR debugstr_us(const UNICODE_STRING *us)
Definition: wine_debug.c:136

Referenced by ClassNameToVersion(), find_actctx_dll(), find_actctx_dllpath(), FindActCtxSectionStringW(), init_funcs(), and LdrpCheckForKnownDll().

◆ RtlFindCharInUnicodeString()

NTSYSAPI NTSTATUS WINAPI RtlFindCharInUnicodeString ( int  ,
const UNICODE_STRING ,
const UNICODE_STRING ,
USHORT  
)

◆ RtlFindClearBits()

NTSYSAPI ULONG WINAPI RtlFindClearBits ( PCRTL_BITMAP  ,
ULONG  ,
ULONG   
)

◆ RtlFindClearBitsAndSet()

NTSYSAPI ULONG WINAPI RtlFindClearBitsAndSet ( PRTL_BITMAP  ,
ULONG  ,
ULONG   
)

◆ RtlFindClearRuns()

NTSYSAPI ULONG WINAPI RtlFindClearRuns ( PCRTL_BITMAP  ,
PRTL_BITMAP_RUN  ,
ULONG  ,
BOOLEAN   
)

◆ RtlFindExportedRoutineByName()

NTSYSAPI void *WINAPI RtlFindExportedRoutineByName ( HMODULE  ,
const char  
)

◆ RtlFindLastBackwardRunClear()

NTSYSAPI ULONG WINAPI RtlFindLastBackwardRunClear ( PCRTL_BITMAP  ,
ULONG  ,
PULONG   
)

◆ RtlFindLastBackwardRunSet()

NTSYSAPI ULONG WINAPI RtlFindLastBackwardRunSet ( PCRTL_BITMAP  ,
ULONG  ,
PULONG   
)

◆ RtlFindLeastSignificantBit()

NTSYSAPI CCHAR WINAPI RtlFindLeastSignificantBit ( ULONGLONG  Value)

Definition at line 235 of file bitmap.c.

236{
238
239#ifdef _M_AMD64
240 if (BitScanForward64(&Position, Value))
241 {
242 return (CCHAR)Position;
243 }
244#else
246 {
247 return (CCHAR)Position;
248 }
249 else if (BitScanForward(&Position, Value >> _BITCOUNT))
250 {
251 return (CCHAR)(Position + _BITCOUNT);
252 }
253#endif
254 return -1;
255}
#define BitScanForward
Definition: interlocked.h:5
#define _BITCOUNT
Definition: bitmap.c:62
static COORD Position
Definition: mouse.c:34
char CCHAR
Definition: typedefs.h:51
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:413

Referenced by Test_RtlFindLeastSignificantBit().

◆ RtlFindLongestRunClear()

NTSYSAPI ULONG WINAPI RtlFindLongestRunClear ( PCRTL_BITMAP  ,
PULONG   
)

◆ RtlFindLongestRunSet()

NTSYSAPI ULONG WINAPI RtlFindLongestRunSet ( PCRTL_BITMAP  ,
PULONG   
)

◆ RtlFindMessage()

NTSYSAPI NTSTATUS WINAPI RtlFindMessage ( HMODULE  ,
ULONG  ,
ULONG  ,
ULONG  ,
const MESSAGE_RESOURCE_ENTRY **   
)

◆ RtlFindMostSignificantBit()

NTSYSAPI CCHAR WINAPI RtlFindMostSignificantBit ( ULONGLONG  Value)

Definition at line 211 of file bitmap.c.

212{
214
215#ifdef _M_AMD64
216 if (BitScanReverse64(&Position, Value))
217 {
218 return (CCHAR)Position;
219 }
220#else
222 {
223 return (CCHAR)(Position + _BITCOUNT);
224 }
225 else if (BitScanReverse(&Position, (ULONG)Value))
226 {
227 return (CCHAR)Position;
228 }
229#endif
230 return -1;
231}
#define BitScanReverse
Definition: interlocked.h:6

Referenced by Test_RtlFindMostSignificantBit().

◆ RtlFindNextForwardRunClear()

NTSYSAPI ULONG WINAPI RtlFindNextForwardRunClear ( PCRTL_BITMAP  ,
ULONG  ,
PULONG   
)

◆ RtlFindNextForwardRunSet()

NTSYSAPI ULONG WINAPI RtlFindNextForwardRunSet ( PCRTL_BITMAP  ,
ULONG  ,
PULONG   
)

◆ RtlFindSetBits()

NTSYSAPI ULONG WINAPI RtlFindSetBits ( PCRTL_BITMAP  ,
ULONG  ,
ULONG   
)

◆ RtlFindSetBitsAndClear()

NTSYSAPI ULONG WINAPI RtlFindSetBitsAndClear ( PRTL_BITMAP  ,
ULONG  ,
ULONG   
)

◆ RtlFindSetRuns()

NTSYSAPI ULONG WINAPI RtlFindSetRuns ( PCRTL_BITMAP  ,
PRTL_BITMAP_RUN  ,
ULONG  ,
BOOLEAN   
)

◆ RtlFirstFreeAce()

NTSYSAPI BOOLEAN WINAPI RtlFirstFreeAce ( PACL  ,
PACE_HEADER  
)

◆ RtlFlsAlloc()

NTSYSAPI NTSTATUS WINAPI RtlFlsAlloc ( PFLS_CALLBACK_FUNCTION  ,
ULONG  
)

Referenced by FlsAlloc().

◆ RtlFlsFree()

NTSYSAPI NTSTATUS WINAPI RtlFlsFree ( ULONG  )

Referenced by FlsFree().

◆ RtlFlsGetValue()

NTSYSAPI NTSTATUS WINAPI RtlFlsGetValue ( ULONG  ,
void **   
)

Referenced by FlsGetValue().

◆ RtlFlsSetValue()

NTSYSAPI NTSTATUS WINAPI RtlFlsSetValue ( ULONG  ,
void  
)

Referenced by FlsSetValue().

◆ RtlFormatCurrentUserKeyPath()

NTSYSAPI NTSTATUS WINAPI RtlFormatCurrentUserKeyPath ( PUNICODE_STRING  )

◆ RtlFreeActivationContextStack()

◆ RtlFreeAnsiString()

NTSYSAPI void WINAPI RtlFreeAnsiString ( PANSI_STRING  )

◆ RtlFreeHandle()

NTSYSAPI BOOLEAN WINAPI RtlFreeHandle ( RTL_HANDLE_TABLE ,
RTL_HANDLE  
)

◆ RtlFreeHeap()

NTSYSAPI BOOLEAN WINAPI RtlFreeHeap ( HANDLE  HeapPtr,
ULONG  Flags,
PVOID  Ptr 
)

Definition at line 2286 of file heap.c.

2291{
2292 PHEAP Heap;
2293 PHEAP_ENTRY HeapEntry;
2294 USHORT TagIndex = 0;
2295 SIZE_T BlockSize;
2296 PHEAP_VIRTUAL_ALLOC_ENTRY VirtualEntry;
2299
2300 /* Freeing NULL pointer is a legal operation */
2301 if (!Ptr) return TRUE;
2302
2303 /* Get pointer to the heap and force flags */
2304 Heap = (PHEAP)HeapPtr;
2305 Flags |= Heap->ForceFlags;
2306
2307 /* Call special heap */
2309 return RtlDebugFreeHeap(Heap, Flags, Ptr);
2310
2311 /* Get pointer to the heap entry */
2312 HeapEntry = (PHEAP_ENTRY)Ptr - 1;
2313
2314 /* Protect with SEH in case the pointer is not valid */
2315 _SEH2_TRY
2316 {
2317 /* Check this entry, fail if it's invalid */
2318 if (!(HeapEntry->Flags & HEAP_ENTRY_BUSY) ||
2319 (((ULONG_PTR)Ptr & 0x7) != 0) ||
2320 (HeapEntry->SegmentOffset >= HEAP_SEGMENTS))
2321 {
2322 /* This is an invalid block */
2323 DPRINT1("HEAP: Trying to free an invalid address %p!\n", Ptr);
2325 _SEH2_YIELD(return FALSE);
2326 }
2327 }
2329 {
2330 /* The pointer was invalid */
2331 DPRINT1("HEAP: Trying to free an invalid address %p!\n", Ptr);
2333 _SEH2_YIELD(return FALSE);
2334 }
2335 _SEH2_END;
2336
2337 /* Lock if necessary */
2338 if (!(Flags & HEAP_NO_SERIALIZE))
2339 {
2341 Locked = TRUE;
2342 }
2343
2344 if (HeapEntry->Flags & HEAP_ENTRY_VIRTUAL_ALLOC)
2345 {
2346 /* Big allocation */
2347 VirtualEntry = CONTAINING_RECORD(HeapEntry, HEAP_VIRTUAL_ALLOC_ENTRY, BusyBlock);
2348
2349 /* Remove it from the list */
2350 RemoveEntryList(&VirtualEntry->Entry);
2351
2352 // TODO: Tagging
2353
2354 BlockSize = 0;
2355 Status = ZwFreeVirtualMemory(NtCurrentProcess(),
2356 (PVOID *)&VirtualEntry,
2357 &BlockSize,
2358 MEM_RELEASE);
2359
2360 if (!NT_SUCCESS(Status))
2361 {
2362 DPRINT1("HEAP: Failed releasing memory with Status 0x%08X. Heap %p, ptr %p, base address %p\n",
2363 Status, Heap, Ptr, VirtualEntry);
2365 }
2366 }
2367 else
2368 {
2369 /* Normal allocation */
2370 BlockSize = HeapEntry->Size;
2371
2372 // TODO: Tagging
2373
2374 /* Coalesce in kernel mode, and in usermode if it's not disabled */
2375 if (RtlpGetMode() == KernelMode ||
2377 {
2378 HeapEntry = (PHEAP_ENTRY)RtlpCoalesceFreeBlocks(Heap,
2379 (PHEAP_FREE_ENTRY)HeapEntry,
2380 &BlockSize,
2381 FALSE);
2382 }
2383
2384 /* See if we should decommit this block */
2385 if ((BlockSize >= Heap->DeCommitFreeBlockThreshold) ||
2386 (Heap->TotalFreeSize + BlockSize >= Heap->DeCommitTotalFreeThreshold))
2387 {
2388 RtlpDeCommitFreeBlock(Heap, (PHEAP_FREE_ENTRY)HeapEntry, BlockSize);
2389 }
2390 else
2391 {
2392 /* Insert into the free list */
2393 RtlpInsertFreeBlock(Heap, (PHEAP_FREE_ENTRY)HeapEntry, BlockSize);
2394
2395 if (RtlpGetMode() == UserMode &&
2396 TagIndex != 0)
2397 {
2398 // FIXME: Tagging
2400 }
2401 }
2402 }
2403
2404 /* Release the heap lock */
2406
2407 return TRUE;
2408}
NTSTATUS NTAPI RtlEnterHeapLock(IN OUT PHEAP_LOCK Lock, IN BOOLEAN Exclusive)
Definition: libsupp.c:110
NTSTATUS NTAPI RtlLeaveHeapLock(IN OUT PHEAP_LOCK Lock)
Definition: libsupp.c:135
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
Definition: fsrtlfuncs.h:898
NTSYSAPI void WINAPI RtlSetLastWin32ErrorAndNtStatusFromNtStatus(NTSTATUS)
_In_ PMEMORY_AREA _In_ PVOID _In_ BOOLEAN Locked
Definition: newmm.h:209
unsigned short USHORT
Definition: pedump.c:61
PHEAP_FREE_ENTRY NTAPI RtlpCoalesceFreeBlocks(PHEAP Heap, PHEAP_FREE_ENTRY FreeEntry, PSIZE_T FreeSize, BOOLEAN Remove)
Definition: heap.c:1169
PHEAP_FREE_ENTRY NTAPI RtlpInsertFreeBlock(PHEAP Heap, PHEAP_FREE_ENTRY FreeEntry, SIZE_T BlockSize)
Definition: heap.c:358
static VOID RtlpDeCommitFreeBlock(PHEAP Heap, PHEAP_FREE_ENTRY FreeEntry, SIZE_T Size)
Definition: heap.c:847
struct _HEAP_ENTRY * PHEAP_ENTRY
BOOLEAN NTAPI RtlDebugFreeHeap(HANDLE HeapPtr, ULONG Flags, PVOID Ptr)
Definition: heapdbg.c:267
#define HEAP_ENTRY_VIRTUAL_ALLOC
Definition: heap.h:43
#define HEAP_ENTRY_BUSY
Definition: heap.h:40
Definition: heap.h:136
Definition: heap.h:130
LIST_ENTRY Entry
Definition: heap.h:309
SIZE_T TotalFreeSize
Definition: heap.h:239
SIZE_T DeCommitFreeBlockThreshold
Definition: heap.h:237
SIZE_T DeCommitTotalFreeThreshold
Definition: heap.h:238

◆ RtlFreeOemString()

NTSYSAPI void WINAPI RtlFreeOemString ( POEM_STRING  )

◆ RtlFreeSid()

NTSYSAPI DWORD WINAPI RtlFreeSid ( PSID  )

◆ RtlFreeThreadActivationContextStack()

NTSYSAPI void WINAPI RtlFreeThreadActivationContextStack ( void  )

Definition at line 5515 of file actctx.c.

5516{
5517#ifdef __REACTOS__
5518 RtlFreeActivationContextStack(NtCurrentTeb()->ActivationContextStackPointer);
5519 NtCurrentTeb()->ActivationContextStackPointer = NULL;
5520#else
5522
5523 frame = NtCurrentTeb()->ActivationContextStack.ActiveFrame;
5524 while (frame)
5525 {
5528 RtlFreeHeap( GetProcessHeap(), 0, frame );
5529 frame = prev;
5530 }
5531 NtCurrentTeb()->ActivationContextStack.ActiveFrame = NULL;
5532#endif // __REACTOS__
5533}
NTSYSAPI void WINAPI RtlFreeActivationContextStack(ACTIVATION_CONTEXT_STACK *)
void WINAPI RtlReleaseActivationContext(HANDLE handle)
Definition: actctx.c:5384

Referenced by LdrShutdownThread().

◆ RtlFreeUnicodeString()

NTSYSAPI void WINAPI RtlFreeUnicodeString ( PUNICODE_STRING  )

◆ RtlFreeUserStack()

NTSYSAPI void WINAPI RtlFreeUserStack ( void )

Referenced by DeleteFiber().

◆ RtlGetAce()

NTSYSAPI NTSTATUS WINAPI RtlGetAce ( PACL  ,
DWORD  ,
LPVOID  
)

◆ RtlGetActiveActivationContext()

NTSYSAPI NTSTATUS WINAPI RtlGetActiveActivationContext ( HANDLE handle)

Definition at line 5539 of file actctx.c.

5540{
5541 if (NtCurrentTeb()->ActivationContextStackPointer->ActiveFrame)
5542 {
5543 *handle = NtCurrentTeb()->ActivationContextStackPointer->ActiveFrame->ActivationContext;
5545 }
5546 else
5547 *handle = 0;
5548
5549 return STATUS_SUCCESS;
5550}

Referenced by GetCurrentActCtx(), and LdrpWalkImportDescriptor().

◆ RtlGetCompressionWorkSpaceSize()

NTSYSAPI NTSTATUS WINAPI RtlGetCompressionWorkSpaceSize ( USHORT  ,
PULONG  ,
PULONG   
)

◆ RtlGetControlSecurityDescriptor()

NTSYSAPI NTSTATUS WINAPI RtlGetControlSecurityDescriptor ( PSECURITY_DESCRIPTOR  ,
PSECURITY_DESCRIPTOR_CONTROL  ,
LPDWORD   
)

◆ RtlGetCurrentDirectory_U()

NTSYSAPI ULONG WINAPI RtlGetCurrentDirectory_U ( ULONG  ,
LPWSTR   
)

◆ RtlGetCurrentPeb()

◆ RtlGetCurrentProcessorNumberEx()

NTSYSAPI void WINAPI RtlGetCurrentProcessorNumberEx ( PROCESSOR_NUMBER )

◆ RtlGetCurrentTransaction()

NTSYSAPI HANDLE WINAPI RtlGetCurrentTransaction ( void  )

◆ RtlGetDaclSecurityDescriptor()

NTSYSAPI NTSTATUS WINAPI RtlGetDaclSecurityDescriptor ( PSECURITY_DESCRIPTOR  ,
PBOOLEAN  ,
PACL ,
PBOOLEAN   
)

◆ RtlGetEnabledExtendedFeatures()

NTSYSAPI ULONG64 WINAPI RtlGetEnabledExtendedFeatures ( ULONG64  )

◆ RtlGetExePath()

NTSYSAPI NTSTATUS WINAPI RtlGetExePath ( PCWSTR  ,
PWSTR  
)

Referenced by find_exe_file().

◆ RtlGetExtendedContextLength()

NTSYSAPI NTSTATUS WINAPI RtlGetExtendedContextLength ( ULONG  ,
ULONG  
)

◆ RtlGetExtendedContextLength2()

NTSYSAPI NTSTATUS WINAPI RtlGetExtendedContextLength2 ( ULONG  ,
ULONG ,
ULONG64   
)

Referenced by InitializeContext2().

◆ RtlGetExtendedFeaturesMask()

NTSYSAPI ULONG64 WINAPI RtlGetExtendedFeaturesMask ( CONTEXT_EX )

◆ RtlGetFrame()

NTSYSAPI TEB_ACTIVE_FRAME *WINAPI RtlGetFrame ( void  )

Definition at line 421 of file debug.c.

422{
423 /* Return the frame that's currently active */
424 return NtCurrentTeb()->ActiveFrame;
425}

◆ RtlGetFullPathName_U()

NTSYSAPI ULONG WINAPI RtlGetFullPathName_U ( PCWSTR  ,
ULONG  ,
PWSTR  ,
PWSTR  
)

◆ RtlGetGroupSecurityDescriptor()

NTSYSAPI NTSTATUS WINAPI RtlGetGroupSecurityDescriptor ( PSECURITY_DESCRIPTOR  ,
PSID ,
PBOOLEAN   
)

◆ RtlGetLastNtStatus()

NTSYSAPI NTSTATUS WINAPI RtlGetLastNtStatus ( void  )

Definition at line 114 of file error.c.

115{
116 return NtCurrentTeb()->LastStatusValue;
117}

Referenced by ConSrvConsoleCtrlEventTimeout().

◆ RtlGetLastWin32Error()

NTSYSAPI DWORD WINAPI RtlGetLastWin32Error ( void  )

Definition at line 132 of file error.c.

133{
134 return NtCurrentTeb()->LastErrorValue;
135}

◆ RtlGetLocaleFileMappingAddress()

NTSYSAPI NTSTATUS WINAPI RtlGetLocaleFileMappingAddress ( void **  ,
LCID ,
LARGE_INTEGER  
)

Referenced by load_locale_nls().

◆ RtlGetLongestNtPathLength()

NTSYSAPI DWORD WINAPI RtlGetLongestNtPathLength ( void  )

Definition at line 1555 of file path.c.

1556{
1557 /*
1558 * The longest NT path is a DOS path that actually sits on a UNC path (ie:
1559 * a mapped network drive), which is accessed through the DOS Global?? path.
1560 * This is, and has always been equal to, 269 characters, except in Wine
1561 * which claims this is 277. Go figure.
1562 */
1563 return MAX_PATH + RtlpDosDevicesUncPrefix.Length / sizeof(WCHAR) + sizeof(ANSI_NULL);
1564}
#define MAX_PATH
Definition: compat.h:34
#define ANSI_NULL
const UNICODE_STRING RtlpDosDevicesUncPrefix
Definition: path.c:36
__wchar_t WCHAR
Definition: xmlstorage.h:180

Referenced by START_TEST().

◆ RtlGetNativeSystemInformation()

NTSYSAPI NTSTATUS WINAPI RtlGetNativeSystemInformation ( SYSTEM_INFORMATION_CLASS  ,
void ,
ULONG  ,
ULONG  
)

Referenced by GetNativeSystemInfo().

◆ RtlGetNtGlobalFlags()

NTSYSAPI ULONG WINAPI RtlGetNtGlobalFlags ( void  )

Definition at line 95 of file libsupp.c.

96{
97 PPEB pPeb = NtCurrentPeb();
98 return pPeb->NtGlobalFlag;
99}
ULONG NtGlobalFlag
Definition: ntddk_ex.h:270

Referenced by FatalExit(), RtlAssert(), RtlCreateHeap(), and RtlCreateUserProcess().

◆ RtlGetNtProductType()

NTSYSAPI BOOLEAN WINAPI RtlGetNtProductType ( LPDWORD  )

◆ RtlGetNtVersionNumbers()

NTSYSAPI void WINAPI RtlGetNtVersionNumbers ( LPDWORD  ,
LPDWORD  ,
LPDWORD   
)

◆ RtlGetOwnerSecurityDescriptor()

NTSYSAPI NTSTATUS WINAPI RtlGetOwnerSecurityDescriptor ( PSECURITY_DESCRIPTOR  ,
PSID ,
PBOOLEAN   
)

◆ RtlGetProcessHeaps()

NTSYSAPI ULONG WINAPI RtlGetProcessHeaps ( ULONG  ,
HANDLE  
)

Referenced by GetProcessHeaps(), and START_TEST().

◆ RtlGetProcessPreferredUILanguages()

NTSYSAPI NTSTATUS WINAPI RtlGetProcessPreferredUILanguages ( DWORD  ,
ULONG ,
WCHAR ,
ULONG  
)

◆ RtlGetProductInfo()

NTSYSAPI BOOLEAN WINAPI RtlGetProductInfo ( DWORD  ,
DWORD  ,
DWORD  ,
DWORD  ,
PDWORD   
)

Referenced by GetProductInfo().

◆ RtlGetSaclSecurityDescriptor()

NTSYSAPI NTSTATUS WINAPI RtlGetSaclSecurityDescriptor ( PSECURITY_DESCRIPTOR  ,
PBOOLEAN  ,
PACL ,
PBOOLEAN   
)

◆ RtlGetSearchPath()

NTSYSAPI NTSTATUS WINAPI RtlGetSearchPath ( PWSTR )

Referenced by SearchPathW().

◆ RtlGetSystemPreferredUILanguages()

NTSYSAPI NTSTATUS WINAPI RtlGetSystemPreferredUILanguages ( DWORD  ,
ULONG  ,
ULONG ,
WCHAR ,
ULONG  
)

◆ RtlGetSystemTimePrecise()

NTSYSAPI LONGLONG WINAPI RtlGetSystemTimePrecise ( void  )

◆ RtlGetThreadErrorMode()

NTSYSAPI DWORD WINAPI RtlGetThreadErrorMode ( void  )

Definition at line 217 of file error.c.

218{
219 /* Return it from the TEB */
220 return NtCurrentTeb()->HardErrorMode;
221}

Referenced by GetThreadErrorMode(), init_funcs(), and UnhandledExceptionFilter().

◆ RtlGetThreadPreferredUILanguages()

NTSYSAPI NTSTATUS WINAPI RtlGetThreadPreferredUILanguages ( DWORD  ,
ULONG ,
WCHAR ,
ULONG  
)

◆ RtlGetUserInfoHeap()

◆ RtlGetUserPreferredUILanguages()

NTSYSAPI NTSTATUS WINAPI RtlGetUserPreferredUILanguages ( DWORD  ,
ULONG  ,
ULONG ,
WCHAR ,
ULONG  
)

◆ RtlGetVersion()

◆ RtlGUIDFromString()

◆ RtlHashUnicodeString()

NTSYSAPI NTSTATUS WINAPI RtlHashUnicodeString ( const UNICODE_STRING ,
BOOLEAN  ,
ULONG  ,
ULONG  
)

◆ RtlIdentifierAuthoritySid()

NTSYSAPI PSID_IDENTIFIER_AUTHORITY WINAPI RtlIdentifierAuthoritySid ( PSID  )

◆ RtlIdnToAscii()

NTSYSAPI NTSTATUS WINAPI RtlIdnToAscii ( DWORD  ,
const WCHAR ,
INT  ,
WCHAR ,
INT  
)

Referenced by IdnToAscii().

◆ RtlIdnToNameprepUnicode()

NTSYSAPI NTSTATUS WINAPI RtlIdnToNameprepUnicode ( DWORD  ,
const WCHAR ,
INT  ,
WCHAR ,
INT  
)

Referenced by IdnToNameprepUnicode().

◆ RtlIdnToUnicode()

NTSYSAPI NTSTATUS WINAPI RtlIdnToUnicode ( DWORD  ,
const WCHAR ,
INT  ,
WCHAR ,
INT  
)

Referenced by IdnToUnicode().

◆ RtlImageDirectoryEntryToData()

NTSYSAPI PVOID WINAPI RtlImageDirectoryEntryToData ( HMODULE  ,
BOOL  ,
WORD  ,
ULONG  
)

◆ RtlImageNtHeader()

NTSYSAPI PIMAGE_NT_HEADERS WINAPI RtlImageNtHeader ( HMODULE  )

◆ RtlImageRvaToSection()

NTSYSAPI PIMAGE_SECTION_HEADER WINAPI RtlImageRvaToSection ( const IMAGE_NT_HEADERS ,
HMODULE  ,
DWORD   
)

◆ RtlImageRvaToVa()

NTSYSAPI PVOID WINAPI RtlImageRvaToVa ( const IMAGE_NT_HEADERS ,
HMODULE  ,
DWORD  ,
IMAGE_SECTION_HEADER **   
)

◆ RtlImpersonateSelf()

◆ RtlInitAnsiString()

NTSYSAPI void WINAPI RtlInitAnsiString ( PANSI_STRING  ,
PCSZ   
)

◆ RtlInitAnsiStringEx()

◆ RtlInitCodePageTable()

◆ RtlInitializeBitMap()

NTSYSAPI void WINAPI RtlInitializeBitMap ( PRTL_BITMAP  ,
PULONG  ,
ULONG   
)

◆ RtlInitializeConditionVariable()

NTSYSAPI void WINAPI RtlInitializeConditionVariable ( RTL_CONDITION_VARIABLE )

◆ RtlInitializeCriticalSection()

NTSYSAPI NTSTATUS WINAPI RtlInitializeCriticalSection ( RTL_CRITICAL_SECTION )

◆ RtlInitializeCriticalSectionAndSpinCount()

NTSYSAPI NTSTATUS WINAPI RtlInitializeCriticalSectionAndSpinCount ( RTL_CRITICAL_SECTION ,
ULONG   
)

◆ RtlInitializeCriticalSectionEx()

◆ RtlInitializeExtendedContext()

NTSYSAPI NTSTATUS WINAPI RtlInitializeExtendedContext ( void ,
ULONG  ,
CONTEXT_EX **   
)

◆ RtlInitializeExtendedContext2()

NTSYSAPI NTSTATUS WINAPI RtlInitializeExtendedContext2 ( void ,
ULONG  ,
CONTEXT_EX **  ,
ULONG64   
)

Referenced by InitializeContext2().

◆ RtlInitializeHandleTable()

NTSYSAPI void WINAPI RtlInitializeHandleTable ( ULONG  ,
ULONG  ,
RTL_HANDLE_TABLE  
)

◆ RtlInitializeNtUserPfn()

NTSYSAPI NTSTATUS WINAPI RtlInitializeNtUserPfn ( const void ,
ULONG  ,
const void ,
ULONG  ,
const void ,
ULONG   
)

◆ RtlInitializeResource()

NTSYSAPI void WINAPI RtlInitializeResource ( LPRTL_RWLOCK  )

◆ RtlInitializeSid()

NTSYSAPI NTSTATUS WINAPI RtlInitializeSid ( PSID  ,
PSID_IDENTIFIER_AUTHORITY  ,
BYTE   
)

◆ RtlInitializeSRWLock()

NTSYSAPI void WINAPI RtlInitializeSRWLock ( RTL_SRWLOCK )

◆ RtlInitNlsTables()

NTSYSAPI void WINAPI RtlInitNlsTables ( USHORT ,
USHORT ,
USHORT ,
NLSTABLEINFO  
)

◆ RtlInitString()

NTSYSAPI void WINAPI RtlInitString ( PSTRING  ,
PCSZ   
)

◆ RtlInitUnicodeString()

NTSYSAPI void WINAPI RtlInitUnicodeString ( PUNICODE_STRING  ,
PCWSTR   
)

◆ RtlInitUnicodeStringEx()

◆ RtlInt64ToUnicodeString()

NTSYSAPI NTSTATUS WINAPI RtlInt64ToUnicodeString ( ULONGLONG  ,
ULONG  ,
UNICODE_STRING  
)

◆ RtlIntegerToChar()

NTSYSAPI NTSTATUS WINAPI RtlIntegerToChar ( ULONG  value,
ULONG  base,
ULONG  length,
PCHAR  str 
)

Definition at line 704 of file unicode.c.

709{
710 CHAR buffer[33];
711 PCHAR pos;
712 CHAR digit;
713 SIZE_T len;
714
715 if (base == 0)
716 {
717 base = 10;
718 }
719 else if (base != 2 && base != 8 && base != 10 && base != 16)
720 {
722 }
723
724 pos = &buffer[32];
725 *pos = '\0';
726
727 do
728 {
729 pos--;
730 digit = (CHAR)(value % base);
731 value = value / base;
732
733 if (digit < 10)
734 {
735 *pos = '0' + digit;
736 }
737 else
738 {
739 *pos = 'A' + digit - 10;
740 }
741 }
742 while (value != 0L);
743
744 len = &buffer[32] - pos;
745
746 if (len > length)
747 {
749 }
750 else if (str == NULL)
751 {
753 }
754 else if (len == length)
755 {
757 }
758 else
759 {
760 RtlCopyMemory(str, pos, len + 1);
761 }
762
763 return STATUS_SUCCESS;
764}
#define CHAR(Char)
#define L(x)
Definition: resources.c:13
GLuint buffer
Definition: glext.h:5915
GLuint GLsizei GLsizei * length
Definition: glext.h:6040
GLenum GLsizei len
Definition: glext.h:6722
#define STATUS_BUFFER_OVERFLOW
Definition: shellext.h:66
char * PCHAR
Definition: typedefs.h:51

Referenced by RtlIntegerToUnicodeString().

◆ RtlIntegerToUnicodeString()

NTSYSAPI NTSTATUS WINAPI RtlIntegerToUnicodeString ( ULONG  ,
ULONG  ,
UNICODE_STRING  
)

◆ RtlInterlockedCompareExchange64()

NTSYSAPI LONGLONG WINAPI RtlInterlockedCompareExchange64 ( LONGLONG ,
LONGLONG  ,
LONGLONG   
)

◆ RtlIsActivationContextActive()

NTSYSAPI BOOLEAN WINAPI RtlIsActivationContextActive ( HANDLE  handle)

Definition at line 5556 of file actctx.c.

5557{
5559
5560 for (frame = NtCurrentTeb()->ActivationContextStackPointer->ActiveFrame; frame; frame = frame->Previous)
5561 if (frame->ActivationContext == handle) return TRUE;
5562 return FALSE;
5563}

◆ RtlIsCriticalSectionLocked()

NTSYSAPI BOOL WINAPI RtlIsCriticalSectionLocked ( RTL_CRITICAL_SECTION )

◆ RtlIsCriticalSectionLockedByThread()

NTSYSAPI BOOL WINAPI RtlIsCriticalSectionLockedByThread ( RTL_CRITICAL_SECTION )

◆ RtlIsCurrentProcess()

NTSYSAPI BOOLEAN WINAPI RtlIsCurrentProcess ( HANDLE  )

◆ RtlIsCurrentThread()

NTSYSAPI BOOLEAN WINAPI RtlIsCurrentThread ( HANDLE  )

◆ RtlIsDosDeviceName_U()

NTSYSAPI ULONG WINAPI RtlIsDosDeviceName_U ( PCWSTR  )

◆ RtlIsNameLegalDOS8Dot3()

NTSYSAPI BOOLEAN WINAPI RtlIsNameLegalDOS8Dot3 ( const UNICODE_STRING ,
POEM_STRING  ,
PBOOLEAN   
)

◆ RtlIsNormalizedString()

NTSYSAPI NTSTATUS WINAPI RtlIsNormalizedString ( ULONG  ,
const WCHAR ,
INT  ,
BOOLEAN  
)

Referenced by IsNormalizedString().

◆ RtlIsProcessorFeaturePresent()

NTSYSAPI BOOLEAN WINAPI RtlIsProcessorFeaturePresent ( UINT  )

◆ RtlIsTextUnicode()

NTSYSAPI BOOLEAN WINAPI RtlIsTextUnicode ( LPCVOID  buf,
INT  len,
INT pf 
)

Definition at line 1290 of file unicode.c.

1291{
1292 static const WCHAR std_control_chars[] = {'\r', '\n', '\t', ' ', 0x3000, 0};
1293 static const WCHAR byterev_control_chars[] = {0x0d00, 0x0a00, 0x0900, 0x2000, 0};
1294 const WCHAR *s = buf;
1295 int i;
1296 unsigned int flags = MAXULONG, out_flags = 0;
1297 UCHAR last_lo_byte = 0;
1298 UCHAR last_hi_byte = 0;
1299 ULONG hi_byte_diff = 0;
1300 ULONG lo_byte_diff = 0;
1301 ULONG weight = 3;
1302 ULONG lead_byte = 0;
1303
1304 if (len < sizeof(WCHAR))
1305 {
1306 /* FIXME: MSDN documents IS_TEXT_UNICODE_BUFFER_TOO_SMALL but there is no such thing... */
1307 if (pf) *pf = 0;
1308
1309 return FALSE;
1310 }
1311
1312 if (pf)
1313 flags = *pf;
1314
1315 /*
1316 * Apply various tests to the text string. According to the
1317 * docs, each test "passed" sets the corresponding flag in
1318 * the output flags. But some of the tests are mutually
1319 * exclusive, so I don't see how you could pass all tests ...
1320 */
1321
1322 /* Check for an odd length ... pass if even. */
1323 if (len & 1) out_flags |= IS_TEXT_UNICODE_ODD_LENGTH;
1324
1325 if (((char *)buf)[len - 1] == 0)
1326 len--; /* Windows seems to do something like that to avoid e.g. false IS_TEXT_UNICODE_NULL_BYTES */
1327
1328 len /= sizeof(WCHAR);
1329
1330 /* Windows only checks the first 256 characters */
1331 if (len > 256) len = 256;
1332
1333 /* Check for the special byte order unicode marks. */
1334 if (*s == 0xFEFF) out_flags |= IS_TEXT_UNICODE_SIGNATURE;
1335 if (*s == 0xFFFE) out_flags |= IS_TEXT_UNICODE_REVERSE_SIGNATURE;
1336
1337 for (i = 0; i < len; i++)
1338 {
1339 UCHAR lo_byte = LOBYTE(s[i]);
1340 UCHAR hi_byte = HIBYTE(s[i]);
1341
1342 lo_byte_diff += max(lo_byte, last_lo_byte) - min(lo_byte, last_lo_byte);
1343 hi_byte_diff += max(hi_byte, last_hi_byte) - min(hi_byte, last_hi_byte);
1344
1345 last_lo_byte = lo_byte;
1346 last_hi_byte = hi_byte;
1347
1348 switch (s[i])
1349 {
1350 case 0xFFFE: /* Reverse BOM */
1351 case UNICODE_NULL:
1352 case 0x0A0D: /* ASCII CRLF (packed into one word) */
1353 case 0xFFFF: /* Unicode 0xFFFF */
1354 out_flags |= IS_TEXT_UNICODE_ILLEGAL_CHARS;
1355 break;
1356 }
1357 }
1358
1360 {
1361 for (i = 0; i < len; i++)
1362 {
1363 if (NlsLeadByteInfo[s[i]])
1364 {
1365 ++lead_byte;
1366 ++i;
1367 }
1368 }
1369
1370 if (lead_byte)
1371 {
1372 weight = (len / 2) - 1;
1373
1374 if (lead_byte < (weight / 3))
1375 weight = 3;
1376 else if (lead_byte < ((weight * 2) / 3))
1377 weight = 2;
1378 else
1379 weight = 1;
1380
1381 out_flags |= IS_TEXT_UNICODE_DBCS_LEADBYTE;
1382 }
1383 }
1384
1385 if (lo_byte_diff < 127 && !hi_byte_diff)
1386 {
1387 out_flags |= IS_TEXT_UNICODE_ASCII16;
1388 }
1389
1390 if (hi_byte_diff && !lo_byte_diff)
1391 {
1393 }
1394
1395 if ((weight * lo_byte_diff) < hi_byte_diff)
1396 {
1398 }
1399
1400 /* apply some statistical analysis */
1402 ((weight * hi_byte_diff) < lo_byte_diff))
1403 {
1404 out_flags |= IS_TEXT_UNICODE_STATISTICS;
1405 }
1406
1407 /* Check for unicode NULL chars */
1409 {
1410 for (i = 0; i < len; i++)
1411 {
1412 if (!(s[i] & 0xff) || !(s[i] >> 8))
1413 {
1414 out_flags |= IS_TEXT_UNICODE_NULL_BYTES;
1415 break;
1416 }
1417 }
1418 }
1419
1421 {
1422 for (i = 0; i < len; i++)
1423 {
1424 if (strchrW(std_control_chars, s[i]))
1425 {
1426 out_flags |= IS_TEXT_UNICODE_CONTROLS;
1427 break;
1428 }
1429 }
1430 }
1431
1433 {
1434 for (i = 0; i < len; i++)
1435 {
1436 if (strchrW(byterev_control_chars, s[i]))
1437 {
1439 break;
1440 }
1441 }
1442 }
1443
1444 if (pf)
1445 {
1446 out_flags &= *pf;
1447 *pf = out_flags;
1448 }
1449
1450 /* check for flags that indicate it's definitely not valid Unicode */
1452
1453 /* now check for invalid ASCII, and assume Unicode if so */
1454 if (out_flags & IS_TEXT_UNICODE_NOT_ASCII_MASK) return TRUE;
1455
1456 /* now check for Unicode flags */
1457 if (out_flags & IS_TEXT_UNICODE_UNICODE_MASK) return TRUE;
1458
1459 /* no flags set */
1460 return FALSE;
1461}
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
#define LOBYTE(W)
Definition: jmemdos.c:487
#define HIBYTE(W)
Definition: jmemdos.c:486
#define min(a, b)
Definition: monoChain.cc:55
#define UNICODE_NULL
PUSHORT NlsLeadByteInfo
Definition: nls.c:26
BOOLEAN NlsMbCodePageTag
Definition: nlsboot.c:17
weight
Definition: sortkey.c:157
#define max(a, b)
Definition: svc.c:63
#define MAXULONG
Definition: typedefs.h:251
#define strchrW(s, c)
Definition: unicode.h:40
#define IS_TEXT_UNICODE_ILLEGAL_CHARS
Definition: winnt_old.h:942
#define IS_TEXT_UNICODE_UNICODE_MASK
Definition: winnt_old.h:946
#define IS_TEXT_UNICODE_REVERSE_ASCII16
Definition: winnt_old.h:935
#define IS_TEXT_UNICODE_NOT_ASCII_MASK
Definition: winnt_old.h:949
#define IS_TEXT_UNICODE_NULL_BYTES
Definition: winnt_old.h:945
#define IS_TEXT_UNICODE_REVERSE_CONTROLS
Definition: winnt_old.h:939
#define IS_TEXT_UNICODE_REVERSE_MASK
Definition: winnt_old.h:947
#define IS_TEXT_UNICODE_DBCS_LEADBYTE
Definition: winnt_old.h:944
#define IS_TEXT_UNICODE_CONTROLS
Definition: winnt_old.h:938
#define IS_TEXT_UNICODE_ODD_LENGTH
Definition: winnt_old.h:943
#define IS_TEXT_UNICODE_REVERSE_SIGNATURE
Definition: winnt_old.h:941
#define IS_TEXT_UNICODE_NOT_UNICODE_MASK
Definition: winnt_old.h:948
#define IS_TEXT_UNICODE_STATISTICS
Definition: winnt_old.h:936
#define IS_TEXT_UNICODE_ASCII16
Definition: winnt_old.h:934
#define IS_TEXT_UNICODE_SIGNATURE
Definition: winnt_old.h:940
#define IS_TEXT_UNICODE_REVERSE_STATISTICS
Definition: winnt_old.h:937
unsigned char UCHAR
Definition: xmlstorage.h:181

◆ RtlIsValidHandle()

NTSYSAPI BOOLEAN WINAPI RtlIsValidHandle ( const RTL_HANDLE_TABLE ,
const RTL_HANDLE  
)

◆ RtlIsValidIndexHandle()

NTSYSAPI BOOLEAN WINAPI RtlIsValidIndexHandle ( const RTL_HANDLE_TABLE ,
ULONG  Index,
RTL_HANDLE **   
)

◆ RtlIsValidLocaleName()

NTSYSAPI BOOLEAN WINAPI RtlIsValidLocaleName ( const WCHAR ,
ULONG   
)

◆ RtlLargeIntegerAdd()

NTSYSAPI LONGLONG WINAPI RtlLargeIntegerAdd ( LONGLONG  ,
LONGLONG   
)

◆ RtlLargeIntegerArithmeticShift()

NTSYSAPI LONGLONG WINAPI RtlLargeIntegerArithmeticShift ( LONGLONG  ,
INT   
)

◆ RtlLargeIntegerNegate()

NTSYSAPI LONGLONG WINAPI RtlLargeIntegerNegate ( LONGLONG  )

◆ RtlLargeIntegerShiftLeft()

NTSYSAPI LONGLONG WINAPI RtlLargeIntegerShiftLeft ( LONGLONG  ,
INT   
)

◆ RtlLargeIntegerShiftRight()

NTSYSAPI LONGLONG WINAPI RtlLargeIntegerShiftRight ( LONGLONG  ,
INT   
)

◆ RtlLargeIntegerSubtract()

NTSYSAPI LONGLONG WINAPI RtlLargeIntegerSubtract ( LONGLONG  ,
LONGLONG   
)

◆ RtlLargeIntegerToChar()

NTSYSAPI NTSTATUS WINAPI RtlLargeIntegerToChar ( const ULONGLONG ,
ULONG  ,
ULONG  ,
PCHAR   
)

◆ RtlLcidToLocaleName()

NTSYSAPI NTSTATUS WINAPI RtlLcidToLocaleName ( LCID  ,
UNICODE_STRING ,
ULONG  ,
BOOLEAN   
)

◆ RtlLeaveCriticalSection()

NTSYSAPI NTSTATUS WINAPI RtlLeaveCriticalSection ( RTL_CRITICAL_SECTION )

◆ RtlLengthRequiredSid()

NTSYSAPI DWORD WINAPI RtlLengthRequiredSid ( DWORD  )

◆ RtlLengthSecurityDescriptor()

◆ RtlLengthSid()

NTSYSAPI DWORD WINAPI RtlLengthSid ( PSID  )

◆ RtlLocaleNameToLcid()

NTSYSAPI NTSTATUS WINAPI RtlLocaleNameToLcid ( const WCHAR ,
LCID ,
ULONG   
)

Referenced by LocaleNameToLCID().

◆ RtlLocalTimeToSystemTime()

NTSYSAPI NTSTATUS WINAPI RtlLocalTimeToSystemTime ( const LARGE_INTEGER ,
PLARGE_INTEGER   
)

◆ RtlLocateExtendedFeature()

NTSYSAPI void *WINAPI RtlLocateExtendedFeature ( CONTEXT_EX ,
ULONG  ,
ULONG  
)

◆ RtlLocateExtendedFeature2()

NTSYSAPI void *WINAPI RtlLocateExtendedFeature2 ( CONTEXT_EX ,
ULONG  ,
XSTATE_CONFIGURATION ,
ULONG  
)

◆ RtlLocateLegacyContext()

NTSYSAPI void *WINAPI RtlLocateLegacyContext ( CONTEXT_EX ,
ULONG  
)

◆ RtlLockHeap()

◆ RtlLookupAtomInAtomTable()

NTSYSAPI NTSTATUS WINAPI RtlLookupAtomInAtomTable ( RTL_ATOM_TABLE  ,
const WCHAR ,
RTL_ATOM  
)

◆ RtlMakeSelfRelativeSD()

NTSYSAPI NTSTATUS WINAPI RtlMakeSelfRelativeSD ( PSECURITY_DESCRIPTOR  ,
PSECURITY_DESCRIPTOR  ,
LPDWORD   
)

◆ RtlMultiByteToUnicodeN()

NTSYSAPI NTSTATUS WINAPI RtlMultiByteToUnicodeN ( LPWSTR  ,
DWORD  ,
LPDWORD  ,
LPCSTR  ,
DWORD   
)

◆ RtlMultiByteToUnicodeSize()

NTSYSAPI NTSTATUS WINAPI RtlMultiByteToUnicodeSize ( DWORD ,
LPCSTR  ,
ULONG   
)

◆ RtlNewSecurityObject()

◆ RtlNewSecurityObjectEx()

◆ RtlNewSecurityObjectWithMultipleInheritance()

NTSYSAPI NTSTATUS WINAPI RtlNewSecurityObjectWithMultipleInheritance ( PSECURITY_DESCRIPTOR  ,
PSECURITY_DESCRIPTOR  ,
PSECURITY_DESCRIPTOR ,
GUID **  ,
ULONG  ,
BOOLEAN  ,
ULONG  ,
HANDLE  ,
PGENERIC_MAPPING   
)

◆ RtlNormalizeProcessParams()

◆ RtlNormalizeString()

NTSYSAPI NTSTATUS WINAPI RtlNormalizeString ( ULONG  ,
const WCHAR ,
INT  ,
WCHAR ,
INT  
)

Referenced by fold_string(), and NormalizeString().

◆ RtlNtStatusToDosError()

NTSYSAPI ULONG WINAPI RtlNtStatusToDosError ( NTSTATUS  )

Referenced by AbortSystemShutdownA(), AbortSystemShutdownW(), AccessCheck(), AccessCheckAndAuditAlarmA(), AccessCheckAndAuditAlarmW(), AccessCheckByType(), AccessCheckByTypeResultList(), AccpOpenNamedObject(), AccRewriteGetHandleRights(), AccRewriteSetHandleRights(), ActivateActCtx(), AddAccessAllowedAce(), AddAccessAllowedAceEx(), AddAccessAllowedObjectAce(), AddAccessDeniedAce(), AddAccessDeniedAceEx(), AddAccessDeniedObjectAce(), AddAce(), AddAuditAccessAce(), AddAuditAccessAceEx(), AddAuditAccessObjectAce(), AddIPAddress(), AdjustTokenGroups(), AdjustTokenPrivileges(), AllocateLocallyUniqueId(), ApcRoutine(), BackupEventLogA(), BackupEventLogW(), BasepIoCompletion(), BasepIoCompletionSimple(), BaseSetLastNTError(), CallBackConvertToAscii(), CallNt(), CheckTokenMembership(), ClearEventLogA(), ClearEventLogW(), CloseEventLog(), CNG_CalcHash(), CNG_ImportECCPubKey(), CNG_VerifySignature(), co_IntRegisterLogonProcess(), CommitWaveBufferApc(), compare_imp(), ConCfgOpenUserSettings(), ConvertSidToStringSidW(), create_classes_key(), CreateActCtxW(), CreateEnvironmentBlock(), CreateEventExW(), CreateFileMappingW(), CreateFileW(), CreateICA(), CreateMutexExW(), CreatePrivateObjectSecurity(), CreateProcessAsUserCommon(), CreateRestrictedToken(), CreateSemaphoreExW(), CreateSymbolicLinkW(), CreateWaitableTimerExW(), DeleteHKCRValue(), DeleteIPAddress(), DeregisterEventSource(), DestroyPrivateObjectSecurity(), DiscardVirtualMemory(), DsAddressToSiteNamesA(), DsAddressToSiteNamesExA(), DsEnumerateDomainTrustsA(), DsGetDcNameWithAccountA(), DsGetDcSiteCoverageA(), DuplicateTokenEx(), EmptyWorkingSet(), EnumDeviceDrivers(), EnumFontsA(), EnumNamesW(), EnumPageFilesW(), EnumProcesses(), EnumProcessModules(), EnumPropsA(), EnumPropsExA(), EnumPropsExW(), EnumPropsW(), EnumResourceLanguagesA(), EnumResourceLanguagesExA(), EnumResourceLanguagesExW(), EnumResourceLanguagesW(), EnumResourceNamesA(), EnumResourceNamesExA(), EnumResourceNamesExW(), EnumResourceNamesW(), EnumResourceTypesA(), EnumResourceTypesW(), ExpandEnvironmentStringsForUserW(), file_name_AtoW(), find_resourceA(), find_resourceW(), FindActCtxSectionGuid(), FindActCtxSectionStringW(), FindDeviceDriver(), FindFirstChangeNotificationW(), FindFirstFileExW(), FindModule(), FindResourceExW(), format_ntstatus(), get_registry_locale_info(), GetCurrentActCtx(), GetCurrentHwProfileA(), GetDriveTypeW(), GetEventLogInformation(), GetFileAttributesW(), GetFileInformationByHandleEx(), GetFileSecurityW(), GetInterfaceNameInternal(), getIPStats(), GetKeyName(), GetKeySam(), GetMappedFileNameW(), GetModuleFileNameW(), GetModuleInformation(), GetNumberOfEventLogRecords(), GetOldestEventLogRecord(), GetPerformanceInfo(), GetPrivateObjectSecurity(), GetProcessImageFileNameA(), GetProcessImageFileNameW(), GetProcessMemoryInfo(), GetPwrCapabilities(), GetQueuedCompletionStatus(), GetQueuedCompletionStatusEx(), GetSecurityDescriptorControl(), GetSecurityDescriptorDacl(), GetSecurityDescriptorGroup(), GetSecurityDescriptorOwner(), GetSecurityDescriptorSacl(), GetSiteSidFromToken(), GetStringBitmapA(), getTCPStats(), GetTextExtentExPointA(), GetTokenInformation(), getUDPStats(), GetUserDefaultLocaleName(), GetUserSidStringFromToken(), GetWsChanges(), HeapWalk(), Icmp6CreateFile(), Icmp6SendEcho2(), IcmpCloseHandle(), IcmpCreateFile(), IcmpSendEcho(), IcmpSendEcho2(), ImpersonateAnonymousToken(), ImpersonateLoggedOnUser(), ImpersonateSelf(), InitializeAcl(), InitializeCriticalSectionEx(), InitializeProcessForWsWatch(), InitializeSecurityDescriptor(), InitializeSid(), InitiateShutdownA(), InitiateSystemShutdownA(), InitiateSystemShutdownExA(), InitiateSystemShutdownW(), InitOnceBeginInitialize(), invoke_completion(), iocp_poller(), IsPwrHibernateAllowed(), IsPwrShutdownAllowed(), IsPwrSuspendAllowed(), IsTokenRestricted(), IsValidSecurityDescriptor(), KmtFltLoadDriver(), KsiCreateObjectType(), LCIDToLocaleName(), load_message(), LoadResource(), LoadVia_SystemExtendServiceTableInformation(), LoadVia_SystemLoadGdiDriverInformation(), LogonUserExW(), LsaNtStatusToWinError(), main(), MakeAbsoluteSD(), MakeAbsoluteSD2(), MakeSelfRelativeSD(), MapViewOfFileEx(), NetpGetClientLogonId(), NetpNtStatusToApiStatus(), NetrWkstaGetInfo(), NetrWkstaUserEnum(), NetrWkstaUserGetInfo(), NormalizeString(), NotifyChangeEventLog(), NsGetFriendlyNameFromIfName(), NtStartDriver(), ntstatus_error::ntstatus_error(), NtStatusToHResult(), NtStopDriver(), NtUserAttachThreadInput(), NtUserRedrawWindow(), NtUserRegisterUserApiHook(), ObjectCloseAuditAlarmA(), ObjectCloseAuditAlarmW(), ObjectDeleteAuditAlarmA(), ObjectDeleteAuditAlarmW(), ObjectOpenAuditAlarmA(), ObjectOpenAuditAlarmW(), ObjectPrivilegeAuditAlarmA(), ObjectPrivilegeAuditAlarmW(), open_classes_key(), OpenBackupEventLogA(), OpenBackupEventLogW(), OpenEventLogA(), OpenEventLogW(), OpenFile(), OpenProcessToken(), PeekNamedPipe(), PrivilegeCheck(), PrivilegedServiceAuditAlarmA(), PrivilegedServiceAuditAlarmW(), QueryActCtxW(), QueryWorkingSet(), QueryWorkingSetEx(), read_write_apc(), ReadEventLogA(), ReadEventLogW(), ReadFile(), ReadFileScatter(), RegCloseKey(), RegCopyTreeW(), RegCreateKeyExA(), RegCreateKeyExW(), RegDeleteKeyExA(), RegDeleteKeyExW(), RegDeleteKeyValueA(), RegDeleteKeyValueW(), RegDeleteTreeW(), RegDeleteValueA(), RegDeleteValueW(), RegEnumKeyExA(), RegEnumKeyExW(), RegEnumValueA(), RegEnumValueW(), RegFlushKey(), RegGetKeySecurity(), RegisterDlls(), RegisterEventSourceA(), RegisterEventSourceW(), RegLoadKeyA(), RegLoadKeyW(), RegNotifyChangeKeyValue(), RegOpenCurrentUser(), RegOpenKeyExA(), RegOpenKeyExW(), RegOpenUserClassesRoot(), RegOverridePredefKey(), RegQueryInfoKeyA(), RegQueryInfoKeyW(), RegQueryValueExA(), RegQueryValueExW(), RegReplaceKeyW(), RegRestoreKeyW(), RegSaveKeyExA(), RegSaveKeyExW(), RegSaveKeyW(), RegSetKeySecurity(), RegSetKeyValueA(), RegSetKeyValueW(), RegSetValueA(), RegSetValueExA(), RegSetValueExW(), RegSetValueW(), RegUnLoadKeyW(), ReplaceFileW(), ReportEventA(), ReportEventW(), RevertToSelf(), RQueryServiceObjectSecurity(), RSetServiceObjectSecurity(), RtlReadOutOfProcessMemoryStream(), ScBuildAnsiArgsVector(), ScConnectControlPipe(), ScmCreateDefaultSD(), ScmCreateDefaultServiceSD(), ScmCreateGroupList(), ScmCreateOrReferenceServiceImage(), ScmCreatePipeSD(), ScmDecryptPassword(), ScmEncryptPassword(), ScmGetDriverStatus(), ScmLoadDriver(), ScmSetServicePassword(), ScmUnloadDriver(), SendIoctl(), set_ntstatus(), SetAclInformation(), SetFileSecurityW(), SetKernelObjectSecurity(), SetLocaleInfoW(), SetPrivateObjectSecurity(), SetSecurityDescriptorControl(), SetSecurityDescriptorDacl(), SetSecurityDescriptorGroup(), SetSecurityDescriptorOwner(), SetSecurityDescriptorSacl(), SetServiceObjectSecurity(), SetThreadIdealProcessor(), SetThreadToken(), SetTokenInformation(), SetupDiGetDeviceInstallParamsW(), ShutDown_Hibernate(), ShutDown_PowerOff(), ShutDown_Reboot(), ShutDown_StandBy(), SignalObjectAndWait(), SleepConditionVariableCS(), SleepConditionVariableSRW(), StartRpcServer(), StopRpcServer(), TCPSendIoctl(), tp_io_callback(), UserExitReactOS(), UserSetLastNTError(), ValidatePowerPolicies(), WahCreateSocketHandle(), WahOpenHandleHelper(), WaitForMultipleObjectsEx(), WriteFile(), WriteFileGather(), WSHIoctl_GetInterfaceList(), WTSEnumerateProcessesW(), and ZombifyActCtx().

◆ RtlNtStatusToDosErrorNoTeb()

NTSYSAPI ULONG WINAPI RtlNtStatusToDosErrorNoTeb ( NTSTATUS  )

◆ RtlNumberOfClearBits()

NTSYSAPI ULONG WINAPI RtlNumberOfClearBits ( PCRTL_BITMAP  )

◆ RtlNumberOfSetBits()

NTSYSAPI ULONG WINAPI RtlNumberOfSetBits ( PCRTL_BITMAP  )

◆ RtlOemStringToUnicodeSize()

NTSYSAPI ULONG WINAPI RtlOemStringToUnicodeSize ( const STRING )

◆ RtlOemStringToUnicodeString()

NTSYSAPI NTSTATUS WINAPI RtlOemStringToUnicodeString ( UNICODE_STRING ,
const STRING ,
BOOLEAN   
)

◆ RtlOemToUnicodeN()

NTSYSAPI NTSTATUS WINAPI RtlOemToUnicodeN ( LPWSTR  ,
DWORD  ,
LPDWORD  ,
LPCSTR  ,
DWORD   
)

◆ RtlOpenCurrentUser()

NTSYSAPI NTSTATUS WINAPI RtlOpenCurrentUser ( ACCESS_MASK  ,
PHANDLE   
)

◆ RtlPinAtomInAtomTable()

NTSYSAPI NTSTATUS WINAPI RtlPinAtomInAtomTable ( RTL_ATOM_TABLE  ,
RTL_ATOM   
)

◆ RtlpNtCreateKey()

NTSYSAPI NTSTATUS WINAPI RtlpNtCreateKey ( PHANDLE  ,
ACCESS_MASK  ,
const OBJECT_ATTRIBUTES ,
ULONG  ,
const UNICODE_STRING ,
ULONG  ,
PULONG   
)

◆ RtlpNtEnumerateSubKey()

NTSYSAPI NTSTATUS WINAPI RtlpNtEnumerateSubKey ( HANDLE  ,
UNICODE_STRING ,
ULONG   
)

◆ RtlpNtMakeTemporaryKey()

NTSYSAPI NTSTATUS WINAPI RtlpNtMakeTemporaryKey ( HANDLE  )

◆ RtlpNtOpenKey()

◆ RtlpNtSetValueKey()

NTSYSAPI NTSTATUS WINAPI RtlpNtSetValueKey ( HANDLE  ,
ULONG  ,
const void ,
ULONG   
)

Referenced by LsapSetObjectAttribute().

◆ RtlPopFrame()

NTSYSAPI void WINAPI RtlPopFrame ( TEB_ACTIVE_FRAME )

◆ RtlPrefixString()

NTSYSAPI BOOLEAN WINAPI RtlPrefixString ( const STRING String1,
const STRING String2,
BOOLEAN  CaseInsensitive 
)

Definition at line 886 of file unicode.c.

890{
891 PCHAR pc1;
892 PCHAR pc2;
893 ULONG NumChars;
894
895 if (String2->Length < String1->Length)
896 return FALSE;
897
898 NumChars = String1->Length;
899 pc1 = String1->Buffer;
900 pc2 = String2->Buffer;
901
902 if (pc1 && pc2)
903 {
904 if (CaseInsensitive)
905 {
906 while (NumChars--)
907 {
908 if (RtlUpperChar(*pc1++) != RtlUpperChar(*pc2++))
909 return FALSE;
910 }
911 }
912 else
913 {
914 while (NumChars--)
915 {
916 if (*pc1++ != *pc2++)
917 return FALSE;
918 }
919 }
920
921 return TRUE;
922 }
923
924 return FALSE;
925}
static const unsigned char pc1[56]
Definition: des.c:54
static const unsigned char pc2[48]
Definition: des.c:68
_In_ const STRING * String2
Definition: rtlfuncs.h:2404
_In_ const STRING _In_ BOOLEAN CaseInsensitive
Definition: rtlfuncs.h:2406
CHAR NTAPI RtlUpperChar(_In_ CHAR Source)
Definition: nlsboot.c:229

◆ RtlProcessFlsData()

NTSYSAPI void WINAPI RtlProcessFlsData ( void ,
ULONG   
)

Referenced by DeleteFiber().

◆ RtlpUnWaitCriticalSection()

NTSYSAPI NTSTATUS WINAPI RtlpUnWaitCriticalSection ( RTL_CRITICAL_SECTION )

◆ RtlPushFrame()

NTSYSAPI void WINAPI RtlPushFrame ( TEB_ACTIVE_FRAME )

◆ RtlpWaitForCriticalSection()

NTSYSAPI NTSTATUS WINAPI RtlpWaitForCriticalSection ( RTL_CRITICAL_SECTION )

◆ RtlQueryActivationContextApplicationSettings()

NTSYSAPI NTSTATUS WINAPI RtlQueryActivationContextApplicationSettings ( DWORD  flags,
HANDLE  handle,
const WCHAR ns,
const WCHAR settings,
WCHAR buffer,
SIZE_T  size,
SIZE_T written 
)

Definition at line 5988 of file actctx.c.

5991{
5993 const WCHAR *res;
5994
5995 if (flags)
5996 {
5997 WARN( "unknown flags %08x\n", flags );
5999 }
6000
6001 if (ns)
6002 {
6008 }
6010
6013
6015
6016 if (written) *written = wcslen(res) + 1;
6017 if (size < wcslen(res)) return STATUS_BUFFER_TOO_SMALL;
6018 wcscpy( buffer, res );
6019 return STATUS_SUCCESS;
6020}
struct mke2fs_defaults settings[]
wcscpy
GLuint res
Definition: glext.h:9613
GLsizeiptr size
Definition: glext.h:5919
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
_Check_return_ _CRTIMP int __cdecl wcscmp(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2)
static const WCHAR windowsSettings2011NSW[]
Definition: actctx.c:719
static const WCHAR windowsSettings2017NSW[]
Definition: actctx.c:721
static const WCHAR windowsSettings2016NSW[]
Definition: actctx.c:720
static const WCHAR * find_app_settings(ACTIVATION_CONTEXT *actctx, const WCHAR *settings, const WCHAR *ns)
Definition: actctx.c:5174
static const WCHAR windowsSettings2005NSW[]
Definition: actctx.c:718
#define STATUS_BUFFER_TOO_SMALL
Definition: shellext.h:69
Definition: mxnamespace.c:45

Referenced by QueryActCtxSettingsW().

◆ RtlQueryAtomInAtomTable()

NTSYSAPI NTSTATUS WINAPI RtlQueryAtomInAtomTable ( RTL_ATOM_TABLE  ,
RTL_ATOM  ,
ULONG ,
ULONG ,
WCHAR ,
ULONG  
)

◆ RtlQueryDynamicTimeZoneInformation()

NTSYSAPI NTSTATUS WINAPI RtlQueryDynamicTimeZoneInformation ( RTL_DYNAMIC_TIME_ZONE_INFORMATION )

◆ RtlQueryEnvironmentVariable()

NTSYSAPI NTSTATUS WINAPI RtlQueryEnvironmentVariable ( WCHAR ,
const WCHAR ,
SIZE_T  ,
WCHAR ,
SIZE_T  ,
SIZE_T  
)

◆ RtlQueryEnvironmentVariable_U()

NTSYSAPI NTSTATUS WINAPI RtlQueryEnvironmentVariable_U ( PWSTR  Environment,
PUNICODE_STRING  Name,
PUNICODE_STRING  Value 
)

Definition at line 510 of file env.c.

513{
515 PWSTR wcs;
517 PWSTR val;
518 BOOLEAN SysEnvUsed = FALSE;
519
520 DPRINT("RtlQueryEnvironmentVariable_U Environment %p Variable %wZ Value %p\n",
522
523 if (Environment == NULL)
524 {
526 if (Peb) {
529 SysEnvUsed = TRUE;
530 }
531 }
532
533 if (Environment == NULL)
534 {
535 if (SysEnvUsed)
538 }
539
540 Value->Length = 0;
541
543 DPRINT("Starting search at :%p\n", wcs);
544 while (*wcs)
545 {
546 var.Buffer = wcs++;
547 wcs = wcschr(wcs, L'=');
548 if (wcs == NULL)
549 {
550 wcs = var.Buffer + wcslen(var.Buffer);
551 DPRINT("Search at :%S\n", wcs);
552 }
553 if (*wcs)
554 {
555 var.Length = var.MaximumLength = (USHORT)(wcs - var.Buffer) * sizeof(WCHAR);
556 val = ++wcs;
557 wcs += wcslen(wcs);
558 DPRINT("Search at :%S\n", wcs);
559
561 {
562 Value->Length = (USHORT)(wcs - val) * sizeof(WCHAR);
563 if (Value->Length <= Value->MaximumLength)
564 {
565 memcpy(Value->Buffer, val,
566 min(Value->Length + sizeof(WCHAR), Value->MaximumLength));
567 DPRINT("Value %S\n", val);
568 DPRINT("Return STATUS_SUCCESS\n");
570 }
571 else
572 {
573 DPRINT("Return STATUS_BUFFER_TOO_SMALL\n");
575 }
576
577 if (SysEnvUsed)
579
580 return(Status);
581 }
582 }
583 wcs++;
584 }
585
586 if (SysEnvUsed)
588
589 DPRINT("Return STATUS_VARIABLE_NOT_FOUND: %wZ\n", Name);
591}
LPWSTR Name
Definition: desk.c:124
#define wcschr
Definition: compat.h:17
GLuint GLfloat * val
Definition: glext.h:7180
NTSYSAPI PEB *WINAPI RtlGetCurrentPeb(void)
Definition: libsupp.c:65
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
const char * var
Definition: shader.c:5666
NTSYSAPI BOOLEAN NTAPI RtlEqualUnicodeString(PUNICODE_STRING String1, PUNICODE_STRING String2, BOOLEAN CaseInSensitive)
#define STATUS_VARIABLE_NOT_FOUND
Definition: ntstatus.h:586
PRTL_USER_PROCESS_PARAMETERS ProcessParameters
Definition: btrfs_drv.h:1913
uint16_t * PWSTR
Definition: typedefs.h:56
wchar_t wcs[5]

Referenced by RtlExpandEnvironmentStrings_U().

◆ RtlQueryHeapInformation()

NTSYSAPI NTSTATUS WINAPI RtlQueryHeapInformation ( HANDLE  ,
HEAP_INFORMATION_CLASS  ,
PVOID  ,
SIZE_T  ,
PSIZE_T   
)

Referenced by HeapQueryInformation().

◆ RtlQueryInformationAcl()

NTSYSAPI NTSTATUS WINAPI RtlQueryInformationAcl ( PACL  ,
LPVOID  ,
DWORD  ,
ACL_INFORMATION_CLASS   
)

◆ RtlQueryInformationActivationContext()

NTSYSAPI NTSTATUS WINAPI RtlQueryInformationActivationContext ( ULONG  flags,
HANDLE  handle,
PVOID  subinst,
ULONG  class,
PVOID  buffer,
SIZE_T  bufsize,
SIZE_T retlen 
)

Definition at line 5572 of file actctx.c.

5575{
5578
5579 TRACE("%08x %p %p %u %p %ld %p\n", flags, handle,
5580 subinst, class, buffer, bufsize, retlen);
5581
5582 if (retlen) *retlen = 0;
5583 if ((status = find_query_actctx( &handle, flags, class ))) return status;
5584
5585 switch (class)
5586 {
5587 case ActivationContextBasicInformation:
5588 {
5589 ACTIVATION_CONTEXT_BASIC_INFORMATION *info = buffer;
5590
5591 if (retlen) *retlen = sizeof(*info);
5592 if (!info || bufsize < sizeof(*info)) return STATUS_BUFFER_TOO_SMALL;
5593
5594 info->hActCtx = handle;
5595 info->dwFlags = 0; /* FIXME */
5597 }
5598 break;
5599
5600 case ActivationContextDetailedInformation:
5601 {
5602 ACTIVATION_CONTEXT_DETAILED_INFORMATION *acdi = buffer;
5603 struct assembly *assembly = NULL;
5604 SIZE_T len, manifest_len = 0, config_len = 0, appdir_len = 0;
5605 LPWSTR ptr;
5606
5608
5609 if (actctx->num_assemblies) assembly = actctx->assemblies;
5610
5611 if (assembly && assembly->manifest.info)
5612 manifest_len = wcslen(assembly->manifest.info) + 1;
5613 if (actctx->config.info) config_len = wcslen(actctx->config.info) + 1;
5614 if (actctx->appdir.info) appdir_len = wcslen(actctx->appdir.info) + 1;
5615 len = sizeof(*acdi) + (manifest_len + config_len + appdir_len) * sizeof(WCHAR);
5616
5617 if (retlen) *retlen = len;
5618 if (!buffer || bufsize < len) return STATUS_BUFFER_TOO_SMALL;
5619
5620 acdi->dwFlags = 0;
5621 acdi->ulFormatVersion = assembly ? 1 : 0; /* FIXME */
5622 acdi->ulAssemblyCount = actctx->num_assemblies;
5623 acdi->ulRootManifestPathType = assembly ? assembly->manifest.type : 0 /* FIXME */;
5624 acdi->ulRootManifestPathChars = assembly && assembly->manifest.info ? manifest_len - 1 : 0;
5625 acdi->ulRootConfigurationPathType = actctx->config.type;
5626 acdi->ulRootConfigurationPathChars = actctx->config.info ? config_len - 1 : 0;
5627 acdi->ulAppDirPathType = actctx->appdir.type;
5628 acdi->ulAppDirPathChars = actctx->appdir.info ? appdir_len - 1 : 0;
5629 ptr = (LPWSTR)(acdi + 1);
5630 if (manifest_len)
5631 {
5632 acdi->lpRootManifestPath = ptr;
5633 memcpy(ptr, assembly->manifest.info, manifest_len * sizeof(WCHAR));
5634 ptr += manifest_len;
5635 }
5636 else acdi->lpRootManifestPath = NULL;
5637 if (config_len)
5638 {
5639 acdi->lpRootConfigurationPath = ptr;
5640 memcpy(ptr, actctx->config.info, config_len * sizeof(WCHAR));
5641 ptr += config_len;
5642 }
5643 else acdi->lpRootConfigurationPath = NULL;
5644 if (appdir_len)
5645 {
5646 acdi->lpAppDirPath = ptr;
5647 memcpy(ptr, actctx->appdir.info, appdir_len * sizeof(WCHAR));
5648 }
5649 else acdi->lpAppDirPath = NULL;
5650 }
5651 break;
5652
5653 case AssemblyDetailedInformationInActivationContext:
5654 {
5655 ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION *afdi = buffer;
5656 struct assembly *assembly;
5657 WCHAR *assembly_id;
5658 DWORD index;
5659 SIZE_T len, id_len = 0, ad_len = 0, path_len = 0;
5660 LPWSTR ptr;
5661
5663 if (!subinst) return STATUS_INVALID_PARAMETER;
5664
5665 index = *(DWORD*)subinst;
5666 if (!index || index > actctx->num_assemblies) return STATUS_INVALID_PARAMETER;
5667
5668 assembly = &actctx->assemblies[index - 1];
5669
5670 if (!(assembly_id = build_assembly_id( &assembly->id ))) return STATUS_NO_MEMORY;
5671 id_len = wcslen(assembly_id) + 1;
5672 if (assembly->directory) ad_len = wcslen(assembly->directory) + 1;
5673
5674 if (assembly->manifest.info &&
5676 path_len = wcslen(assembly->manifest.info) + 1;
5677
5678 len = sizeof(*afdi) + (id_len + ad_len + path_len) * sizeof(WCHAR);
5679
5680 if (retlen) *retlen = len;
5681 if (!buffer || bufsize < len)
5682 {
5683 RtlFreeHeap( GetProcessHeap(), 0, assembly_id );
5685 }
5686
5687 afdi->ulFlags = 0; /* FIXME */
5688 afdi->ulEncodedAssemblyIdentityLength = (id_len - 1) * sizeof(WCHAR);
5689 afdi->ulManifestPathType = assembly->manifest.type;
5690 afdi->ulManifestPathLength = assembly->manifest.info ? (path_len - 1) * sizeof(WCHAR) : 0;
5691 /* FIXME afdi->liManifestLastWriteTime = 0; */
5692 afdi->ulPolicyPathType = ACTIVATION_CONTEXT_PATH_TYPE_NONE; /* FIXME */
5693 afdi->ulPolicyPathLength = 0;
5694 /* FIXME afdi->liPolicyLastWriteTime = 0; */
5695 afdi->ulMetadataSatelliteRosterIndex = 0; /* FIXME */
5696 afdi->ulManifestVersionMajor = 1;
5697 afdi->ulManifestVersionMinor = 0;
5698 afdi->ulPolicyVersionMajor = 0; /* FIXME */
5699 afdi->ulPolicyVersionMinor = 0; /* FIXME */
5700 afdi->ulAssemblyDirectoryNameLength = ad_len ? (ad_len - 1) * sizeof(WCHAR) : 0;
5701 ptr = (LPWSTR)(afdi + 1);
5702 afdi->lpAssemblyEncodedAssemblyIdentity = ptr;
5703 memcpy( ptr, assembly_id, id_len * sizeof(WCHAR) );
5704 ptr += id_len;
5705 if (path_len)
5706 {
5707 afdi->lpAssemblyManifestPath = ptr;
5708 memcpy(ptr, assembly->manifest.info, path_len * sizeof(WCHAR));
5709 ptr += path_len;
5710 } else afdi->lpAssemblyManifestPath = NULL;
5711 afdi->lpAssemblyPolicyPath = NULL; /* FIXME */
5712 if (ad_len)
5713 {
5714 afdi->lpAssemblyDirectoryName = ptr;
5715 memcpy(ptr, assembly->directory, ad_len * sizeof(WCHAR));
5716 }
5717 else afdi->lpAssemblyDirectoryName = NULL;
5718 RtlFreeHeap( GetProcessHeap(), 0, assembly_id );
5719 }
5720 break;
5721
5722 case FileInformationInAssemblyOfAssemblyInActivationContext:
5723 {
5724 const ACTIVATION_CONTEXT_QUERY_INDEX *acqi = subinst;
5725 ASSEMBLY_FILE_DETAILED_INFORMATION *afdi = buffer;
5726 struct assembly *assembly;
5727 struct dll_redirect *dll;
5728 SIZE_T len, dll_len = 0;
5729 LPWSTR ptr;
5730
5732 if (!acqi) return STATUS_INVALID_PARAMETER;
5733
5734 if (acqi->ulAssemblyIndex >= actctx->num_assemblies)
5736 assembly = &actctx->assemblies[acqi->ulAssemblyIndex];
5737
5738 if (acqi->ulFileIndexInAssembly >= assembly->num_dlls)
5740 dll = &assembly->dlls[acqi->ulFileIndexInAssembly];
5741
5742 if (dll->name) dll_len = wcslen(dll->name) + 1;
5743 len = sizeof(*afdi) + dll_len * sizeof(WCHAR);
5744
5745 if (!buffer || bufsize < len)
5746 {
5747 if (retlen) *retlen = len;
5749 }
5750 if (retlen) *retlen = 0; /* yes that's what native does !! */
5751 afdi->ulFlags = ACTIVATION_CONTEXT_SECTION_DLL_REDIRECTION;
5752 afdi->ulFilenameLength = dll_len ? (dll_len - 1) * sizeof(WCHAR) : 0;
5753 afdi->ulPathLength = 0; /* FIXME */
5754 ptr = (LPWSTR)(afdi + 1);
5755 if (dll_len)
5756 {
5757 afdi->lpFileName = ptr;
5758 memcpy( ptr, dll->name, dll_len * sizeof(WCHAR) );
5759 } else afdi->lpFileName = NULL;
5760 afdi->lpFilePath = NULL; /* FIXME */
5761 }
5762 break;
5763
5764 case CompatibilityInformationInActivationContext:
5765 {
5766 /*ACTIVATION_CONTEXT_COMPATIBILITY_INFORMATION*/DWORD *acci = buffer;
5767 COMPATIBILITY_CONTEXT_ELEMENT *elements;
5768 struct assembly *assembly = NULL;
5770 SIZE_T len;
5771
5773
5774 if (actctx->num_assemblies) assembly = actctx->assemblies;
5775
5776 if (assembly)
5778 len = sizeof(*acci) + num_compat_contexts * sizeof(COMPATIBILITY_CONTEXT_ELEMENT);
5779
5780 if (retlen) *retlen = len;
5781 if (!buffer || bufsize < len) return STATUS_BUFFER_TOO_SMALL;
5782
5783 *acci = num_compat_contexts;
5784 elements = (COMPATIBILITY_CONTEXT_ELEMENT*)(acci + 1);
5785 for (n = 0; n < num_compat_contexts; ++n)
5786 {
5787 elements[n] = assembly->compat_contexts[n];
5788 }
5789 }
5790 break;
5791
5792 case RunlevelInformationInActivationContext:
5793 {
5794 ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION *acrli = buffer;
5795 struct assembly *assembly;
5796 SIZE_T len;
5797
5799
5800 len = sizeof(*acrli);
5801 if (retlen) *retlen = len;
5802 if (!buffer || bufsize < len)
5804
5805 assembly = actctx->assemblies;
5806
5807 acrli->ulFlags = 0;
5808 acrli->RunLevel = assembly ? assembly->run_level : ACTCTX_RUN_LEVEL_UNSPECIFIED;
5809 acrli->UiAccess = assembly ? assembly->ui_access : 0;
5810 }
5811 break;
5812
5813 default:
5814 FIXME( "class %u not implemented\n", class );
5816 }
5817 return STATUS_SUCCESS;
5818}
#define index(s, c)
Definition: various.h:29
unsigned long DWORD
Definition: ntddk_ex.h:95
GLuint index
Definition: glext.h:6031
GLenum GLuint GLsizei bufsize
Definition: glext.h:7473
static DWORD path_len
Definition: batch.c:31
#define RTL_QUERY_ACTIVATION_CONTEXT_FLAG_NO_ADDREF
Definition: rtltypes.h:119
@ ASSEMBLY_SHARED_MANIFEST
Definition: actctx.c:520
@ ASSEMBLY_MANIFEST
Definition: actctx.c:519
static WCHAR * build_assembly_id(const struct assembly_identity *ai)
Definition: actctx.c:1173
static NTSTATUS find_query_actctx(HANDLE *handle, DWORD flags, ULONG class)
Definition: actctx.c:3535
WCHAR * directory
Definition: actctx.c:528
BSTR type
Definition: cache.c:326
struct dll_redirect * dlls
Definition: actctx.c:530
struct assembly_identity id
Definition: actctx.c:526
unsigned int num_dlls
Definition: actctx.c:531
struct file_info manifest
Definition: actctx.c:527
ULONG num_compat_contexts
Definition: actctx.c:535
ULONG ui_access
Definition: actctx.c:537
COMPATIBILITY_CONTEXT_ELEMENT * compat_contexts
Definition: actctx.c:534
ACTCTX_REQUESTED_RUN_LEVEL run_level
Definition: actctx.c:536
WCHAR * name
Definition: actctx.c:511
WCHAR * LPWSTR
Definition: xmlstorage.h:184

Referenced by BasepAllocateActivationContextActivationBlock(), CreateRemoteThread(), find_actctx_dll(), find_actctx_dllpath(), init_current_version(), LdrpInitializeProcessCompat(), QueryActCtxW(), and QueueUserAPC().

◆ RtlQueryPackageIdentity()

NTSYSAPI NTSTATUS WINAPI RtlQueryPackageIdentity ( HANDLE  ,
WCHAR ,
SIZE_T ,
WCHAR ,
SIZE_T ,
BOOLEAN  
)

◆ RtlQueryPerformanceCounter()

NTSYSAPI BOOL WINAPI RtlQueryPerformanceCounter ( LARGE_INTEGER )

◆ RtlQueryPerformanceFrequency()

NTSYSAPI BOOL WINAPI RtlQueryPerformanceFrequency ( LARGE_INTEGER )

◆ RtlQueryProcessDebugInformation()

NTSYSAPI NTSTATUS WINAPI RtlQueryProcessDebugInformation ( ULONG  ,
ULONG  ,
PDEBUG_BUFFER   
)

◆ RtlQueryRegistryValues()

NTSYSAPI NTSTATUS WINAPI RtlQueryRegistryValues ( ULONG  ,
PCWSTR  ,
PRTL_QUERY_REGISTRY_TABLE  ,
PVOID  ,
PVOID   
)

Referenced by _IRQL_requires_max_(), AtapiRegCheckParameterValue(), AtapiRegGetStringParameterValue(), BaseInitializeStaticServerData(), BasepIsProcessAllowed(), ClassDeviceControl(), ClasspIsMediaChangeDisabledDueToHardwareLimitation(), ClasspIsMediaChangeDisabledForClass(), ClasspMediaChangeDeviceInstanceOverride(), ClasspScanForSpecialInRegistry(), CreateDeviceFromRegistry(), CreateGroupListRoutine(), DeleteFromLocalDatabase(), DeleteNoDriveLetterEntry(), DeleteRegistryDriveLetter(), DiskAddDevice(), DriverEntry(), EngpGetDisplayDriverAccelerationLevel(), EngpGetDisplayDriverParameters(), EnumerateBiosDiskEntries(), Ext2QueryGlobalParameters(), Ext2QueryVolumeParams(), FreeBT_GetRegistryDword(), FxRegistrySettingsInitialize(), GetComputerNameExW(), GetDriverName(), GetSystemVersionString(), HasNoDriveLetterEntry(), InitBadBlocks(), InitFunctionPtrs(), IopUnloadDriver(), IsOffline(), LoadGlobalSettings(), LsapInitAuthPackages(), MountMgrQuerySystemVolumeName(), MountmgrReadNoAutoMount(), MountMgrScrubRegistry(), MountMgrUniqueIdChangeRoutine(), NdisIAddDevice(), NpInitializeAliases(), NtfsQueryMftZoneReservation(), PciLocateKdDevices(), PiAttachFilterDrivers(), PiCallDriverAddDevice(), PnpRootCreateDevice(), QueryParameters(), QuerySymbolicLinkNamesFromStorage(), QueryTimeout(), QueryUniqueIdFromMaster(), ReadRegistryEntries(), RequestHandleMountQuerySuggestedLinkName(), RtlQueryTimeZoneInformation(), ScConnectControlPipe(), ScmCreateGroupList(), ScmCreateOrReferenceServiceImage(), SmpLoadDataFromRegistry(), USBH_RegQueryGenericUSBDeviceString(), USBPORT_GetDefaultBIOSx(), VfdLoadLink(), VideoPortGetRegistryParameters(), and ViLoadImagesFromRegistry().

◆ RtlQueryTimeZoneInformation()

NTSYSAPI NTSTATUS WINAPI RtlQueryTimeZoneInformation ( RTL_TIME_ZONE_INFORMATION )

◆ RtlQueryUnbiasedInterruptTime()

NTSYSAPI BOOL WINAPI RtlQueryUnbiasedInterruptTime ( ULONGLONG )

◆ RtlQueueWorkItem()

NTSYSAPI NTSTATUS WINAPI RtlQueueWorkItem ( PRTL_WORK_ITEM_ROUTINE  function,
PVOID  context,
ULONG  flags 
)

Definition at line 511 of file threadpool.c.

512{
513 TP_CALLBACK_ENVIRON environment;
514 struct rtl_work_item *item;
516
517 TRACE( "%p %p %lu\n", function, context, flags );
518
519 item = RtlAllocateHeap( GetProcessHeap(), 0, sizeof(*item) );
520 if (!item)
521 return STATUS_NO_MEMORY;
522
523 memset( &environment, 0, sizeof(environment) );
524 environment.Version = 1;
525 environment.u.s.LongFunction = (flags & WT_EXECUTELONGFUNCTION) != 0;
526 environment.u.s.Persistent = (flags & WT_EXECUTEINPERSISTENTTHREAD) != 0;
527
528 item->function = function;
529 item->context = context;
530
533 return status;
534}
#define memset(x, y, z)
Definition: compat.h:39
static void CALLBACK process_rtl_work_item(TP_CALLBACK_INSTANCE *instance, void *userdata)
Definition: threadpool.c:479
NTSTATUS WINAPI TpSimpleTryPost(PTP_SIMPLE_CALLBACK callback, PVOID userdata, TP_CALLBACK_ENVIRON *environment)
Definition: threadpool.c:3243
union _TP_CALLBACK_ENVIRON_V3::@4519 u
struct _TP_CALLBACK_ENVIRON_V3::@4519::@4520 s
Definition: http.c:7252
PVOID context
Definition: threadpool.c:76
PRTL_WORK_ITEM_ROUTINE function
Definition: threadpool.c:75
#define WT_EXECUTEINPERSISTENTTHREAD
Definition: winnt_old.h:1092
#define WT_EXECUTELONGFUNCTION
Definition: winnt_old.h:1089

◆ RtlRaiseStatus()

◆ RtlRandom()

NTSYSAPI ULONG WINAPI RtlRandom ( PULONG  )

◆ RtlRandomEx()

NTSYSAPI ULONG WINAPI RtlRandomEx ( PULONG  )

◆ RtlRbInsertNodeEx()

NTSYSAPI void WINAPI RtlRbInsertNodeEx ( RTL_RB_TREE ,
RTL_BALANCED_NODE ,
BOOLEAN  ,
RTL_BALANCED_NODE  
)

◆ RtlRbRemoveNode()

NTSYSAPI void WINAPI RtlRbRemoveNode ( RTL_RB_TREE ,
RTL_BALANCED_NODE  
)

◆ RtlReAllocateHeap()

◆ RtlRegisterWait()

◆ RtlReleaseActivationContext()

◆ RtlReleasePath()

NTSYSAPI void WINAPI RtlReleasePath ( PWSTR  )

◆ RtlReleasePebLock()

◆ RtlReleaseRelativeName()

NTSYSAPI void WINAPI RtlReleaseRelativeName ( RTL_RELATIVE_NAME )

◆ RtlReleaseResource()

NTSYSAPI void WINAPI RtlReleaseResource ( LPRTL_RWLOCK  )

◆ RtlReleaseSRWLockExclusive()

NTSYSAPI void WINAPI RtlReleaseSRWLockExclusive ( RTL_SRWLOCK )

◆ RtlReleaseSRWLockShared()

NTSYSAPI void WINAPI RtlReleaseSRWLockShared ( RTL_SRWLOCK )

◆ RtlRemoveVectoredContinueHandler()

NTSYSAPI ULONG WINAPI RtlRemoveVectoredContinueHandler ( PVOID  )

◆ RtlRemoveVectoredExceptionHandler()

NTSYSAPI ULONG WINAPI RtlRemoveVectoredExceptionHandler ( PVOID  )

◆ RtlResetNtUserPfn()

NTSYSAPI NTSTATUS WINAPI RtlResetNtUserPfn ( void  )

◆ RtlResetRtlTranslations()

NTSYSAPI void WINAPI RtlResetRtlTranslations ( const NLSTABLEINFO )

◆ RtlRestoreLastWin32Error()

NTSYSAPI void WINAPI RtlRestoreLastWin32Error ( DWORD  )

◆ RtlRetrieveNtUserPfn()

NTSYSAPI NTSTATUS WINAPI RtlRetrieveNtUserPfn ( const void **  ,
const void **  ,
const void **   
)

◆ RtlSecondsSince1970ToTime()

NTSYSAPI void WINAPI RtlSecondsSince1970ToTime ( DWORD  ,
LARGE_INTEGER  
)

◆ RtlSecondsSince1980ToTime()

NTSYSAPI void WINAPI RtlSecondsSince1980ToTime ( DWORD  ,
LARGE_INTEGER  
)

◆ RtlSelfRelativeToAbsoluteSD()

NTSYSAPI NTSTATUS WINAPI RtlSelfRelativeToAbsoluteSD ( PSECURITY_DESCRIPTOR  ,
PSECURITY_DESCRIPTOR  ,
PDWORD  ,
PACL  ,
PDWORD  ,
PACL  ,
PDWORD  ,
PSID  ,
PDWORD  ,
PSID  ,
PDWORD   
)

Referenced by fcb_get_sd(), and MakeAbsoluteSD().

◆ RtlSetAllBits()

NTSYSAPI void WINAPI RtlSetAllBits ( PRTL_BITMAP  )

◆ RtlSetBits()

NTSYSAPI void WINAPI RtlSetBits ( PRTL_BITMAP  ,
ULONG  ,
ULONG   
)

◆ RtlSetControlSecurityDescriptor()

◆ RtlSetCriticalSectionSpinCount()

NTSYSAPI ULONG WINAPI RtlSetCriticalSectionSpinCount ( RTL_CRITICAL_SECTION ,
ULONG   
)

◆ RtlSetCurrentDirectory_U()

NTSYSAPI NTSTATUS WINAPI RtlSetCurrentDirectory_U ( const UNICODE_STRING )

◆ RtlSetCurrentEnvironment()

NTSYSAPI void WINAPI RtlSetCurrentEnvironment ( PWSTR  NewEnvironment,
PWSTR OldEnvironment 
)

Definition at line 263 of file env.c.

265{
266 PVOID EnvPtr;
267
268 DPRINT("NewEnvironment 0x%p OldEnvironment 0x%p\n",
269 NewEnvironment, OldEnvironment);
270
272
273 EnvPtr = NtCurrentPeb()->ProcessParameters->Environment;
274 NtCurrentPeb()->ProcessParameters->Environment = NewEnvironment;
275
276 if (OldEnvironment != NULL)
277 *OldEnvironment = EnvPtr;
278
280}

Referenced by SetEnvironmentStringsW().

◆ RtlSetCurrentTransaction()

NTSYSAPI BOOL WINAPI RtlSetCurrentTransaction ( HANDLE  )

◆ RtlSetDaclSecurityDescriptor()

◆ RtlSetEnvironmentVariable()

NTSYSAPI NTSTATUS WINAPI RtlSetEnvironmentVariable ( PWSTR Environment,
PUNICODE_STRING  Name,
PUNICODE_STRING  Value 
)

Definition at line 287 of file env.c.

290{
293 size_t hole_len, new_len, env_len = 0;
294 WCHAR *new_env = 0, *env_end = 0, *wcs, *env, *val = 0, *tail = 0, *hole = 0;
295 PWSTR head = NULL;
296 SIZE_T size = 0, new_size;
297 LONG f = 1;
299
300 DPRINT("RtlSetEnvironmentVariable(Environment %p Name %wZ Value %wZ)\n",
302
303 /* Variable name must not be empty */
304 if (Name->Length < sizeof(WCHAR))
306
307 /* Variable names can't contain a '=' except as a first character. */
308 for (wcs = Name->Buffer + 1;
309 wcs < Name->Buffer + (Name->Length / sizeof(WCHAR));
310 wcs++)
311 {
312 if (*wcs == L'=')
314 }
315
316 if (Environment)
317 {
318 env = *Environment;
319 }
320 else
321 {
323 env = NtCurrentPeb()->ProcessParameters->Environment;
324 }
325
326 if (env)
327 {
328 /* get environment length */
329 wcs = env_end = env;
330 do
331 {
332 env_end += wcslen(env_end) + 1;
333 }
334 while (*env_end);
335 env_end++;
336 env_len = env_end - env;
337 DPRINT("environment length %lu characters\n", env_len);
338
339 /* find where to insert */
340 while (*wcs)
341 {
342 var.Buffer = wcs++;
343 wcs = wcschr(wcs, L'=');
344 if (wcs == NULL)
345 {
346 wcs = var.Buffer + wcslen(var.Buffer);
347 }
348 if (*wcs)
349 {
350 var.Length = (USHORT)(wcs - var.Buffer) * sizeof(WCHAR);
351 var.MaximumLength = var.Length;
352 val = ++wcs;
353 wcs += wcslen(wcs);
355 if (f >= 0)
356 {
357 if (f) /* Insert before found */
358 {
359 hole = tail = var.Buffer;
360 }
361 else /* Exact match */
362 {
363 head = var.Buffer;
364 tail = ++wcs;
365 hole = val;
366 }
367 goto found;
368 }
369 }
370 wcs++;
371 }
372 hole = tail = wcs; /* Append to environment */
373 }
374
375found:
376 if (Value != NULL && Value->Buffer != NULL)
377 {
378 hole_len = tail - hole;
379 /* calculate new environment size */
380 new_size = Value->Length + sizeof(WCHAR);
381 /* adding new variable */
382 if (f)
383 new_size += Name->Length + sizeof(WCHAR);
384 new_len = new_size / sizeof(WCHAR);
385 if (hole_len < new_len)
386 {
387 /* enlarge environment size */
388 /* check the size of available memory */
389 new_size += (env_len - hole_len) * sizeof(WCHAR);
391 mbi.RegionSize = 0;
392 DPRINT("new_size %lu\n", new_size);
393
394 if (env)
395 {
397 env,
399 &mbi,
401 NULL);
402 if (!NT_SUCCESS(Status))
403 {
404 if (Environment == NULL)
405 {
407 }
408 return(Status);
409 }
410 }
411
412 if (new_size > mbi.RegionSize)
413 {
414 /* reallocate memory area */
416 (PVOID)&new_env,
417 0,
418 &new_size,
421 if (!NT_SUCCESS(Status))
422 {
423 if (Environment == NULL)
424 {
426 }
427 return(Status);
428 }
429
430 if (env)
431 {
432 memmove(new_env,
433 env,
434 (hole - env) * sizeof(WCHAR));
435 hole = new_env + (hole - env);
436 }
437 else
438 {
439 /* absolutely new environment */
440 tail = hole = new_env;
441 *hole = 0;
442 env_end = hole + 1;
443 }
444 }
445 }
446
447 /* move tail */
448 memmove (hole + new_len, tail, (env_end - tail) * sizeof(WCHAR));
449
450 if (new_env)
451 {
452 /* we reallocated environment, let's free the old one */
453 if (Environment)
454 *Environment = new_env;
455 else
456 NtCurrentPeb()->ProcessParameters->Environment = new_env;
457
458 if (env)
459 {
460 size = 0;
462 (PVOID)&env,
463 &size,
465 }
466 }
467
468 /* and now copy given stuff */
469 if (f)
470 {
471 /* copy variable name and '=' character */
472 memmove(hole,
473 Name->Buffer,
474 Name->Length);
475 hole += Name->Length / sizeof(WCHAR);
476 *hole++ = L'=';
477 }
478
479 /* copy value */
480 memmove(hole,
481 Value->Buffer,
482 Value->Length);
483 hole += Value->Length / sizeof(WCHAR);
484 *hole = 0;
485 }
486 else
487 {
488 /* remove the environment variable */
489 if (f == 0)
490 {
492 tail,
493 (env_end - tail) * sizeof(WCHAR));
494 }
495 }
496
497 if (Environment == NULL)
498 {
500 }
501
502 return(Status);
503}
struct outqueuenode * tail
Definition: adnsresfilter.c:66
struct outqueuenode * head
Definition: adnsresfilter.c:66
Definition: bufpool.h:45
static LPCWSTR LPCWSTR LPCWSTR env
Definition: db.cpp:171
ULONG RtlCompareUnicodeString(PUNICODE_STRING s1, PUNICODE_STRING s2, BOOLEAN UpCase)
Definition: string_lib.cpp:31
size_t const new_size
Definition: expand.cpp:66
#define memmove(s1, s2, n)
Definition: mkisofs.h:881

◆ RtlSetExtendedFeaturesMask()

NTSYSAPI void WINAPI RtlSetExtendedFeaturesMask ( CONTEXT_EX ,
ULONG64   
)

◆ RtlSetGroupSecurityDescriptor()

NTSYSAPI NTSTATUS WINAPI RtlSetGroupSecurityDescriptor ( PSECURITY_DESCRIPTOR  ,
PSID  ,
BOOLEAN   
)

◆ RtlSetHeapInformation()

NTSYSAPI NTSTATUS WINAPI RtlSetHeapInformation ( HANDLE  ,
HEAP_INFORMATION_CLASS  ,
PVOID  ,
SIZE_T   
)

Referenced by HeapSetInformation().

◆ RtlSetIoCompletionCallback()

NTSYSAPI NTSTATUS WINAPI RtlSetIoCompletionCallback ( HANDLE  FileHandle,
PRTL_OVERLAPPED_COMPLETION_ROUTINE  Function,
ULONG  Flags 
)

Definition at line 589 of file threadpool.c.

590{
593
594 if (Flags) FIXME("Unknown value Flags=0x%lx\n", Flags);
595
596 if (!old_threadpool.compl_port)
597 {
599
600 RtlEnterCriticalSection(&old_threadpool.threadpool_compl_cs);
601 if (!old_threadpool.compl_port)
602 {
603 HANDLE cport;
604
606 if (!res)
607 {
608 /* FIXME native can start additional threads in case of e.g. hung callback function. */
610 if (!res)
611 old_threadpool.compl_port = cport;
612 else
613 NtClose( cport );
614 }
615 }
616 RtlLeaveCriticalSection(&old_threadpool.threadpool_compl_cs);
617 if (res) return res;
618 }
619
620 info.CompletionPort = old_threadpool.compl_port;
621 info.CompletionKey = (ULONG_PTR)Function;
622
624}
_In_ CDROM_SCAN_FOR_SPECIAL_INFO _In_ PCDROM_SCAN_FOR_SPECIAL_HANDLER Function
Definition: cdrom.h:1156
@ FileCompletionInformation
Definition: from_kernel.h:91
NTSTATUS NTAPI NtCreateIoCompletion(OUT PHANDLE IoCompletionHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes, IN ULONG NumberOfConcurrentThreads)
Definition: iocomp.c:253
#define IO_COMPLETION_ALL_ACCESS
Definition: file.c:72
static PIO_STATUS_BLOCK iosb
Definition: file.c:98
NTSYSAPI NTSTATUS NTAPI NtSetInformationFile(IN HANDLE hFile, OUT PIO_STATUS_BLOCK pIoStatusBlock, IN PVOID FileInformationBuffer, IN ULONG FileInformationBufferLength, IN FILE_INFORMATION_CLASS FileInfoClass)
Definition: iofunc.c:3096
NTSTATUS WINAPI RtlQueueWorkItem(PRTL_WORK_ITEM_ROUTINE function, PVOID context, ULONG flags)
Definition: threadpool.c:511
static struct @5305 old_threadpool
static DWORD CALLBACK iocp_poller(LPVOID Arg)
Definition: threadpool.c:539
#define WT_EXECUTEDEFAULT
Definition: winnt_old.h:1084

◆ RtlSetLastWin32Error()

NTSYSAPI void WINAPI RtlSetLastWin32Error ( DWORD  )

◆ RtlSetLastWin32ErrorAndNtStatusFromNtStatus()

◆ RtlSetOwnerSecurityDescriptor()

◆ RtlSetProcessPreferredUILanguages()

NTSYSAPI NTSTATUS WINAPI RtlSetProcessPreferredUILanguages ( DWORD  ,
PCZZWSTR  ,
ULONG  
)

◆ RtlSetSaclSecurityDescriptor()

NTSYSAPI NTSTATUS WINAPI RtlSetSaclSecurityDescriptor ( PSECURITY_DESCRIPTOR  ,
BOOLEAN  ,
PACL  ,
BOOLEAN   
)

◆ RtlSetSearchPathMode()

NTSYSAPI NTSTATUS WINAPI RtlSetSearchPathMode ( ULONG  )

◆ RtlSetThreadErrorMode()

NTSYSAPI NTSTATUS WINAPI RtlSetThreadErrorMode ( DWORD  ,
LPDWORD   
)

◆ RtlSetThreadPreferredUILanguages()

NTSYSAPI NTSTATUS WINAPI RtlSetThreadPreferredUILanguages ( DWORD  ,
PCZZWSTR  ,
ULONG  
)

◆ RtlSetTimeZoneInformation()

NTSYSAPI NTSTATUS WINAPI RtlSetTimeZoneInformation ( const RTL_TIME_ZONE_INFORMATION )

◆ RtlSetUnhandledExceptionFilter()

NTSYSAPI void WINAPI RtlSetUnhandledExceptionFilter ( PRTL_EXCEPTION_FILTER  )

Referenced by LdrpInitializeProcess().

◆ RtlSetUserFlagsHeap()

NTSYSAPI BOOLEAN WINAPI RtlSetUserFlagsHeap ( HANDLE  ,
ULONG  ,
void ,
ULONG  ,
ULONG   
)

◆ RtlSetUserValueHeap()

◆ RtlSizeHeap()

NTSYSAPI SIZE_T WINAPI RtlSizeHeap ( HANDLE  ,
ULONG  ,
const void  
)

◆ RtlSleepConditionVariableCS()

NTSYSAPI NTSTATUS WINAPI RtlSleepConditionVariableCS ( RTL_CONDITION_VARIABLE ,
RTL_CRITICAL_SECTION ,
const LARGE_INTEGER  
)

◆ RtlSleepConditionVariableSRW()

NTSYSAPI NTSTATUS WINAPI RtlSleepConditionVariableSRW ( RTL_CONDITION_VARIABLE ,
RTL_SRWLOCK ,
const LARGE_INTEGER ,
ULONG   
)

◆ RtlStringFromGUID()

◆ RtlSubAuthorityCountSid()

NTSYSAPI LPBYTE WINAPI RtlSubAuthorityCountSid ( PSID  )

◆ RtlSubAuthoritySid()

NTSYSAPI LPDWORD WINAPI RtlSubAuthoritySid ( PSID  ,
DWORD   
)

◆ RtlSystemTimeToLocalTime()

NTSYSAPI NTSTATUS WINAPI RtlSystemTimeToLocalTime ( const LARGE_INTEGER ,
PLARGE_INTEGER   
)

◆ RtlTimeFieldsToTime()

NTSYSAPI BOOLEAN WINAPI RtlTimeFieldsToTime ( PTIME_FIELDS  ,
PLARGE_INTEGER   
)

◆ RtlTimeToElapsedTimeFields()

NTSYSAPI void WINAPI RtlTimeToElapsedTimeFields ( const LARGE_INTEGER ,
PTIME_FIELDS   
)

◆ RtlTimeToSecondsSince1970()

NTSYSAPI BOOLEAN WINAPI RtlTimeToSecondsSince1970 ( const LARGE_INTEGER ,
LPDWORD   
)

◆ RtlTimeToSecondsSince1980()

NTSYSAPI BOOLEAN WINAPI RtlTimeToSecondsSince1980 ( const LARGE_INTEGER ,
LPDWORD   
)

◆ RtlTimeToTimeFields()

NTSYSAPI void WINAPI RtlTimeToTimeFields ( const LARGE_INTEGER ,
PTIME_FIELDS   
)

◆ RtlTryAcquireSRWLockExclusive()

NTSYSAPI BOOLEAN WINAPI RtlTryAcquireSRWLockExclusive ( RTL_SRWLOCK )

◆ RtlTryAcquireSRWLockShared()

NTSYSAPI BOOLEAN WINAPI RtlTryAcquireSRWLockShared ( RTL_SRWLOCK )

◆ RtlTryEnterCriticalSection()

NTSYSAPI BOOL WINAPI RtlTryEnterCriticalSection ( RTL_CRITICAL_SECTION )

◆ RtlUlongByteSwap()

static ULONG RtlUlongByteSwap ( ULONG  i)
inlinestatic

Definition at line 5395 of file winternl.h.

5396{
5397 return ((ULONG)RtlUshortByteSwap((USHORT)i) << 16) | RtlUshortByteSwap((USHORT)(i >> 16));
5398}
#define RtlUshortByteSwap(_x)
Definition: rtlfuncs.h:3214

◆ RtlUlonglongByteSwap()

static ULONGLONG RtlUlonglongByteSwap ( ULONGLONG  i)
inlinestatic

Definition at line 5399 of file winternl.h.

5400{
5401 return ((ULONGLONG)RtlUlongByteSwap((ULONG)i) << 32) | RtlUlongByteSwap((ULONG)(i >> 32));
5402}
#define RtlUlongByteSwap(_x)
Definition: compat.h:815

◆ RtlUnicodeStringToAnsiSize()

NTSYSAPI DWORD WINAPI RtlUnicodeStringToAnsiSize ( const UNICODE_STRING )

◆ RtlUnicodeStringToAnsiString()

NTSYSAPI NTSTATUS WINAPI RtlUnicodeStringToAnsiString ( PANSI_STRING  ,
PCUNICODE_STRING  ,
BOOLEAN   
)

◆ RtlUnicodeStringToInteger()

NTSYSAPI NTSTATUS WINAPI RtlUnicodeStringToInteger ( const UNICODE_STRING str,
ULONG  base,
ULONG value 
)

Definition at line 982 of file unicode.c.

986{
987 LPWSTR lpwstr = str->Buffer;
988 USHORT CharsRemaining = str->Length / sizeof(WCHAR);
989 WCHAR wchCurrent;
990 int digit;
991 ULONG RunningTotal = 0;
992 char bMinus = 0;
993
994 while (CharsRemaining >= 1 && *lpwstr <= ' ')
995 {
996 lpwstr++;
997 CharsRemaining--;
998 }
999
1000 if (CharsRemaining >= 1)
1001 {
1002 if (*lpwstr == '+')
1003 {
1004 lpwstr++;
1005 CharsRemaining--;
1006 }
1007 else if (*lpwstr == '-')
1008 {
1009 bMinus = 1;
1010 lpwstr++;
1011 CharsRemaining--;
1012 }
1013 }
1014
1015 if (base == 0)
1016 {
1017 base = 10;
1018
1019 if (CharsRemaining >= 2 && lpwstr[0] == '0')
1020 {
1021 if (lpwstr[1] == 'b')
1022 {
1023 lpwstr += 2;
1024 CharsRemaining -= 2;
1025 base = 2;
1026 }
1027 else if (lpwstr[1] == 'o')
1028 {
1029 lpwstr += 2;
1030 CharsRemaining -= 2;
1031 base = 8;
1032 }
1033 else if (lpwstr[1] == 'x')
1034 {
1035 lpwstr += 2;
1036 CharsRemaining -= 2;
1037 base = 16;
1038 }
1039 }
1040 }
1041 else if (base != 2 && base != 8 && base != 10 && base != 16)
1042 {
1044 }
1045
1046 if (value == NULL)
1047 {
1049 }
1050
1051 while (CharsRemaining >= 1)
1052 {
1053 wchCurrent = *lpwstr;
1054
1055 if (wchCurrent >= '0' && wchCurrent <= '9')
1056 {
1057 digit = wchCurrent - '0';
1058 }
1059 else if (wchCurrent >= 'A' && wchCurrent <= 'Z')
1060 {
1061 digit = wchCurrent - 'A' + 10;
1062 }
1063 else if (wchCurrent >= 'a' && wchCurrent <= 'z')
1064 {
1065 digit = wchCurrent - 'a' + 10;
1066 }
1067 else
1068 {
1069 digit = -1;
1070 }
1071
1072 if (digit < 0 || (ULONG)digit >= base) break;
1073
1074 RunningTotal = RunningTotal * base + digit;
1075 lpwstr++;
1076 CharsRemaining--;
1077 }
1078
1079 *value = bMinus ? (0 - RunningTotal) : RunningTotal;
1080 return STATUS_SUCCESS;
1081}

◆ RtlUnicodeStringToOemSize()

NTSYSAPI DWORD WINAPI RtlUnicodeStringToOemSize ( const UNICODE_STRING )

◆ RtlUnicodeStringToOemString()

NTSYSAPI NTSTATUS WINAPI RtlUnicodeStringToOemString ( POEM_STRING  ,
PCUNICODE_STRING  ,
BOOLEAN   
)

◆ RtlUnicodeToCustomCPN()

NTSYSAPI NTSTATUS WINAPI RtlUnicodeToCustomCPN ( CPTABLEINFO ,
char ,
DWORD  ,
DWORD ,
const WCHAR ,
DWORD   
)

◆ RtlUnicodeToMultiByteN()

NTSYSAPI NTSTATUS WINAPI RtlUnicodeToMultiByteN ( LPSTR  ,
DWORD  ,
LPDWORD  ,
LPCWSTR  ,
DWORD   
)

◆ RtlUnicodeToMultiByteSize()

NTSYSAPI NTSTATUS WINAPI RtlUnicodeToMultiByteSize ( PULONG  ,
PCWSTR  ,
ULONG   
)

◆ RtlUnicodeToOemN()

NTSYSAPI NTSTATUS WINAPI RtlUnicodeToOemN ( LPSTR  ,
DWORD  ,
LPDWORD  ,
LPCWSTR  ,
DWORD   
)

◆ RtlUnicodeToUTF8N()

NTSYSAPI NTSTATUS WINAPI RtlUnicodeToUTF8N ( LPSTR  ,
DWORD  ,
LPDWORD  ,
LPCWSTR  ,
DWORD   
)

◆ RtlUniform()

NTSYSAPI ULONG WINAPI RtlUniform ( PULONG  )

◆ RtlUnlockHeap()

NTSYSAPI BOOLEAN WINAPI RtlUnlockHeap ( HANDLE  HeapPtr)

Definition at line 3162 of file heap.c.

3163{
3164 PHEAP Heap = (PHEAP)HeapPtr;
3165
3166 /* Check for page heap */
3168 {
3169 return RtlpPageHeapUnlock(Heap);
3170 }
3171
3172 /* Check if it's really a heap */
3173 if (Heap->Signature != HEAP_SIGNATURE) return FALSE;
3174
3175 /* Unlock if it's lockable */
3176 if (!(Heap->Flags & HEAP_NO_SERIALIZE))
3177 {
3179 }
3180
3181 return TRUE;
3182}
#define HEAP_SIGNATURE
Definition: heap.h:51
BOOLEAN NTAPI RtlpPageHeapUnlock(HANDLE HeapPtr)
Definition: heappage.c:2437
ULONG Signature
Definition: heap.h:234

Referenced by GlobalAlloc(), GlobalFlags(), GlobalFree(), GlobalHandle(), GlobalLock(), GlobalReAlloc(), GlobalSize(), GlobalUnlock(), HeapUnlock(), LocalAlloc(), LocalFlags(), LocalFree(), LocalLock(), LocalReAlloc(), and LocalUnlock().

◆ RtlUpcaseUnicodeChar()

NTSYSAPI WCHAR WINAPI RtlUpcaseUnicodeChar ( WCHAR  )

◆ RtlUpcaseUnicodeStringToAnsiString()

NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeStringToAnsiString ( STRING ,
const UNICODE_STRING ,
BOOLEAN   
)

◆ RtlUpcaseUnicodeStringToCountedOemString()

◆ RtlUpcaseUnicodeStringToOemString()

NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeStringToOemString ( STRING ,
const UNICODE_STRING ,
BOOLEAN   
)

◆ RtlUpcaseUnicodeToCustomCPN()

NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeToCustomCPN ( CPTABLEINFO ,
char ,
DWORD  ,
DWORD ,
const WCHAR ,
DWORD   
)

◆ RtlUpcaseUnicodeToMultiByteN()

NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeToMultiByteN ( LPSTR  ,
DWORD  ,
LPDWORD  ,
LPCWSTR  ,
DWORD   
)

◆ RtlUpcaseUnicodeToOemN()

NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeToOemN ( LPSTR  ,
DWORD  ,
LPDWORD  ,
LPCWSTR  ,
DWORD   
)

◆ RtlUpdateTimer()

NTSYSAPI NTSTATUS WINAPI RtlUpdateTimer ( HANDLE  TimerQueue,
HANDLE  Timer,
DWORD  DueTime,
DWORD  Period 
)

Definition at line 1062 of file threadpool.c.

1064{
1065 struct queue_timer *t = Timer;
1066 struct timer_queue *q = t->q;
1067
1069 /* Can't change a timer if it was once-only or destroyed. */
1070 if (t->expire != EXPIRE_NEVER)
1071 {
1072 t->period = Period;
1074 }
1076
1077 return STATUS_SUCCESS;
1078}
static void queue_move_timer(struct queue_timer *t, ULONGLONG time, BOOL set_event)
Definition: threadpool.c:710
#define EXPIRE_NEVER
Definition: threadpool.c:79

◆ RtlUserThreadStart()

NTSYSAPI void WINAPI RtlUserThreadStart ( PRTL_THREAD_START_ROUTINE  ,
void  
)

◆ RtlUshortByteSwap()

static USHORT RtlUshortByteSwap ( USHORT  s)
inlinestatic

Definition at line 5391 of file winternl.h.

5392{
5393 return (s >> 8) | (s << 8);
5394}

◆ RtlUTF8ToUnicodeN()

NTSYSAPI NTSTATUS WINAPI RtlUTF8ToUnicodeN ( WCHAR ,
DWORD  ,
DWORD ,
const char ,
DWORD   
)

◆ RtlValidAcl()

NTSYSAPI BOOLEAN WINAPI RtlValidAcl ( PACL  )

◆ RtlValidateHeap()

NTSYSAPI BOOLEAN WINAPI RtlValidateHeap ( HANDLE  ,
ULONG  ,
LPCVOID   
)

◆ RtlValidRelativeSecurityDescriptor()

NTSYSAPI BOOLEAN WINAPI RtlValidRelativeSecurityDescriptor ( PSECURITY_DESCRIPTOR  ,
ULONG  ,
SECURITY_INFORMATION   
)

Referenced by fsctl_set_xattr(), and open_fcb().

◆ RtlValidSecurityDescriptor()

NTSYSAPI BOOLEAN WINAPI RtlValidSecurityDescriptor ( PSECURITY_DESCRIPTOR  )

◆ RtlValidSid()

NTSYSAPI BOOLEAN WINAPI RtlValidSid ( PSID  )

◆ RtlVerifyVersionInfo()

NTSYSAPI NTSTATUS WINAPI RtlVerifyVersionInfo ( const RTL_OSVERSIONINFOEXW ,
DWORD  ,
DWORDLONG   
)

◆ RtlWaitOnAddress()

NTSYSAPI NTSTATUS WINAPI RtlWaitOnAddress ( const void ,
const void ,
SIZE_T  ,
const LARGE_INTEGER  
)

Referenced by WaitOnAddress().

◆ RtlWakeAddressAll()

NTSYSAPI void WINAPI RtlWakeAddressAll ( const void )

◆ RtlWakeAddressSingle()

NTSYSAPI void WINAPI RtlWakeAddressSingle ( const void )

◆ RtlWakeAllConditionVariable()

NTSYSAPI void WINAPI RtlWakeAllConditionVariable ( RTL_CONDITION_VARIABLE )

◆ RtlWakeConditionVariable()

NTSYSAPI void WINAPI RtlWakeConditionVariable ( RTL_CONDITION_VARIABLE )

◆ RtlWalkHeap()

NTSYSAPI NTSTATUS WINAPI RtlWalkHeap ( HANDLE  ,
PVOID   
)

Referenced by HeapWalk().

◆ RtlWow64EnableFsRedirection()

NTSYSAPI NTSTATUS WINAPI RtlWow64EnableFsRedirection ( BOOLEAN  )

◆ RtlWow64EnableFsRedirectionEx()

NTSYSAPI NTSTATUS WINAPI RtlWow64EnableFsRedirectionEx ( ULONG  ,
ULONG  
)

◆ RtlWow64GetCurrentMachine()

NTSYSAPI USHORT WINAPI RtlWow64GetCurrentMachine ( void  )

◆ RtlWow64GetProcessMachines()

NTSYSAPI NTSTATUS WINAPI RtlWow64GetProcessMachines ( HANDLE  ,
USHORT ,
USHORT  
)

◆ RtlWow64GetSharedInfoProcess()

NTSYSAPI NTSTATUS WINAPI RtlWow64GetSharedInfoProcess ( HANDLE  ,
BOOLEAN ,
WOW64INFO  
)

◆ RtlWow64IsWowGuestMachineSupported()

NTSYSAPI NTSTATUS WINAPI RtlWow64IsWowGuestMachineSupported ( USHORT  ,
BOOLEAN  
)

◆ RtlWriteRegistryValue()

◆ RtlZombifyActivationContext()

NTSYSAPI NTSTATUS WINAPI RtlZombifyActivationContext ( HANDLE  handle)

Definition at line 5396 of file actctx.c.

5397{
5398 FIXME("%p: stub\n", handle);
5399
5401 return STATUS_SUCCESS;
5402
5404}
#define ACTCTX_FAKE_HANDLE
Definition: actctx.c:63

Referenced by ZombifyActCtx().

◆ TpAllocCleanupGroup()

NTSYSAPI NTSTATUS WINAPI TpAllocCleanupGroup ( TP_CLEANUP_GROUP **  out)

Definition at line 2534 of file threadpool.c.

2535{
2536 TRACE( "%p\n", out );
2537
2538 return tp_group_alloc( (struct threadpool_group **)out );
2539}
static NTSTATUS tp_group_alloc(struct threadpool_group **out)
Definition: threadpool.c:1960
wchar_t tm const _CrtWcstime_Writes_and_advances_ptr_ count wchar_t ** out
Definition: wcsftime.cpp:383

Referenced by CreateThreadpoolCleanupGroup(), and init_threadpool().

◆ TpAllocIoCompletion()

NTSYSAPI NTSTATUS WINAPI TpAllocIoCompletion ( TP_IO **  out,
HANDLE  file,
PTP_IO_CALLBACK  callback,
void userdata,
TP_CALLBACK_ENVIRON environment 
)

Definition at line 2544 of file threadpool.c.

2546{
2547 struct threadpool_object *object;
2548 struct threadpool *pool;
2550
2551 TRACE( "%p %p %p %p %p\n", out, file, callback, userdata, environment );
2552
2553 if (!(object = RtlAllocateHeap( GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object) )))
2554 return STATUS_NO_MEMORY;
2555
2556 if ((status = tp_threadpool_lock( &pool, environment )))
2557 {
2558 RtlFreeHeap( GetProcessHeap(), 0, object );
2559 return status;
2560 }
2561
2562 object->type = TP_OBJECT_TYPE_IO;
2563 object->u.io.callback = callback;
2564 if (!(object->u.io.completions = RtlAllocateHeap( GetProcessHeap(), 0, 8 * sizeof(*object->u.io.completions) )))
2565 {
2567 RtlFreeHeap( GetProcessHeap(), 0, object );
2568 return status;
2569 }
2570
2571 if ((status = tp_ioqueue_lock( object, file )))
2572 {
2574 RtlFreeHeap( GetProcessHeap(), 0, object->u.io.completions );
2575 RtlFreeHeap( GetProcessHeap(), 0, object );
2576 return status;
2577 }
2578
2579 tp_object_initialize( object, pool, userdata, environment );
2580
2581 *out = (TP_IO *)object;
2582 return STATUS_SUCCESS;
2583}
#define HEAP_ZERO_MEMORY
Definition: compat.h:134
static IPrintDialogCallback callback
Definition: printdlg.c:326
static void tp_object_initialize(struct threadpool_object *object, struct threadpool *pool, PVOID userdata, TP_CALLBACK_ENVIRON *environment)
Definition: threadpool.c:2026
@ TP_OBJECT_TYPE_IO
Definition: threadpool.c:167
static void tp_threadpool_unlock(struct threadpool *pool)
Definition: threadpool.c:1947
static NTSTATUS tp_ioqueue_lock(struct threadpool_object *io, HANDLE file)
Definition: threadpool.c:1724
static NTSTATUS tp_threadpool_lock(struct threadpool **out, TP_CALLBACK_ENVIRON *environment)
Definition: threadpool.c:1874
Definition: fci.c:127
struct _TP_IO TP_IO
Definition: winnt_old.h:4646

Referenced by CreateThreadpoolIo(), and init_threadpool().

◆ TpAllocPool()

NTSYSAPI NTSTATUS WINAPI TpAllocPool ( TP_POOL **  out,
PVOID  reserved 
)

Definition at line 2588 of file threadpool.c.

2589{
2590 TRACE( "%p %p\n", out, reserved );
2591
2592 if (reserved)
2593 FIXME( "reserved argument is nonzero (%p)\n", reserved );
2594
2595 return tp_threadpool_alloc( (struct threadpool **)out );
2596}
r reserved
Definition: btrfs.c:3006
static NTSTATUS tp_threadpool_alloc(struct threadpool **out)
Definition: threadpool.c:1782

Referenced by CreateThreadpool(), and init_threadpool().

◆ TpAllocTimer()

NTSYSAPI NTSTATUS WINAPI TpAllocTimer ( TP_TIMER **  out,
PTP_TIMER_CALLBACK  callback,
PVOID  userdata,
TP_CALLBACK_ENVIRON environment 
)

Definition at line 2601 of file threadpool.c.

2603{
2604 struct threadpool_object *object;
2605 struct threadpool *pool;
2607
2608 TRACE( "%p %p %p %p\n", out, callback, userdata, environment );
2609
2610 object = RtlAllocateHeap( GetProcessHeap(), 0, sizeof(*object) );
2611 if (!object)
2612 return STATUS_NO_MEMORY;
2613
2614 status = tp_threadpool_lock( &pool, environment );
2615 if (status)
2616 {
2617 RtlFreeHeap( GetProcessHeap(), 0, object );
2618 return status;
2619 }
2620
2621 object->type = TP_OBJECT_TYPE_TIMER;
2622 object->u.timer.callback = callback;
2623
2624 status = tp_timerqueue_lock( object );
2625 if (status)
2626 {
2628 RtlFreeHeap( GetProcessHeap(), 0, object );
2629 return status;
2630 }
2631
2632 tp_object_initialize( object, pool, userdata, environment );
2633
2634 *out = (TP_TIMER *)object;
2635 return STATUS_SUCCESS;
2636}
@ TP_OBJECT_TYPE_TIMER
Definition: threadpool.c:165
static NTSTATUS tp_timerqueue_lock(struct threadpool_object *timer)
Definition: threadpool.c:1265
struct _TP_TIMER TP_TIMER
Definition: winnt_old.h:4644

Referenced by CreateThreadpoolTimer(), and init_threadpool().

◆ TpAllocWait()

NTSYSAPI NTSTATUS WINAPI TpAllocWait ( TP_WAIT **  out,
PTP_WAIT_CALLBACK  callback,
PVOID  userdata,
TP_CALLBACK_ENVIRON environment 
)

Definition at line 2677 of file threadpool.c.

2679{
2680 TRACE( "%p %p %p %p\n", out, callback, userdata, environment );
2681 return tp_alloc_wait( out, callback, userdata, environment, WT_EXECUTEONLYONCE );
2682}
static NTSTATUS tp_alloc_wait(TP_WAIT **out, PTP_WAIT_CALLBACK callback, PVOID userdata, TP_CALLBACK_ENVIRON *environment, DWORD flags)
Definition: threadpool.c:2638
#define WT_EXECUTEONLYONCE
Definition: winnt_old.h:1088

Referenced by CreateThreadpoolWait(), and init_threadpool().

◆ TpAllocWork()

NTSYSAPI NTSTATUS WINAPI TpAllocWork ( TP_WORK **  out,
PTP_WORK_CALLBACK  callback,
PVOID  userdata,
TP_CALLBACK_ENVIRON environment 
)

Definition at line 2687 of file threadpool.c.

2689{
2690 struct threadpool_object *object;
2691 struct threadpool *pool;
2693
2694 TRACE( "%p %p %p %p\n", out, callback, userdata, environment );
2695
2696 object = RtlAllocateHeap( GetProcessHeap(), 0, sizeof(*object) );
2697 if (!object)
2698 return STATUS_NO_MEMORY;
2699
2700 status = tp_threadpool_lock( &pool, environment );
2701 if (status)
2702 {
2703 RtlFreeHeap( GetProcessHeap(), 0, object );
2704 return status;
2705 }
2706
2707 object->type = TP_OBJECT_TYPE_WORK;
2708 object->u.work.callback = callback;
2709 tp_object_initialize( object, pool, userdata, environment );
2710
2711 *out = (TP_WORK *)object;
2712 return STATUS_SUCCESS;
2713}
@ TP_OBJECT_TYPE_WORK
Definition: threadpool.c:164
struct _TP_WORK TP_WORK
Definition: winnt_old.h:4642

Referenced by CreateThreadpoolWork(), and init_threadpool().

◆ TpCallbackLeaveCriticalSectionOnCompletion()

NTSYSAPI void WINAPI TpCallbackLeaveCriticalSectionOnCompletion ( TP_CALLBACK_INSTANCE instance,
RTL_CRITICAL_SECTION crit 
)

Definition at line 2740 of file threadpool.c.

2741{
2743
2744 TRACE( "%p %p\n", instance, crit );
2745
2746 if (!this->cleanup.critical_section)
2747 this->cleanup.critical_section = crit;
2748}
static HINSTANCE instance
Definition: main.c:40
static void cleanup(void)
Definition: main.c:1335
static struct threadpool_instance * impl_from_TP_CALLBACK_INSTANCE(TP_CALLBACK_INSTANCE *instance)
Definition: threadpool.c:425

◆ TpCallbackMayRunLong()

NTSYSAPI NTSTATUS WINAPI TpCallbackMayRunLong ( TP_CALLBACK_INSTANCE instance)

Definition at line 2753 of file threadpool.c.

2754{
2756 struct threadpool_object *object = this->object;
2757 struct threadpool *pool;
2759
2760 TRACE( "%p\n", instance );
2761
2762 if (this->threadid != GetCurrentThreadId())
2763 {
2764 ERR("called from wrong thread, ignoring\n");
2765 return STATUS_UNSUCCESSFUL; /* FIXME */
2766 }
2767
2768 if (this->may_run_long)
2769 return STATUS_SUCCESS;
2770
2771 pool = object->pool;
2773
2774 /* Start new worker threads if required. */
2775 if (pool->num_busy_workers >= pool->num_workers)
2776 {
2777 if (pool->num_workers < pool->max_workers)
2778 {
2780 }
2781 else
2782 {
2784 }
2785 }
2786
2788 this->may_run_long = TRUE;
2789 return status;
2790}
#define ERR(fmt,...)
Definition: precomp.h:57
#define STATUS_TOO_MANY_THREADS
Definition: ntstatus.h:627
static NTSTATUS tp_new_worker_thread(struct threadpool *pool)
Definition: threadpool.c:1242
DWORD WINAPI GetCurrentThreadId(void)
Definition: thread.c:459

Referenced by CallbackMayRunLong(), and init_threadpool().

◆ TpCallbackReleaseMutexOnCompletion()

NTSYSAPI void WINAPI TpCallbackReleaseMutexOnCompletion ( TP_CALLBACK_INSTANCE instance,
HANDLE  mutex 
)

Definition at line 2795 of file threadpool.c.

2796{
2798
2799 TRACE( "%p %p\n", instance, mutex );
2800
2801 if (!this->cleanup.mutex)
2802 this->cleanup.mutex = mutex;
2803}
Definition: module.h:456

◆ TpCallbackReleaseSemaphoreOnCompletion()

NTSYSAPI void WINAPI TpCallbackReleaseSemaphoreOnCompletion ( TP_CALLBACK_INSTANCE instance,
HANDLE  semaphore,
DWORD  count 
)

Definition at line 2808 of file threadpool.c.

2809{
2811
2812 TRACE( "%p %p %lu\n", instance, semaphore, count );
2813
2814 if (!this->cleanup.semaphore)
2815 {
2816 this->cleanup.semaphore = semaphore;
2817 this->cleanup.semaphore_count = count;
2818 }
2819}
GLuint GLuint GLsizei count
Definition: gl.h:1545
HANDLE semaphore
Definition: loader.c:2140

Referenced by init_threadpool().

◆ TpCallbackSetEventOnCompletion()

NTSYSAPI void WINAPI TpCallbackSetEventOnCompletion ( TP_CALLBACK_INSTANCE instance,
HANDLE  event 
)

Definition at line 2824 of file threadpool.c.

2825{
2827
2828 TRACE( "%p %p\n", instance, event );
2829
2830 if (!this->cleanup.event)
2831 this->cleanup.event = event;
2832}

◆ TpCallbackUnloadDllOnCompletion()

NTSYSAPI void WINAPI TpCallbackUnloadDllOnCompletion ( TP_CALLBACK_INSTANCE instance,
HMODULE  module 
)

Definition at line 2837 of file threadpool.c.

2838{
2840
2841 TRACE( "%p %p\n", instance, module );
2842
2843 if (!this->cleanup.library)
2844 this->cleanup.library = module;
2845}

◆ TpCancelAsyncIoOperation()

NTSYSAPI void WINAPI TpCancelAsyncIoOperation ( TP_IO io)

Definition at line 2718 of file threadpool.c.

2719{
2720 struct threadpool_object *this = impl_from_TP_IO( io );
2721
2722 TRACE( "%p\n", io );
2723
2724 RtlEnterCriticalSection( &this->pool->cs );
2725
2726 TRACE("pending_count %u.\n", this->u.io.pending_count);
2727
2728 this->u.io.pending_count--;
2729 if (object_is_finished( this, TRUE ))
2731 if (object_is_finished( this, FALSE ))
2733
2734 RtlLeaveCriticalSection( &this->pool->cs );
2735}
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
Definition: glfuncs.h:240
static HANDLE PIO_APC_ROUTINE PVOID PIO_STATUS_BLOCK io
Definition: file.c:100
NTSYSAPI VOID NTAPI RtlWakeAllConditionVariable(_Inout_ PRTL_CONDITION_VARIABLE ConditionVariable)
static BOOL object_is_finished(struct threadpool_object *object, BOOL group)
Definition: threadpool.c:2184
static struct threadpool_object * impl_from_TP_IO(TP_IO *io)
Definition: threadpool.c:413
RTL_CONDITION_VARIABLE finished_event
Definition: threadpool.c:197
RTL_CONDITION_VARIABLE group_finished_event
Definition: threadpool.c:198

Referenced by init_threadpool().

◆ TpDisassociateCallback()

NTSYSAPI void WINAPI TpDisassociateCallback ( TP_CALLBACK_INSTANCE instance)

Definition at line 2850 of file threadpool.c.

2851{
2853 struct threadpool_object *object = this->object;
2854 struct threadpool *pool;
2855
2856 TRACE( "%p\n", instance );
2857
2858 if (this->threadid != GetCurrentThreadId())
2859 {
2860 ERR("called from wrong thread, ignoring\n");
2861 return;
2862 }
2863
2864 if (!this->associated)
2865 return;
2866
2867 pool = object->pool;
2869
2870 object->num_associated_callbacks--;
2871 if (object_is_finished( object, FALSE ))
2872 RtlWakeAllConditionVariable( &object->finished_event );
2873
2875 this->associated = FALSE;
2876}

Referenced by init_threadpool().

◆ TpIsTimerSet()

NTSYSAPI BOOL WINAPI TpIsTimerSet ( TP_TIMER timer)

Definition at line 2881 of file threadpool.c.

2882{
2883 struct threadpool_object *this = impl_from_TP_TIMER( timer );
2884
2885 TRACE( "%p\n", timer );
2886
2887 return this->u.timer.timer_set;
2888}
static struct threadpool_object * impl_from_TP_TIMER(TP_TIMER *timer)
Definition: threadpool.c:399
struct threadpool_object::@5309::@5312 timer

Referenced by init_threadpool().

◆ TpPostWork()

NTSYSAPI void WINAPI TpPostWork ( TP_WORK work)

Definition at line 2893 of file threadpool.c.

2894{
2895 struct threadpool_object *this = impl_from_TP_WORK( work );
2896
2897 TRACE( "%p\n", work );
2898
2899 tp_object_submit( this, FALSE );
2900}
static void tp_object_submit(struct threadpool_object *object, BOOL signaled)
Definition: threadpool.c:2119
static struct threadpool_object * impl_from_TP_WORK(TP_WORK *work)
Definition: threadpool.c:392
struct threadpool_object::@5309::@5311 work

Referenced by init_threadpool().

◆ TpQueryPoolStackInformation()

NTSYSAPI NTSTATUS WINAPI TpQueryPoolStackInformation ( TP_POOL pool,
TP_POOL_STACK_INFORMATION stack_info 
)

Definition at line 3364 of file threadpool.c.

3365{
3366 struct threadpool *this = impl_from_TP_POOL( pool );
3367
3368 TRACE( "%p %p\n", pool, stack_info );
3369
3370 if (!stack_info)
3372
3373 RtlEnterCriticalSection( &this->cs );
3374 *stack_info = this->stack_info;
3375 RtlLeaveCriticalSection( &this->cs );
3376
3377 return STATUS_SUCCESS;
3378}
CRITICAL_SECTION cs
Definition: threadpool.c:285
static struct threadpool * impl_from_TP_POOL(TP_POOL *pool)
Definition: threadpool.c:387
TP_POOL_STACK_INFORMATION stack_info
Definition: threadpool.c:158

Referenced by init_threadpool(), and QueryThreadpoolStackInformation().

◆ TpReleaseCleanupGroup()

NTSYSAPI void WINAPI TpReleaseCleanupGroup ( TP_CLEANUP_GROUP group)

Definition at line 2905 of file threadpool.c.

2906{
2908
2909 TRACE( "%p\n", group );
2910
2911 tp_group_shutdown( this );
2912 tp_group_release( this );
2913}
GLboolean GLuint group
Definition: glext.h:11120
static struct threadpool_group * impl_from_TP_CLEANUP_GROUP(TP_CLEANUP_GROUP *group)
Definition: threadpool.c:420
static void tp_group_shutdown(struct threadpool_group *group)
Definition: threadpool.c:1992
static BOOL tp_group_release(struct threadpool_group *group)
Definition: threadpool.c:2002

Referenced by init_threadpool().

◆ TpReleaseCleanupGroupMembers()

NTSYSAPI void WINAPI TpReleaseCleanupGroupMembers ( TP_CLEANUP_GROUP group,
BOOL  cancel_pending,
PVOID  userdata 
)

Definition at line 2918 of file threadpool.c.

2919{
2921 struct threadpool_object *object, *next;
2922 struct list members;
2923
2924 TRACE( "%p %u %p\n", group, cancel_pending, userdata );
2925
2926 RtlEnterCriticalSection( &this->cs );
2927
2928 /* Unset group, increase references, and mark objects for shutdown */
2929 LIST_FOR_EACH_ENTRY_SAFE( object, next, &this->members, struct threadpool_object, group_entry )
2930 {
2931 assert( object->group == this );
2932 assert( object->is_group_member );
2933
2934 if (InterlockedIncrement( &object->refcount ) == 1)
2935 {
2936 /* Object is basically already destroyed, but group reference
2937 * was not deleted yet. We can safely ignore this object. */
2938 InterlockedDecrement( &object->refcount );
2939 list_remove( &object->group_entry );
2940 object->is_group_member = FALSE;
2941 continue;
2942 }
2943
2944 object->is_group_member = FALSE;
2946 }
2947
2948 /* Move members to a new temporary list */
2949 list_init( &members );
2950 list_move_tail( &members, &this->members );
2951
2952 RtlLeaveCriticalSection( &this->cs );
2953
2954 /* Cancel pending callbacks if requested */
2955 if (cancel_pending)
2956 {
2957 LIST_FOR_EACH_ENTRY( object, &members, struct threadpool_object, group_entry )
2958 {
2959 tp_object_cancel( object );
2960 }
2961 }
2962
2963 /* Wait for remaining callbacks to finish */
2964 LIST_FOR_EACH_ENTRY_SAFE( object, next, &members, struct threadpool_object, group_entry )
2965 {
2966 tp_object_wait( object, TRUE );
2967
2968 if (!object->shutdown)
2969 {
2970 /* Execute group cancellation callback if defined, and if this was actually a group cancel. */
2971 if (cancel_pending && object->group_cancel_callback)
2972 {
2973 TRACE( "executing group cancel callback %p(%p, %p)\n",
2974 object->group_cancel_callback, object->userdata, userdata );
2975 object->group_cancel_callback( object->userdata, userdata );
2976 TRACE( "callback %p returned\n", object->group_cancel_callback );
2977 }
2978
2979 if (object->type != TP_OBJECT_TYPE_SIMPLE)
2980 tp_object_release( object );
2981 }
2982
2983 object->shutdown = TRUE;
2984 tp_object_release( object );
2985 }
2986}
#define InterlockedIncrement
Definition: armddk.h:53
#define InterlockedDecrement
Definition: armddk.h:52
static void list_remove(struct list_entry *entry)
Definition: list.h:90
Definition: list.h:37
static void list_move_tail(struct list_head *list, struct list_head *head)
Definition: list.h:122
static unsigned __int64 next
Definition: rand_nt.c:6
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
Definition: list.h:198
static void tp_object_wait(struct threadpool_object *object, BOOL group_wait)
Definition: threadpool.c:2203
static BOOL tp_object_release(struct threadpool_object *object)
Definition: threadpool.c:2252
@ TP_OBJECT_TYPE_SIMPLE
Definition: threadpool.c:163
static void tp_object_cancel(struct threadpool_object *object)
Definition: threadpool.c:2158
static void tp_object_prepare_shutdown(struct threadpool_object *object)
Definition: threadpool.c:2237

Referenced by init_threadpool().

◆ TpReleaseIoCompletion()

NTSYSAPI void WINAPI TpReleaseIoCompletion ( TP_IO io)

Definition at line 2991 of file threadpool.c.

2992{
2993 struct threadpool_object *this = impl_from_TP_IO( io );
2994 BOOL can_destroy;
2995
2996 TRACE( "%p\n", io );
2997
2998 RtlEnterCriticalSection( &this->pool->cs );
2999 this->u.io.shutting_down = TRUE;
3000 can_destroy = !this->u.io.pending_count && !this->u.io.skipped_count;
3001 RtlLeaveCriticalSection( &this->pool->cs );
3002
3003 if (can_destroy)
3004 {
3006 this->shutdown = TRUE;
3007 tp_object_release( this );
3008 }
3009}
unsigned int BOOL
Definition: ntddk_ex.h:94
INT WSAAPI shutdown(IN SOCKET s, IN INT how)
Definition: sockctrl.c:506

Referenced by init_threadpool().

◆ TpReleasePool()

NTSYSAPI void WINAPI TpReleasePool ( TP_POOL pool)

Definition at line 3014 of file threadpool.c.

3015{
3016 struct threadpool *this = impl_from_TP_POOL( pool );
3017
3018 TRACE( "%p\n", pool );
3019
3020 tp_threadpool_shutdown( this );
3021 tp_threadpool_release( this );
3022}
static BOOL tp_threadpool_release(struct threadpool *pool)
Definition: threadpool.c:1845
static void tp_threadpool_shutdown(struct threadpool *pool)
Definition: threadpool.c:1832

Referenced by init_threadpool().

◆ TpReleaseTimer()

NTSYSAPI void WINAPI TpReleaseTimer ( TP_TIMER timer)

Definition at line 3027 of file threadpool.c.

3028{
3029 struct threadpool_object *this = impl_from_TP_TIMER( timer );
3030
3031 TRACE( "%p\n", timer );
3032
3034 this->shutdown = TRUE;
3035 tp_object_release( this );
3036}

Referenced by init_threadpool().

◆ TpReleaseWait()

NTSYSAPI void WINAPI TpReleaseWait ( TP_WAIT wait)

Definition at line 3041 of file threadpool.c.

3042{
3043 struct threadpool_object *this = impl_from_TP_WAIT( wait );
3044
3045 TRACE( "%p\n", wait );
3046
3048 this->shutdown = TRUE;
3049 tp_object_release( this );
3050}
static struct threadpool_object * impl_from_TP_WAIT(TP_WAIT *wait)
Definition: threadpool.c:406
struct threadpool_object::@5309::@5313 wait

Referenced by init_threadpool(), and RtlDeregisterWaitEx().

◆ TpReleaseWork()

NTSYSAPI void WINAPI TpReleaseWork ( TP_WORK work)

Definition at line 3055 of file threadpool.c.

3056{
3057 struct threadpool_object *this = impl_from_TP_WORK( work );
3058
3059 TRACE( "%p\n", work );
3060
3062 this->shutdown = TRUE;
3063 tp_object_release( this );
3064}

Referenced by init_threadpool().

◆ TpSetPoolMaxThreads()

NTSYSAPI void WINAPI TpSetPoolMaxThreads ( TP_POOL pool,
DWORD  maximum 
)

Definition at line 3069 of file threadpool.c.

3070{
3071 struct threadpool *this = impl_from_TP_POOL( pool );
3072
3073 TRACE( "%p %lu\n", pool, maximum );
3074
3075 RtlEnterCriticalSection( &this->cs );
3076 this->max_workers = max( maximum, 1 );
3077 this->min_workers = min( this->min_workers, this->max_workers );
3078 RtlLeaveCriticalSection( &this->cs );
3079}
int max_workers
Definition: threadpool.c:153
int min_workers
Definition: threadpool.c:154

Referenced by init_threadpool().

◆ TpSetPoolMinThreads()

NTSYSAPI BOOL WINAPI TpSetPoolMinThreads ( TP_POOL pool,
DWORD  minimum 
)

Definition at line 3084 of file threadpool.c.

3085{
3086 struct threadpool *this = impl_from_TP_POOL( pool );
3088
3089 TRACE( "%p %lu\n", pool, minimum );
3090
3091 RtlEnterCriticalSection( &this->cs );
3092
3093 while (this->num_workers < minimum)
3094 {
3095 status = tp_new_worker_thread( this );
3096 if (status != STATUS_SUCCESS)
3097 break;
3098 }
3099
3100 if (status == STATUS_SUCCESS)
3101 {
3102 this->min_workers = minimum;
3103 this->max_workers = max( this->min_workers, this->max_workers );
3104 }
3105
3106 RtlLeaveCriticalSection( &this->cs );
3107 return !status;
3108}
int num_workers
Definition: threadpool.c:155

◆ TpSetPoolStackInformation()

NTSYSAPI NTSTATUS WINAPI TpSetPoolStackInformation ( TP_POOL pool,
TP_POOL_STACK_INFORMATION stack_info 
)

Definition at line 3345 of file threadpool.c.

3346{
3347 struct threadpool *this = impl_from_TP_POOL( pool );
3348
3349 TRACE( "%p %p\n", pool, stack_info );
3350
3351 if (!stack_info)
3353
3354 RtlEnterCriticalSection( &this->cs );
3355 this->stack_info = *stack_info;
3356 RtlLeaveCriticalSection( &this->cs );
3357
3358 return STATUS_SUCCESS;
3359}

Referenced by init_threadpool(), and SetThreadpoolStackInformation().

◆ TpSetTimer()

NTSYSAPI void WINAPI TpSetTimer ( TP_TIMER timer,
LARGE_INTEGER timeout,
LONG  period,
LONG  window_length 
)

Definition at line 3113 of file threadpool.c.

3114{
3115 struct threadpool_object *this = impl_from_TP_TIMER( timer );
3116 struct threadpool_object *other_timer;
3117 BOOL submit_timer = FALSE;
3119
3120 TRACE( "%p %p %lu %lu\n", timer, timeout, period, window_length );
3121
3123
3124 assert( this->u.timer.timer_initialized );
3125 this->u.timer.timer_set = timeout != NULL;
3126
3127 /* Convert relative timeout to absolute timestamp and handle a timeout
3128 * of zero, which means that the timer is submitted immediately. */
3129 if (timeout)
3130 {
3131 timestamp = timeout->QuadPart;
3132 if ((LONGLONG)timestamp < 0)
3133 {
3136 timestamp = now.QuadPart - timestamp;
3137 }
3138 else if (!timestamp)
3139 {
3140 if (!period)
3141 timeout = NULL;
3142 else
3143 {
3146 timestamp = now.QuadPart + (ULONGLONG)period * 10000;
3147 }
3148 submit_timer = TRUE;
3149 }
3150 }
3151
3152 /* First remove existing timeout. */
3153 if (this->u.timer.timer_pending)
3154 {
3155 list_remove( &this->u.timer.timer_entry );
3156 this->u.timer.timer_pending = FALSE;
3157 }
3158
3159 /* If the timer was enabled, then add it back to the queue. */
3160 if (timeout)
3161 {
3162 this->u.timer.timeout = timestamp;
3163 this->u.timer.period = period;
3164 this->u.timer.window_length = window_length;
3165
3166 LIST_FOR_EACH_ENTRY( other_timer, &timerqueue.pending_timers,
3167 struct threadpool_object, u.timer.timer_entry )
3168 {
3169 assert( other_timer->type == TP_OBJECT_TYPE_TIMER );
3170 if (this->u.timer.timeout < other_timer->u.timer.timeout)
3171 break;
3172 }
3173 list_add_before( &other_timer->u.timer.timer_entry, &this->u.timer.timer_entry );
3174
3175 /* Wake up the timer thread when the timeout has to be updated. */
3176 if (list_head( &timerqueue.pending_timers ) == &this->u.timer.timer_entry )
3177 RtlWakeAllConditionVariable( &timerqueue.update_event );
3178
3179 this->u.timer.timer_pending = TRUE;
3180 }
3181
3183
3184 if (submit_timer)
3185 tp_object_submit( this, FALSE );
3186}
time_t now
Definition: finger.c:65
NTSTATUS NTAPI NtQuerySystemTime(OUT PLARGE_INTEGER SystemTime)
Definition: time.c:569
__WINE_SERVER_LIST_INLINE void list_add_before(struct list *elem, struct list *to_add)
Definition: list.h:87
static struct @5306 timerqueue
union threadpool_object::@5309 u
enum threadpool_objtype type
Definition: threadpool.c:183
Definition: dhcpd.h:248
int64_t LONGLONG
Definition: typedefs.h:68

Referenced by init_threadpool().

◆ TpSetWait()

NTSYSAPI void WINAPI TpSetWait ( TP_WAIT wait,
HANDLE  handle,
LARGE_INTEGER timeout 
)

Definition at line 3191 of file threadpool.c.

3192{
3193 struct threadpool_object *this = impl_from_TP_WAIT( wait );
3195
3196 TRACE( "%p %p %p\n", wait, handle, timeout );
3197
3199
3200 assert( this->u.wait.bucket );
3201 this->u.wait.handle = handle;
3202
3203 if (handle || this->u.wait.wait_pending)
3204 {
3205 struct waitqueue_bucket *bucket = this->u.wait.bucket;
3206 list_remove( &this->u.wait.wait_entry );
3207
3208 /* Convert relative timeout to absolute timestamp. */
3209 if (handle && timeout)
3210 {
3211 timestamp = timeout->QuadPart;
3212 if ((LONGLONG)timestamp < 0)
3213 {
3216 timestamp = now.QuadPart - timestamp;
3217 }
3218 }
3219
3220 /* Add wait object back into one of the queues. */
3221 if (handle)
3222 {
3223 list_add_tail( &bucket->waiting, &this->u.wait.wait_entry );
3224 this->u.wait.wait_pending = TRUE;
3225 this->u.wait.timeout = timestamp;
3226 }
3227 else
3228 {
3229 list_add_tail( &bucket->reserved, &this->u.wait.wait_entry );
3230 this->u.wait.wait_pending = FALSE;
3231 }
3232
3233 /* Wake up the wait queue thread. */
3234 NtSetEvent( bucket->update_event, NULL );
3235 }
3236
3238}
static void list_add_tail(struct list_entry *head, struct list_entry *entry)
Definition: list.h:83
#define MAXLONGLONG
static struct @5307 waitqueue
struct list waiting
Definition: threadpool.c:351
HANDLE update_event
Definition: threadpool.c:352
struct list reserved
Definition: threadpool.c:350

Referenced by init_threadpool(), RtlDeregisterWaitEx(), and RtlRegisterWait().

◆ TpSimpleTryPost()

NTSYSAPI NTSTATUS WINAPI TpSimpleTryPost ( PTP_SIMPLE_CALLBACK  callback,
PVOID  userdata,
TP_CALLBACK_ENVIRON environment 
)

Definition at line 3243 of file threadpool.c.

3245{
3246 struct threadpool_object *object;
3247 struct threadpool *pool;
3249
3250 TRACE( "%p %p %p\n", callback, userdata, environment );
3251
3252 object = RtlAllocateHeap( GetProcessHeap(), 0, sizeof(*object) );
3253 if (!object)
3254 return STATUS_NO_MEMORY;
3255
3256 status = tp_threadpool_lock( &pool, environment );
3257 if (status)
3258 {
3259 RtlFreeHeap( GetProcessHeap(), 0, object );
3260 return status;
3261 }
3262
3263 object->type = TP_OBJECT_TYPE_SIMPLE;
3264 object->u.simple.callback = callback;
3265 tp_object_initialize( object, pool, userdata, environment );
3266
3267 return STATUS_SUCCESS;
3268}

Referenced by init_threadpool(), RtlQueueWorkItem(), and TrySubmitThreadpoolCallback().

◆ TpStartAsyncIoOperation()

NTSYSAPI void WINAPI TpStartAsyncIoOperation ( TP_IO io)

Definition at line 3273 of file threadpool.c.

3274{
3275 struct threadpool_object *this = impl_from_TP_IO( io );
3276
3277 TRACE( "%p\n", io );
3278
3279 RtlEnterCriticalSection( &this->pool->cs );
3280
3281 this->u.io.pending_count++;
3282
3283 RtlLeaveCriticalSection( &this->pool->cs );
3284}

Referenced by init_threadpool().

◆ TpWaitForIoCompletion()

NTSYSAPI void WINAPI TpWaitForIoCompletion ( TP_IO io,
BOOL  cancel_pending 
)

Definition at line 3289 of file threadpool.c.

3290{
3291 struct threadpool_object *this = impl_from_TP_IO( io );
3292
3293 TRACE( "%p %d\n", io, cancel_pending );
3294
3295 if (cancel_pending)
3296 tp_object_cancel( this );
3297 tp_object_wait( this, FALSE );
3298}

Referenced by init_threadpool().

◆ TpWaitForTimer()

NTSYSAPI void WINAPI TpWaitForTimer ( TP_TIMER timer,
BOOL  cancel_pending 
)

Definition at line 3303 of file threadpool.c.

3304{
3305 struct threadpool_object *this = impl_from_TP_TIMER( timer );
3306
3307 TRACE( "%p %d\n", timer, cancel_pending );
3308
3309 if (cancel_pending)
3310 tp_object_cancel( this );
3311 tp_object_wait( this, FALSE );
3312}

Referenced by init_threadpool().

◆ TpWaitForWait()

NTSYSAPI void WINAPI TpWaitForWait ( TP_WAIT wait,
BOOL  cancel_pending 
)

Definition at line 3317 of file threadpool.c.

3318{
3319 struct threadpool_object *this = impl_from_TP_WAIT( wait );
3320
3321 TRACE( "%p %d\n", wait, cancel_pending );
3322
3323 if (cancel_pending)
3324 tp_object_cancel( this );
3325 tp_object_wait( this, FALSE );
3326}

Referenced by init_threadpool(), and RtlDeregisterWaitEx().

◆ TpWaitForWork()

NTSYSAPI void WINAPI TpWaitForWork ( TP_WORK work,
BOOL  cancel_pending 
)

Definition at line 3331 of file threadpool.c.

3332{
3333 struct threadpool_object *this = impl_from_TP_WORK( work );
3334
3335 TRACE( "%p %u\n", work, cancel_pending );
3336
3337 if (cancel_pending)
3338 tp_object_cancel( this );
3339 tp_object_wait( this, FALSE );
3340}

Referenced by init_threadpool().

◆ wine_nt_to_unix_file_name()

NTSYSAPI NTSTATUS WINAPI wine_nt_to_unix_file_name ( const OBJECT_ATTRIBUTES attr,
char nameA,
ULONG size,
UINT  disposition 
)

◆ wine_unix_to_nt_file_name()

NTSYSAPI NTSTATUS WINAPI wine_unix_to_nt_file_name ( const char name,
WCHAR buffer,
ULONG size 
)

Referenced by wine_get_dos_file_name().

◆ Wow64AllocateTemp()

void *WINAPI Wow64AllocateTemp ( SIZE_T  )

◆ Wow64ApcRoutine()

void WINAPI Wow64ApcRoutine ( ULONG_PTR  ,
ULONG_PTR  ,
ULONG_PTR  ,
CONTEXT  
)

◆ Wow64KiUserCallbackDispatcher()

NTSTATUS WINAPI Wow64KiUserCallbackDispatcher ( ULONG  ,
void ,
ULONG  ,
void **  ,
ULONG  
)

◆ Wow64PassExceptionToGuest()

void WINAPI Wow64PassExceptionToGuest ( EXCEPTION_POINTERS )

◆ Wow64PrepareForException()

void WINAPI Wow64PrepareForException ( EXCEPTION_RECORD ,
CONTEXT  
)

◆ Wow64ProcessPendingCrossProcessItems()

void WINAPI Wow64ProcessPendingCrossProcessItems ( void  )

◆ Wow64RaiseException()

NTSTATUS WINAPI Wow64RaiseException ( int  ,
EXCEPTION_RECORD  
)

◆ Wow64SystemServiceEx()

NTSTATUS WINAPI Wow64SystemServiceEx ( UINT  ,
UINT  
)

Variable Documentation

◆ __WINE_MALLOC

NTSYSAPI PVOID WINAPI __WINE_MALLOC

Definition at line 4882 of file winternl.h.