xref: /reactos/subsystems/csr/csrsrv/srv.h (revision 83e13630)
1 /*
2  * COPYRIGHT:       See COPYING in the top level directory
3  * PROJECT:         ReactOS Client/Server Runtime SubSystem
4  * FILE:            subsystems/win32/csrsrv/srv.h
5  * PURPOSE:         Main header - Definitions
6  * PROGRAMMERS:     Alex Ionescu (alex@relsoft.net)
7  *                  ReactOS Portable Systems Group
8  */
9 
10 #ifndef _SRV_H
11 #define _SRV_H
12 
13 /* PSDK/NDK Headers */
14 #include <stdio.h>
15 #define WIN32_NO_STATUS
16 #include <windef.h>
17 #include <winbase.h>
18 #define NTOS_MODE_USER
19 #include <ndk/setypes.h>
20 #include <ndk/sefuncs.h>
21 #include <ndk/exfuncs.h>
22 #include <ndk/obfuncs.h>
23 #include <ndk/lpcfuncs.h>
24 #include <ndk/umfuncs.h>
25 #include <ndk/psfuncs.h>
26 #include <ndk/rtlfuncs.h>
27 
28 /* CSR Header */
29 #include <csr/csrsrv.h>
30 
31 /* PSEH for SEH Support */
32 #include <pseh/pseh2.h>
33 
34 /* Subsystem Manager Header */
35 #include <sm/smmsg.h>
36 
37 /* Internal CSRSS Header */
38 #include "api.h"
39 
40 /* Defines */
41 #define SM_REG_KEY \
42     L"\\Registry\\Machine\\System\\CurrentControlSet\\Control\\Session Manager"
43 
44 #define SESSION_ROOT        L"\\Sessions"
45 #define GLOBAL_ROOT         L"\\GLOBAL??"
46 #define SYMLINK_NAME        L"SymbolicLink"
47 #define SB_PORT_NAME        L"SbApiPort"
48 #define CSR_PORT_NAME       L"ApiPort"
49 #define UNICODE_PATH_SEP    L"\\"
50 
51 #define ROUND_UP(n, align) ROUND_DOWN(((ULONG)n) + (align) - 1, (align))
52 #define ROUND_DOWN(n, align) (((ULONG)n) & ~((align) - 1l))
53 #define InterlockedIncrementUL(Value) _InterlockedIncrement((PLONG)Value)
54 #define InterlockedDecrementUL(Value) _InterlockedDecrement((PLONG)Value)
55 
56 #endif /* _SRV_H */
57