1516860fd330c45e823325336108a1bcbf7565b0
[reactos.git] / include / reactos / subsys / csr / csr.h
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS Client/Server Runtime SubSystem
4 * FILE: include/reactos/subsys/csr/csr.h
5 * PURPOSE: Public definitions for CSR Clients
6 * PROGRAMMERS: Alex Ionescu (alex@relsoft.net)
7 * Hermes Belusca-Maito (hermes.belusca@sfr.fr)
8 */
9
10 #ifndef _CSR_H
11 #define _CSR_H
12
13 #include "csrmsg.h"
14
15 /*
16 BOOLEAN
17 NTAPI
18 CsrCaptureArguments(IN PCSR_THREAD CsrThread,
19 IN PCSR_API_MESSAGE ApiMessage);
20
21 VOID
22 NTAPI
23 CsrReleaseCapturedArguments(IN PCSR_API_MESSAGE ApiMessage);
24 */
25
26 NTSTATUS
27 NTAPI
28 CsrClientConnectToServer(IN PWSTR ObjectDirectory,
29 IN ULONG ServerId,
30 IN PVOID ConnectionInfo,
31 IN OUT PULONG ConnectionInfoSize,
32 OUT PBOOLEAN ServerToServerCall);
33
34 NTSTATUS
35 NTAPI
36 CsrClientCallServer(IN OUT PCSR_API_MESSAGE ApiMessage,
37 IN OUT PCSR_CAPTURE_BUFFER CaptureBuffer OPTIONAL,
38 IN CSR_API_NUMBER ApiNumber,
39 IN ULONG DataLength);
40
41 PCSR_CAPTURE_BUFFER
42 NTAPI
43 CsrAllocateCaptureBuffer(IN ULONG ArgumentCount,
44 IN ULONG BufferSize);
45
46 ULONG
47 NTAPI
48 CsrAllocateMessagePointer(IN OUT PCSR_CAPTURE_BUFFER CaptureBuffer,
49 IN ULONG MessageLength,
50 OUT PVOID *CapturedData);
51
52 VOID
53 NTAPI
54 CsrCaptureMessageBuffer(IN OUT PCSR_CAPTURE_BUFFER CaptureBuffer,
55 IN PVOID MessageBuffer OPTIONAL,
56 IN ULONG MessageLength,
57 OUT PVOID *CapturedData);
58
59 VOID
60 NTAPI
61 CsrCaptureMessageString(IN OUT PCSR_CAPTURE_BUFFER CaptureBuffer,
62 IN LPSTR String OPTIONAL,
63 IN ULONG StringLength,
64 IN ULONG MaximumLength,
65 OUT PANSI_STRING CapturedString);
66
67 VOID
68 NTAPI
69 CsrFreeCaptureBuffer(IN PCSR_CAPTURE_BUFFER CaptureBuffer);
70
71 PLARGE_INTEGER
72 NTAPI
73 CsrCaptureTimeout(IN ULONG Milliseconds,
74 OUT PLARGE_INTEGER Timeout);
75
76 VOID
77 NTAPI
78 CsrProbeForRead(IN PVOID Address,
79 IN ULONG Length,
80 IN ULONG Alignment);
81
82 VOID
83 NTAPI
84 CsrProbeForWrite(IN PVOID Address,
85 IN ULONG Length,
86 IN ULONG Alignment);
87
88 NTSTATUS
89 NTAPI
90 CsrIdentifyAlertableThread(VOID);
91
92 HANDLE
93 NTAPI
94 CsrGetProcessId(VOID);
95
96 NTSTATUS
97 NTAPI
98 CsrNewThread(VOID);
99
100 NTSTATUS
101 NTAPI
102 CsrSetPriorityClass(IN HANDLE Process,
103 IN OUT PULONG PriorityClass);
104
105 #endif // _CSR_H
106
107 /* EOF */