SM & SMDLL definitions
[reactos.git] / reactos / include / sm / helper.h
1 #ifndef _SM_HELPER_H
2
3 /*** DATA TYPES ******************************************************/
4
5 #define SM_SB_NAME_MAX_LENGTH 120
6
7 #pragma pack(push,4)
8
9 /* SmConnectApiPort */
10 typedef struct _SM_CONNECT_DATA
11 {
12 ULONG Subsystem;
13 WCHAR SbName [SM_SB_NAME_MAX_LENGTH];
14
15 } SM_CONNECT_DATA, *PSM_CONNECT_DATA;
16
17 /* SmpConnectSbApiPort */
18 typedef struct _SB_CONNECT_DATA
19 {
20 ULONG SmApiMax;
21 } SB_CONNECT_DATA, *PSB_CONNECT_DATA;
22
23 #pragma pack(pop)
24
25
26 /*** PROTOTYPES ******************************************************/
27
28
29 /* smdll/connect.c */
30 NTSTATUS STDCALL
31 SmConnectApiPort (IN PUNICODE_STRING pSbApiPortName OPTIONAL,
32 IN HANDLE hSbApiPort OPTIONAL,
33 IN DWORD dwSubsystem OPTIONAL, /* pe.h */
34 IN OUT PHANDLE phSmApiPort);
35 /* smdll/compses.c */
36 NTSTATUS STDCALL
37 SmCompleteSession (IN HANDLE hSmApiPort,
38 IN HANDLE hSbApiPort,
39 IN HANDLE hApiPort);
40 /* smdll/execpgm.c */
41 NTSTATUS STDCALL
42 SmExecuteProgram (IN HANDLE hSmApiPort,
43 IN PUNICODE_STRING Pgm
44 );
45
46 #endif /* ndef _SM_HELPER_H */