Added process ids.
[reactos.git] / reactos / include / ddk / pstypes.h
index 1ddeb84..9316431 100644 (file)
@@ -1,17 +1,14 @@
 #ifndef __INCLUDE_DDK_PSTYPES_H
 #define __INCLUDE_DDK_PSTYPES_H
 
-#undef WIN32_LEAN_AND_MEAN
-#include <windows.h> // might be redundant
-#include <kernel32/heap.h>
 #include <kernel32/atom.h>
 #include <internal/hal.h>
 
 #ifndef TLS_MINIMUM_AVAILABLE
-       #define TLS_MINIMUM_AVAILABLE   (64)
+#define TLS_MINIMUM_AVAILABLE  (64)
 #endif
 #ifndef MAX_PATH
-       #define MAX_PATH        (260)
+#define MAX_PATH       (260)
 #endif
 
 typedef NTSTATUS (*PKSTART_ROUTINE)(PVOID StartContext);
@@ -96,7 +93,7 @@ typedef struct _NT_PEB
        WORD                    NtGlobalFlag;
 
        PPROCESSINFOW           StartupInfo;
-       PHEAP                   ProcessHeap; 
+       HANDLE                  ProcessHeap; 
        ATOMTABLE               LocalAtomTable;
        LPCRITICAL_SECTION      CriticalSection;
        DWORD                   CriticalSectionTimeout; 
@@ -111,7 +108,7 @@ typedef struct _CLIENT_ID
     HANDLE UniqueProcess;
     HANDLE UniqueThread;
 } CLIENT_ID, *PCLIENT_ID;
-
 typedef struct _NT_TIB {
     struct _EXCEPTION_REGISTRATION_RECORD *ExceptionList;
     PVOID StackBase;
@@ -127,7 +124,6 @@ typedef struct _NT_TIB {
 
 typedef struct _NT_TEB
 {
-
        NT_TIB                  Tib; 
        CLIENT_ID               Cid;
        HANDLE                  RPCHandle;
@@ -138,7 +134,6 @@ typedef struct _NT_TEB
        NTSTATUS                LastStatusValue; 
        DWORD                   LockCount;
        UCHAR                   HardErrorMode;
-       
 } NT_TEB;
 
 typedef struct _KTHREAD 
@@ -235,6 +230,13 @@ typedef struct _ETHREAD {
        LPTHREAD_START_ROUTINE  Win32StartAddress; // Should Specify a win32 start func
        UCHAR                   LpcExitThreadCalled;
        UCHAR                   HardErrorsAreDisabled;
+
+   
+   /*
+    * Added by David Welch (welch@cwcom.net)
+    */
+   struct _EPROCESS* OldProcess;
+
 } ETHREAD, *PETHREAD;
 
 
@@ -259,13 +261,16 @@ typedef struct _KPROCESS
    /*
     * Added by David Welch (welch@mcmail.com)
     */
-   LIST_ENTRY MemoryAreaList;
-   HANDLE_TABLE HandleTable;
+   LIST_ENTRY           MemoryAreaList;
+   HANDLE_TABLE         HandleTable;
 } KPROCESS, *PKPROCESS;
 
 typedef struct _EPROCESS
 {
    KPROCESS Pcb;
+
+   ULONG    UniqueProcessId;
+   ULONG    InheritedFromUniqueProcessId;
 } EPROCESS, *PEPROCESS;
 
 #define PROCESS_STATE_TERMINATED (1)