1 /* 2 * COPYRIGHT: See COPYING in the top level directory 3 * PROJECT: ReactOS Base API Server DLL 4 * FILE: subsystems/win/basesrv/basesrv.h 5 * PURPOSE: Main header - Definitions 6 * PROGRAMMERS: Hermes Belusca-Maito (hermes.belusca@sfr.fr) 7 */ 8 9 #ifndef __BASESRV_H__ 10 #define __BASESRV_H__ 11 12 /* PSDK/NDK Headers */ 13 #include <stdio.h> 14 #define WIN32_NO_STATUS 15 #define _INC_WINDOWS 16 #define COM_NO_WINDOWS_H 17 #include <windef.h> 18 #include <winbase.h> 19 #define NTOS_MODE_USER 20 #include <ndk/rtlfuncs.h> 21 #include <ndk/obfuncs.h> 22 #include <ndk/psfuncs.h> 23 #include <ndk/exfuncs.h> 24 #include <ndk/umfuncs.h> 25 #include <ndk/cmfuncs.h> 26 27 /* PSEH for SEH Support */ 28 #include <pseh/pseh2.h> 29 30 /* CSRSS Header */ 31 #include <csr/csrsrv.h> 32 33 /* BASE Headers */ 34 #include <win/basemsg.h> 35 #include <win/base.h> 36 37 typedef struct _BASESRV_KERNEL_IMPORTS 38 { 39 PCHAR FunctionName; 40 PVOID* FunctionPointer; 41 } BASESRV_KERNEL_IMPORTS, *PBASESRV_KERNEL_IMPORTS; 42 43 /* FIXME: BASENLS.H */ 44 typedef NTSTATUS (WINAPI *POPEN_DATA_FILE)(HANDLE hFile, 45 PWCHAR FileName); 46 47 typedef BOOL (WINAPI *PGET_CP_FILE_NAME_FROM_REGISTRY)(UINT CodePage, 48 LPWSTR FileName, 49 ULONG FileNameSize); 50 51 typedef BOOL (WINAPI *PGET_NLS_SECTION_NAME)(UINT CodePage, 52 UINT Base, 53 ULONG Unknown, 54 LPWSTR BaseName, 55 LPWSTR Result, 56 ULONG ResultSize); 57 58 typedef BOOL (WINAPI *PVALIDATE_LOCALE)(IN ULONG LocaleId); 59 typedef NTSTATUS (WINAPI *PCREATE_NLS_SECURTY_DESCRIPTOR)(IN PVOID Buffer, 60 IN ULONG BufferSize, 61 IN ULONG AceType); 62 63 /* Globals */ 64 extern HANDLE BaseSrvHeap; 65 extern HANDLE BaseSrvSharedHeap; 66 extern PBASE_STATIC_SERVER_DATA BaseStaticServerData; 67 extern ULONG SessionId; 68 69 #endif /* __BASESRV_H__ */ 70