projects
/
reactos.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[CSR]
[reactos.git]
/
reactos
/
include
/
reactos
/
subsys
/
csr
/
csrsrv.h
diff --git
a/reactos/include/reactos/subsys/csr/csrsrv.h
b/reactos/include/reactos/subsys/csr/csrsrv.h
index
7e1c41d
..
8634d3c
100644
(file)
--- a/
reactos/include/reactos/subsys/csr/csrsrv.h
+++ b/
reactos/include/reactos/subsys/csr/csrsrv.h
@@
-3,13
+3,21
@@
* PROJECT: ReactOS Client/Server Runtime SubSystem
* FILE: include/reactos/subsys/csr/csrsrv.h
* PURPOSE: Public definitions for CSR Servers
* PROJECT: ReactOS Client/Server Runtime SubSystem
* FILE: include/reactos/subsys/csr/csrsrv.h
* PURPOSE: Public definitions for CSR Servers
- * PROGRAMMERS: Alex Ionescu (alex
@relsoft.net
)
+ * PROGRAMMERS: Alex Ionescu (alex
.ionescu@reactos.org
)
* Hermes Belusca-Maito (hermes.belusca@sfr.fr)
*/
#ifndef _CSRSRV_H
#define _CSRSRV_H
* Hermes Belusca-Maito (hermes.belusca@sfr.fr)
*/
#ifndef _CSRSRV_H
#define _CSRSRV_H
+/*
+ * The CSR_DBG macro is defined for building CSR Servers
+ * with extended debugging information.
+ */
+#if DBG
+#define CSR_DBG
+#endif
+
#include "csrmsg.h"
#include "csrmsg.h"
@@
-134,7
+142,7
@@
typedef enum _CSR_REPLY_CODE
*/
typedef
BOOLEAN
*/
typedef
BOOLEAN
-(*CSR_WAIT_FUNCTION)(
+(
NTAPI
*CSR_WAIT_FUNCTION)(
IN PLIST_ENTRY WaitList,
IN PCSR_THREAD WaitThread,
IN PCSR_API_MESSAGE WaitApiMessage,
IN PLIST_ENTRY WaitList,
IN PCSR_THREAD WaitThread,
IN PCSR_API_MESSAGE WaitApiMessage,
@@
-148,7
+156,6
@@
typedef struct _CSR_WAIT_BLOCK
{
ULONG Size; // Size of the wait block (variable-sized)
LIST_ENTRY WaitList;
{
ULONG Size; // Size of the wait block (variable-sized)
LIST_ENTRY WaitList;
- LIST_ENTRY UserWaitList;
PVOID WaitContext;
PCSR_THREAD WaitThread;
CSR_WAIT_FUNCTION WaitFunction;
PVOID WaitContext;
PCSR_THREAD WaitThread;
CSR_WAIT_FUNCTION WaitFunction;
@@
-216,7
+223,14
@@
typedef struct _CSR_SERVER_DLL
ULONG HighestApiSupported;
PCSR_API_ROUTINE *DispatchTable;
PBOOLEAN ValidTable; // Table of booleans which describe whether or not a server function call is valid when it is called via CsrCallServerFromServer.
ULONG HighestApiSupported;
PCSR_API_ROUTINE *DispatchTable;
PBOOLEAN ValidTable; // Table of booleans which describe whether or not a server function call is valid when it is called via CsrCallServerFromServer.
+/*
+ * On Windows Server 2003, CSR Servers contain
+ * the API Names Table only in Debug Builds.
+ */
+#ifdef CSR_DBG
PCHAR *NameTable;
PCHAR *NameTable;
+#endif
+
ULONG SizeOfProcessData;
PCSR_CONNECT_CALLBACK ConnectCallback;
PCSR_DISCONNECT_CALLBACK DisconnectCallback;
ULONG SizeOfProcessData;
PCSR_CONNECT_CALLBACK ConnectCallback;
PCSR_DISCONNECT_CALLBACK DisconnectCallback;
@@
-226,7
+240,13
@@
typedef struct _CSR_SERVER_DLL
PCSR_SHUTDOWNPROCESS_CALLBACK ShutdownProcessCallback;
ULONG Unknown2[3];
} CSR_SERVER_DLL, *PCSR_SERVER_DLL;
PCSR_SHUTDOWNPROCESS_CALLBACK ShutdownProcessCallback;
ULONG Unknown2[3];
} CSR_SERVER_DLL, *PCSR_SERVER_DLL;
-C_ASSERT(FIELD_OFFSET(CSR_SERVER_DLL, SharedSection) == 0x3C);
+#ifndef _WIN64
+ #ifdef CSR_DBG
+ C_ASSERT(FIELD_OFFSET(CSR_SERVER_DLL, SharedSection) == 0x3C);
+ #else
+ C_ASSERT(FIELD_OFFSET(CSR_SERVER_DLL, SharedSection) == 0x38);
+ #endif
+#endif
typedef
NTSTATUS
typedef
NTSTATUS
@@
-285,8
+305,7
@@
CsrCreateWait(IN PLIST_ENTRY WaitList,
IN CSR_WAIT_FUNCTION WaitFunction,
IN PCSR_THREAD CsrWaitThread,
IN OUT PCSR_API_MESSAGE WaitApiMessage,
IN CSR_WAIT_FUNCTION WaitFunction,
IN PCSR_THREAD CsrWaitThread,
IN OUT PCSR_API_MESSAGE WaitApiMessage,
- IN PVOID WaitContext,
- IN PLIST_ENTRY UserWaitList OPTIONAL);
+ IN PVOID WaitContext);
NTSTATUS
NTAPI
NTSTATUS
NTAPI
@@
-343,13
+362,13
@@
CsrLockThreadByClientId(IN HANDLE Tid,
VOID
NTAPI
VOID
NTAPI
-CsrMoveSatisfiedWait(IN PLIST_ENTRY
NewEntry
,
+CsrMoveSatisfiedWait(IN PLIST_ENTRY
DestinationList
,
IN PLIST_ENTRY WaitList);
BOOLEAN
NTAPI
CsrNotifyWait(IN PLIST_ENTRY WaitList,
IN PLIST_ENTRY WaitList);
BOOLEAN
NTAPI
CsrNotifyWait(IN PLIST_ENTRY WaitList,
- IN
ULONG WaitType
,
+ IN
BOOLEAN NotifyAll
,
IN PVOID WaitArgument1,
IN PVOID WaitArgument2);
IN PVOID WaitArgument1,
IN PVOID WaitArgument2);