Alex Ionescu: CSR_PROCESS and CSR_THREAD layout from WinDBG. Modified: trunk/reactos/include/subsys/csr/server.h _____
Modified: trunk/reactos/include/subsys/csr/server.h --- trunk/reactos/include/subsys/csr/server.h 2005-08-13 12:35:00 UTC (rev 17362) +++ trunk/reactos/include/subsys/csr/server.h 2005-08-13 12:45:33 UTC (rev 17363) @@ -14,29 +14,55 @@
typedef struct _CSR_PROCESS { - HANDLE Process; - PCSR_SESSION CsrSession; + CLIENT_ID ClientId; + LIST_ENTRY ListLink; + LIST_ENTRY ThreadList; + PCSR_SESSION NtSession; + ULONG ExpectedVersion; + HANDLE ClientPort; + ULONG_PTR ClientViewBase; + ULONG_PTR ClientViewBounds; + HANDLE ProcessHandle; + ULONG SequenceNumber; + ULONG Flags; + ULONG DebugFlags; ULONG ReferenceCount; - PVOID ServerData; + ULONG ProcessGroupId; + ULONG ProcessGroupSequence; + ULONG fVDM; + ULONG ThreadCount; + ULONG PriorityClass; + ULONG Reserved; + ULONG ShutdownLevel; + ULONG ShutdownFlags; + PVOID ServerData; } CSR_PROCESS, * PCSR_PROCESS;
+struct _CSR_WAIT; + typedef struct _CSR_THREAD { - HANDLE Thread; - PCSR_SESSION CsrSession; - PCSR_PROCESS CsrProcess; - ULONG ReferenceCount; - PVOID ServerData; + LARGE_INTEGER CreateTime; + LIST_ENTRY Link; + LIST_ENTRY HashLinks; + CLIENT_ID ClientId; + PCSR_PROCESS Process; + struct _CSR_WAIT *WaitBlock; + HANDLE ThreadHandle; + ULONG Flags; + ULONG ReferenceCount; + ULONG ImpersonationCount; } CSR_THREAD, * PCSR_THREAD;
typedef struct _CSR_WAIT { - PCSR_PROCESS CsrThread; + PCSR_THREAD CsrThread;
} CSR_WAIT, * PCSR_WAIT;
+ typedef VOID (CALLBACK * CSR_SERVER_THREAD)(PVOID);
/* symbols exported by native DLL csrsrv.dll */