2 * daemon-messages.h: Communications to and from the handle daemon
5 * Dick Porter (dick@ximian.com)
7 * (C) 2002 Ximian, Inc.
10 #ifndef _WAPI_DAEMON_MESSAGES_H_
11 #define _WAPI_DAEMON_MESSAGES_H_
13 #include <mono/io-layer/wapi-private.h>
16 WapiHandleRequestType_Error
,
17 WapiHandleRequestType_New
,
18 WapiHandleRequestType_Open
,
19 WapiHandleRequestType_Close
,
20 WapiHandleRequestType_Scratch
,
21 WapiHandleRequestType_ScratchFree
,
22 WapiHandleRequestType_ProcessFork
,
23 WapiHandleRequestType_ProcessKill
,
24 WapiHandleRequestType_GetOrSetShare
,
25 WapiHandleRequestType_SetShare
26 } WapiHandleRequestType
;
31 } WapiHandleRequest_New
;
36 } WapiHandleRequest_Open
;
41 } WapiHandleRequest_Close
;
46 } WapiHandleRequest_Scratch
;
51 } WapiHandleRequest_ScratchFree
;
59 guint32 stdout_handle
;
60 guint32 stderr_handle
;
63 } WapiHandleRequest_ProcessFork
;
68 } WapiHandleRequest_ProcessKill
;
74 guint32 new_sharemode
;
76 } WapiHandleRequest_GetOrSetShare
;
84 } WapiHandleRequest_SetShare
;
88 WapiHandleRequestType type
;
91 WapiHandleRequest_New
new;
92 WapiHandleRequest_Open open
;
93 WapiHandleRequest_Close close
;
94 WapiHandleRequest_Scratch scratch
;
95 WapiHandleRequest_ScratchFree scratch_free
;
96 WapiHandleRequest_ProcessFork process_fork
;
97 WapiHandleRequest_ProcessKill process_kill
;
98 WapiHandleRequest_GetOrSetShare get_or_set_share
;
99 WapiHandleRequest_SetShare set_share
;
104 WapiHandleResponseType_Error
,
105 WapiHandleResponseType_New
,
106 WapiHandleResponseType_Open
,
107 WapiHandleResponseType_Close
,
108 WapiHandleResponseType_Scratch
,
109 WapiHandleResponseType_ScratchFree
,
110 WapiHandleResponseType_ProcessFork
,
111 WapiHandleResponseType_ProcessKill
,
112 WapiHandleResponseType_GetOrSetShare
,
113 WapiHandleResponseType_SetShare
114 } WapiHandleResponseType
;
119 } WapiHandleResponse_Error
;
125 } WapiHandleResponse_New
;
131 } WapiHandleResponse_Open
;
136 } WapiHandleResponse_Close
;
142 } WapiHandleResponse_Scratch
;
147 } WapiHandleResponse_ScratchFree
;
151 guint32 process_handle
;
152 guint32 thread_handle
;
155 } WapiHandleResponse_ProcessFork
;
160 } WapiHandleResponse_ProcessKill
;
167 } WapiHandleResponse_GetOrSetShare
;
172 } WapiHandleResponse_SetShare
;
176 WapiHandleResponseType type
;
179 WapiHandleResponse_Error error
;
180 WapiHandleResponse_New
new;
181 WapiHandleResponse_Open open
;
182 WapiHandleResponse_Close close
;
183 WapiHandleResponse_Scratch scratch
;
184 WapiHandleResponse_ScratchFree scratch_free
;
185 WapiHandleResponse_ProcessFork process_fork
;
186 WapiHandleResponse_ProcessKill process_kill
;
187 WapiHandleResponse_GetOrSetShare get_or_set_share
;
188 WapiHandleResponse_SetShare set_share
;
190 } WapiHandleResponse
;
192 extern void _wapi_daemon_request_response (int fd
, WapiHandleRequest
*req
,
193 WapiHandleResponse
*resp
);
194 extern void _wapi_daemon_request_response_with_fds (int fd
,
195 WapiHandleRequest
*req
,
196 WapiHandleResponse
*resp
,
197 int in_fd
, int out_fd
,
199 extern int _wapi_daemon_request (int fd
, WapiHandleRequest
*req
, int *fds
,
201 extern int _wapi_daemon_response (int fd
, WapiHandleResponse
*resp
);
203 #endif /* _WAPI_DAEMON_MESSAGES_H_ */