https://git.reactos.org/?p=reactos.git;a=commitdiff;h=11a60cebea459268538e6e304be0a38cf39be7cd

commit 11a60cebea459268538e6e304be0a38cf39be7cd
Author:     George Bișoc <[email protected]>
AuthorDate: Sun May 2 21:03:09 2021 +0200
Commit:     George Bișoc <[email protected]>
CommitDate: Sun May 2 21:03:09 2021 +0200

    [NTOS:PS] Add some data structures
    
    These are needed for API tests. The following structures are taken from 
Process Hacker.
---
 sdk/include/ndk/pstypes.h | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/sdk/include/ndk/pstypes.h b/sdk/include/ndk/pstypes.h
index a1868e1d59a..53e76516eed 100644
--- a/sdk/include/ndk/pstypes.h
+++ b/sdk/include/ndk/pstypes.h
@@ -134,6 +134,14 @@ extern POBJECT_TYPE NTSYSAPI PsJobType;
 #define PSP_LONG_QUANTUMS                       0x10
 #define PSP_SHORT_QUANTUMS                      0x20
 
+//
+// Process Handle Tracing Values
+//
+#define PROCESS_HANDLE_TRACE_TYPE_OPEN          1
+#define PROCESS_HANDLE_TRACE_TYPE_CLOSE         2
+#define PROCESS_HANDLE_TRACE_TYPE_BADREF        3
+#define PROCESS_HANDLE_TRACING_MAX_STACKS       16
+
 #ifndef NTOS_MODE_USER
 //
 // Thread Access Types
@@ -903,11 +911,44 @@ typedef struct _POOLED_USAGE_AND_LIMITS
     SIZE_T PagefileLimit;
 } POOLED_USAGE_AND_LIMITS, *PPOOLED_USAGE_AND_LIMITS;
 
+typedef struct _PROCESS_LDT_INFORMATION
+{
+    ULONG Start;
+    ULONG Length;
+    LDT_ENTRY LdtEntries[ANYSIZE_ARRAY];
+} PROCESS_LDT_INFORMATION, *PPROCESS_LDT_INFORMATION;
+
+typedef struct _PROCESS_LDT_SIZE
+{
+    ULONG Length;
+} PROCESS_LDT_SIZE, *PPROCESS_LDT_SIZE;
+
+typedef struct _PROCESS_WS_WATCH_INFORMATION
+{
+    PVOID FaultingPc;
+    PVOID FaultingVa;
+} PROCESS_WS_WATCH_INFORMATION, *PPROCESS_WS_WATCH_INFORMATION;
+
 typedef struct _PROCESS_SESSION_INFORMATION
 {
     ULONG SessionId;
 } PROCESS_SESSION_INFORMATION, *PPROCESS_SESSION_INFORMATION;
 
+typedef struct _PROCESS_HANDLE_TRACING_ENTRY
+{
+    HANDLE Handle;
+    CLIENT_ID ClientId;
+    ULONG Type;
+    PVOID Stacks[PROCESS_HANDLE_TRACING_MAX_STACKS];
+} PROCESS_HANDLE_TRACING_ENTRY, *PPROCESS_HANDLE_TRACING_ENTRY;
+
+typedef struct _PROCESS_HANDLE_TRACING_QUERY
+{
+    HANDLE Handle;
+    ULONG TotalTraces;
+    PROCESS_HANDLE_TRACING_ENTRY HandleTrace[ANYSIZE_ARRAY];
+} PROCESS_HANDLE_TRACING_QUERY, *PPROCESS_HANDLE_TRACING_QUERY;
+
 #endif
 
 typedef struct _PROCESS_PRIORITY_CLASS

Reply via email to