1#include "../librpc/gen_ndr/ndr_svcctl.h"
2#ifndef __CLI_SVCCTL__
3#define __CLI_SVCCTL__
4struct tevent_req *rpccli_svcctl_CloseServiceHandle_send(TALLOC_CTX *mem_ctx,
5							 struct tevent_context *ev,
6							 struct rpc_pipe_client *cli,
7							 struct policy_handle *_handle /* [in,out] [ref] */);
8NTSTATUS rpccli_svcctl_CloseServiceHandle_recv(struct tevent_req *req,
9					       TALLOC_CTX *mem_ctx,
10					       WERROR *result);
11NTSTATUS rpccli_svcctl_CloseServiceHandle(struct rpc_pipe_client *cli,
12					  TALLOC_CTX *mem_ctx,
13					  struct policy_handle *handle /* [in,out] [ref] */,
14					  WERROR *werror);
15struct tevent_req *rpccli_svcctl_ControlService_send(TALLOC_CTX *mem_ctx,
16						     struct tevent_context *ev,
17						     struct rpc_pipe_client *cli,
18						     struct policy_handle *_handle /* [in] [ref] */,
19						     enum SERVICE_CONTROL _control /* [in]  */,
20						     struct SERVICE_STATUS *_service_status /* [out] [ref] */);
21NTSTATUS rpccli_svcctl_ControlService_recv(struct tevent_req *req,
22					   TALLOC_CTX *mem_ctx,
23					   WERROR *result);
24NTSTATUS rpccli_svcctl_ControlService(struct rpc_pipe_client *cli,
25				      TALLOC_CTX *mem_ctx,
26				      struct policy_handle *handle /* [in] [ref] */,
27				      enum SERVICE_CONTROL control /* [in]  */,
28				      struct SERVICE_STATUS *service_status /* [out] [ref] */,
29				      WERROR *werror);
30struct tevent_req *rpccli_svcctl_DeleteService_send(TALLOC_CTX *mem_ctx,
31						    struct tevent_context *ev,
32						    struct rpc_pipe_client *cli,
33						    struct policy_handle *_handle /* [in] [ref] */);
34NTSTATUS rpccli_svcctl_DeleteService_recv(struct tevent_req *req,
35					  TALLOC_CTX *mem_ctx,
36					  WERROR *result);
37NTSTATUS rpccli_svcctl_DeleteService(struct rpc_pipe_client *cli,
38				     TALLOC_CTX *mem_ctx,
39				     struct policy_handle *handle /* [in] [ref] */,
40				     WERROR *werror);
41struct tevent_req *rpccli_svcctl_LockServiceDatabase_send(TALLOC_CTX *mem_ctx,
42							  struct tevent_context *ev,
43							  struct rpc_pipe_client *cli,
44							  struct policy_handle *_handle /* [in] [ref] */,
45							  struct policy_handle *_lock /* [out] [ref] */);
46NTSTATUS rpccli_svcctl_LockServiceDatabase_recv(struct tevent_req *req,
47						TALLOC_CTX *mem_ctx,
48						WERROR *result);
49NTSTATUS rpccli_svcctl_LockServiceDatabase(struct rpc_pipe_client *cli,
50					   TALLOC_CTX *mem_ctx,
51					   struct policy_handle *handle /* [in] [ref] */,
52					   struct policy_handle *lock /* [out] [ref] */,
53					   WERROR *werror);
54struct tevent_req *rpccli_svcctl_QueryServiceObjectSecurity_send(TALLOC_CTX *mem_ctx,
55								 struct tevent_context *ev,
56								 struct rpc_pipe_client *cli,
57								 struct policy_handle *_handle /* [in] [ref] */,
58								 uint32_t _security_flags /* [in]  */,
59								 uint8_t *_buffer /* [out] [ref,size_is(offered)] */,
60								 uint32_t _offered /* [in] [range(0,0x40000)] */,
61								 uint32_t *_needed /* [out] [ref,range(0,0x40000)] */);
62NTSTATUS rpccli_svcctl_QueryServiceObjectSecurity_recv(struct tevent_req *req,
63						       TALLOC_CTX *mem_ctx,
64						       WERROR *result);
65NTSTATUS rpccli_svcctl_QueryServiceObjectSecurity(struct rpc_pipe_client *cli,
66						  TALLOC_CTX *mem_ctx,
67						  struct policy_handle *handle /* [in] [ref] */,
68						  uint32_t security_flags /* [in]  */,
69						  uint8_t *buffer /* [out] [ref,size_is(offered)] */,
70						  uint32_t offered /* [in] [range(0,0x40000)] */,
71						  uint32_t *needed /* [out] [ref,range(0,0x40000)] */,
72						  WERROR *werror);
73struct tevent_req *rpccli_svcctl_SetServiceObjectSecurity_send(TALLOC_CTX *mem_ctx,
74							       struct tevent_context *ev,
75							       struct rpc_pipe_client *cli,
76							       struct policy_handle *_handle /* [in] [ref] */,
77							       uint32_t _security_flags /* [in]  */,
78							       uint8_t *_buffer /* [in] [ref,size_is(offered)] */,
79							       uint32_t _offered /* [in]  */);
80NTSTATUS rpccli_svcctl_SetServiceObjectSecurity_recv(struct tevent_req *req,
81						     TALLOC_CTX *mem_ctx,
82						     WERROR *result);
83NTSTATUS rpccli_svcctl_SetServiceObjectSecurity(struct rpc_pipe_client *cli,
84						TALLOC_CTX *mem_ctx,
85						struct policy_handle *handle /* [in] [ref] */,
86						uint32_t security_flags /* [in]  */,
87						uint8_t *buffer /* [in] [ref,size_is(offered)] */,
88						uint32_t offered /* [in]  */,
89						WERROR *werror);
90struct tevent_req *rpccli_svcctl_QueryServiceStatus_send(TALLOC_CTX *mem_ctx,
91							 struct tevent_context *ev,
92							 struct rpc_pipe_client *cli,
93							 struct policy_handle *_handle /* [in] [ref] */,
94							 struct SERVICE_STATUS *_service_status /* [out] [ref] */);
95NTSTATUS rpccli_svcctl_QueryServiceStatus_recv(struct tevent_req *req,
96					       TALLOC_CTX *mem_ctx,
97					       WERROR *result);
98NTSTATUS rpccli_svcctl_QueryServiceStatus(struct rpc_pipe_client *cli,
99					  TALLOC_CTX *mem_ctx,
100					  struct policy_handle *handle /* [in] [ref] */,
101					  struct SERVICE_STATUS *service_status /* [out] [ref] */,
102					  WERROR *werror);
103struct tevent_req *rpccli_svcctl_SetServiceStatus_send(TALLOC_CTX *mem_ctx,
104						       struct tevent_context *ev,
105						       struct rpc_pipe_client *cli);
106NTSTATUS rpccli_svcctl_SetServiceStatus_recv(struct tevent_req *req,
107					     TALLOC_CTX *mem_ctx,
108					     WERROR *result);
109NTSTATUS rpccli_svcctl_SetServiceStatus(struct rpc_pipe_client *cli,
110					TALLOC_CTX *mem_ctx,
111					WERROR *werror);
112struct tevent_req *rpccli_svcctl_UnlockServiceDatabase_send(TALLOC_CTX *mem_ctx,
113							    struct tevent_context *ev,
114							    struct rpc_pipe_client *cli,
115							    struct policy_handle *_lock /* [in,out] [ref] */);
116NTSTATUS rpccli_svcctl_UnlockServiceDatabase_recv(struct tevent_req *req,
117						  TALLOC_CTX *mem_ctx,
118						  WERROR *result);
119NTSTATUS rpccli_svcctl_UnlockServiceDatabase(struct rpc_pipe_client *cli,
120					     TALLOC_CTX *mem_ctx,
121					     struct policy_handle *lock /* [in,out] [ref] */,
122					     WERROR *werror);
123struct tevent_req *rpccli_svcctl_NotifyBootConfigStatus_send(TALLOC_CTX *mem_ctx,
124							     struct tevent_context *ev,
125							     struct rpc_pipe_client *cli);
126NTSTATUS rpccli_svcctl_NotifyBootConfigStatus_recv(struct tevent_req *req,
127						   TALLOC_CTX *mem_ctx,
128						   WERROR *result);
129NTSTATUS rpccli_svcctl_NotifyBootConfigStatus(struct rpc_pipe_client *cli,
130					      TALLOC_CTX *mem_ctx,
131					      WERROR *werror);
132struct tevent_req *rpccli_svcctl_SCSetServiceBitsW_send(TALLOC_CTX *mem_ctx,
133							struct tevent_context *ev,
134							struct rpc_pipe_client *cli,
135							struct policy_handle *_handle /* [in] [ref] */,
136							uint32_t _bits /* [in]  */,
137							uint32_t _bitson /* [in]  */,
138							uint32_t _immediate /* [in]  */);
139NTSTATUS rpccli_svcctl_SCSetServiceBitsW_recv(struct tevent_req *req,
140					      TALLOC_CTX *mem_ctx,
141					      WERROR *result);
142NTSTATUS rpccli_svcctl_SCSetServiceBitsW(struct rpc_pipe_client *cli,
143					 TALLOC_CTX *mem_ctx,
144					 struct policy_handle *handle /* [in] [ref] */,
145					 uint32_t bits /* [in]  */,
146					 uint32_t bitson /* [in]  */,
147					 uint32_t immediate /* [in]  */,
148					 WERROR *werror);
149struct tevent_req *rpccli_svcctl_ChangeServiceConfigW_send(TALLOC_CTX *mem_ctx,
150							   struct tevent_context *ev,
151							   struct rpc_pipe_client *cli,
152							   struct policy_handle *_handle /* [in] [ref] */,
153							   uint32_t _type /* [in]  */,
154							   enum svcctl_StartType _start_type /* [in]  */,
155							   enum svcctl_ErrorControl _error_control /* [in]  */,
156							   const char *_binary_path /* [in] [unique,charset(UTF16)] */,
157							   const char *_load_order_group /* [in] [unique,charset(UTF16)] */,
158							   uint32_t *_tag_id /* [out] [ref] */,
159							   const char *_dependencies /* [in] [unique,charset(UTF16)] */,
160							   const char *_service_start_name /* [in] [unique,charset(UTF16)] */,
161							   const char *_password /* [in] [unique,charset(UTF16)] */,
162							   const char *_display_name /* [in] [unique,charset(UTF16)] */);
163NTSTATUS rpccli_svcctl_ChangeServiceConfigW_recv(struct tevent_req *req,
164						 TALLOC_CTX *mem_ctx,
165						 WERROR *result);
166NTSTATUS rpccli_svcctl_ChangeServiceConfigW(struct rpc_pipe_client *cli,
167					    TALLOC_CTX *mem_ctx,
168					    struct policy_handle *handle /* [in] [ref] */,
169					    uint32_t type /* [in]  */,
170					    enum svcctl_StartType start_type /* [in]  */,
171					    enum svcctl_ErrorControl error_control /* [in]  */,
172					    const char *binary_path /* [in] [unique,charset(UTF16)] */,
173					    const char *load_order_group /* [in] [unique,charset(UTF16)] */,
174					    uint32_t *tag_id /* [out] [ref] */,
175					    const char *dependencies /* [in] [unique,charset(UTF16)] */,
176					    const char *service_start_name /* [in] [unique,charset(UTF16)] */,
177					    const char *password /* [in] [unique,charset(UTF16)] */,
178					    const char *display_name /* [in] [unique,charset(UTF16)] */,
179					    WERROR *werror);
180struct tevent_req *rpccli_svcctl_CreateServiceW_send(TALLOC_CTX *mem_ctx,
181						     struct tevent_context *ev,
182						     struct rpc_pipe_client *cli,
183						     struct policy_handle *_scmanager_handle /* [in] [ref] */,
184						     const char *_ServiceName /* [in] [charset(UTF16)] */,
185						     const char *_DisplayName /* [in] [unique,charset(UTF16)] */,
186						     uint32_t _desired_access /* [in]  */,
187						     uint32_t _type /* [in]  */,
188						     enum svcctl_StartType _start_type /* [in]  */,
189						     enum svcctl_ErrorControl _error_control /* [in]  */,
190						     const char *_binary_path /* [in] [charset(UTF16)] */,
191						     const char *_LoadOrderGroupKey /* [in] [unique,charset(UTF16)] */,
192						     uint32_t *_TagId /* [in,out] [unique] */,
193						     uint8_t *_dependencies /* [in] [unique,size_is(dependencies_size)] */,
194						     uint32_t _dependencies_size /* [in]  */,
195						     const char *_service_start_name /* [in] [unique,charset(UTF16)] */,
196						     uint8_t *_password /* [in] [unique,size_is(password_size)] */,
197						     uint32_t _password_size /* [in]  */,
198						     struct policy_handle *_handle /* [out] [ref] */);
199NTSTATUS rpccli_svcctl_CreateServiceW_recv(struct tevent_req *req,
200					   TALLOC_CTX *mem_ctx,
201					   WERROR *result);
202NTSTATUS rpccli_svcctl_CreateServiceW(struct rpc_pipe_client *cli,
203				      TALLOC_CTX *mem_ctx,
204				      struct policy_handle *scmanager_handle /* [in] [ref] */,
205				      const char *ServiceName /* [in] [charset(UTF16)] */,
206				      const char *DisplayName /* [in] [unique,charset(UTF16)] */,
207				      uint32_t desired_access /* [in]  */,
208				      uint32_t type /* [in]  */,
209				      enum svcctl_StartType start_type /* [in]  */,
210				      enum svcctl_ErrorControl error_control /* [in]  */,
211				      const char *binary_path /* [in] [charset(UTF16)] */,
212				      const char *LoadOrderGroupKey /* [in] [unique,charset(UTF16)] */,
213				      uint32_t *TagId /* [in,out] [unique] */,
214				      uint8_t *dependencies /* [in] [unique,size_is(dependencies_size)] */,
215				      uint32_t dependencies_size /* [in]  */,
216				      const char *service_start_name /* [in] [unique,charset(UTF16)] */,
217				      uint8_t *password /* [in] [unique,size_is(password_size)] */,
218				      uint32_t password_size /* [in]  */,
219				      struct policy_handle *handle /* [out] [ref] */,
220				      WERROR *werror);
221struct tevent_req *rpccli_svcctl_EnumDependentServicesW_send(TALLOC_CTX *mem_ctx,
222							     struct tevent_context *ev,
223							     struct rpc_pipe_client *cli,
224							     struct policy_handle *_service /* [in] [ref] */,
225							     enum svcctl_ServiceState _state /* [in]  */,
226							     uint8_t *_service_status /* [out] [ref,size_is(offered)] */,
227							     uint32_t _offered /* [in] [range(0,0x40000)] */,
228							     uint32_t *_needed /* [out] [ref,range(0,0x40000)] */,
229							     uint32_t *_services_returned /* [out] [ref,range(0,0x40000)] */);
230NTSTATUS rpccli_svcctl_EnumDependentServicesW_recv(struct tevent_req *req,
231						   TALLOC_CTX *mem_ctx,
232						   WERROR *result);
233NTSTATUS rpccli_svcctl_EnumDependentServicesW(struct rpc_pipe_client *cli,
234					      TALLOC_CTX *mem_ctx,
235					      struct policy_handle *service /* [in] [ref] */,
236					      enum svcctl_ServiceState state /* [in]  */,
237					      uint8_t *service_status /* [out] [ref,size_is(offered)] */,
238					      uint32_t offered /* [in] [range(0,0x40000)] */,
239					      uint32_t *needed /* [out] [ref,range(0,0x40000)] */,
240					      uint32_t *services_returned /* [out] [ref,range(0,0x40000)] */,
241					      WERROR *werror);
242struct tevent_req *rpccli_svcctl_EnumServicesStatusW_send(TALLOC_CTX *mem_ctx,
243							  struct tevent_context *ev,
244							  struct rpc_pipe_client *cli,
245							  struct policy_handle *_handle /* [in] [ref] */,
246							  uint32_t _type /* [in]  */,
247							  enum svcctl_ServiceState _state /* [in]  */,
248							  uint8_t *_service /* [out] [ref,size_is(offered)] */,
249							  uint32_t _offered /* [in] [range(0,0x40000)] */,
250							  uint32_t *_needed /* [out] [ref,range(0,0x40000)] */,
251							  uint32_t *_services_returned /* [out] [ref,range(0,0x40000)] */,
252							  uint32_t *_resume_handle /* [in,out] [unique] */);
253NTSTATUS rpccli_svcctl_EnumServicesStatusW_recv(struct tevent_req *req,
254						TALLOC_CTX *mem_ctx,
255						WERROR *result);
256NTSTATUS rpccli_svcctl_EnumServicesStatusW(struct rpc_pipe_client *cli,
257					   TALLOC_CTX *mem_ctx,
258					   struct policy_handle *handle /* [in] [ref] */,
259					   uint32_t type /* [in]  */,
260					   enum svcctl_ServiceState state /* [in]  */,
261					   uint8_t *service /* [out] [ref,size_is(offered)] */,
262					   uint32_t offered /* [in] [range(0,0x40000)] */,
263					   uint32_t *needed /* [out] [ref,range(0,0x40000)] */,
264					   uint32_t *services_returned /* [out] [ref,range(0,0x40000)] */,
265					   uint32_t *resume_handle /* [in,out] [unique] */,
266					   WERROR *werror);
267struct tevent_req *rpccli_svcctl_OpenSCManagerW_send(TALLOC_CTX *mem_ctx,
268						     struct tevent_context *ev,
269						     struct rpc_pipe_client *cli,
270						     const char *_MachineName /* [in] [unique,charset(UTF16)] */,
271						     const char *_DatabaseName /* [in] [unique,charset(UTF16)] */,
272						     uint32_t _access_mask /* [in]  */,
273						     struct policy_handle *_handle /* [out] [ref] */);
274NTSTATUS rpccli_svcctl_OpenSCManagerW_recv(struct tevent_req *req,
275					   TALLOC_CTX *mem_ctx,
276					   WERROR *result);
277NTSTATUS rpccli_svcctl_OpenSCManagerW(struct rpc_pipe_client *cli,
278				      TALLOC_CTX *mem_ctx,
279				      const char *MachineName /* [in] [unique,charset(UTF16)] */,
280				      const char *DatabaseName /* [in] [unique,charset(UTF16)] */,
281				      uint32_t access_mask /* [in]  */,
282				      struct policy_handle *handle /* [out] [ref] */,
283				      WERROR *werror);
284struct tevent_req *rpccli_svcctl_OpenServiceW_send(TALLOC_CTX *mem_ctx,
285						   struct tevent_context *ev,
286						   struct rpc_pipe_client *cli,
287						   struct policy_handle *_scmanager_handle /* [in] [ref] */,
288						   const char *_ServiceName /* [in] [charset(UTF16)] */,
289						   uint32_t _access_mask /* [in]  */,
290						   struct policy_handle *_handle /* [out] [ref] */);
291NTSTATUS rpccli_svcctl_OpenServiceW_recv(struct tevent_req *req,
292					 TALLOC_CTX *mem_ctx,
293					 WERROR *result);
294NTSTATUS rpccli_svcctl_OpenServiceW(struct rpc_pipe_client *cli,
295				    TALLOC_CTX *mem_ctx,
296				    struct policy_handle *scmanager_handle /* [in] [ref] */,
297				    const char *ServiceName /* [in] [charset(UTF16)] */,
298				    uint32_t access_mask /* [in]  */,
299				    struct policy_handle *handle /* [out] [ref] */,
300				    WERROR *werror);
301struct tevent_req *rpccli_svcctl_QueryServiceConfigW_send(TALLOC_CTX *mem_ctx,
302							  struct tevent_context *ev,
303							  struct rpc_pipe_client *cli,
304							  struct policy_handle *_handle /* [in] [ref] */,
305							  struct QUERY_SERVICE_CONFIG *_query /* [out] [ref] */,
306							  uint32_t _offered /* [in] [range(0,8192)] */,
307							  uint32_t *_needed /* [out] [ref,range(0,8192)] */);
308NTSTATUS rpccli_svcctl_QueryServiceConfigW_recv(struct tevent_req *req,
309						TALLOC_CTX *mem_ctx,
310						WERROR *result);
311NTSTATUS rpccli_svcctl_QueryServiceConfigW(struct rpc_pipe_client *cli,
312					   TALLOC_CTX *mem_ctx,
313					   struct policy_handle *handle /* [in] [ref] */,
314					   struct QUERY_SERVICE_CONFIG *query /* [out] [ref] */,
315					   uint32_t offered /* [in] [range(0,8192)] */,
316					   uint32_t *needed /* [out] [ref,range(0,8192)] */,
317					   WERROR *werror);
318struct tevent_req *rpccli_svcctl_QueryServiceLockStatusW_send(TALLOC_CTX *mem_ctx,
319							      struct tevent_context *ev,
320							      struct rpc_pipe_client *cli,
321							      struct policy_handle *_handle /* [in] [ref] */,
322							      uint32_t _offered /* [in]  */,
323							      struct SERVICE_LOCK_STATUS *_lock_status /* [out] [ref] */,
324							      uint32_t *_needed /* [out] [ref] */);
325NTSTATUS rpccli_svcctl_QueryServiceLockStatusW_recv(struct tevent_req *req,
326						    TALLOC_CTX *mem_ctx,
327						    WERROR *result);
328NTSTATUS rpccli_svcctl_QueryServiceLockStatusW(struct rpc_pipe_client *cli,
329					       TALLOC_CTX *mem_ctx,
330					       struct policy_handle *handle /* [in] [ref] */,
331					       uint32_t offered /* [in]  */,
332					       struct SERVICE_LOCK_STATUS *lock_status /* [out] [ref] */,
333					       uint32_t *needed /* [out] [ref] */,
334					       WERROR *werror);
335struct tevent_req *rpccli_svcctl_StartServiceW_send(TALLOC_CTX *mem_ctx,
336						    struct tevent_context *ev,
337						    struct rpc_pipe_client *cli,
338						    struct policy_handle *_handle /* [in] [ref] */,
339						    uint32_t _NumArgs /* [in] [range(0,SC_MAX_ARGUMENTS)] */,
340						    struct svcctl_ArgumentString *_Arguments /* [in] [unique,size_is(NumArgs)] */);
341NTSTATUS rpccli_svcctl_StartServiceW_recv(struct tevent_req *req,
342					  TALLOC_CTX *mem_ctx,
343					  WERROR *result);
344NTSTATUS rpccli_svcctl_StartServiceW(struct rpc_pipe_client *cli,
345				     TALLOC_CTX *mem_ctx,
346				     struct policy_handle *handle /* [in] [ref] */,
347				     uint32_t NumArgs /* [in] [range(0,SC_MAX_ARGUMENTS)] */,
348				     struct svcctl_ArgumentString *Arguments /* [in] [unique,size_is(NumArgs)] */,
349				     WERROR *werror);
350struct tevent_req *rpccli_svcctl_GetServiceDisplayNameW_send(TALLOC_CTX *mem_ctx,
351							     struct tevent_context *ev,
352							     struct rpc_pipe_client *cli,
353							     struct policy_handle *_handle /* [in] [ref] */,
354							     const char *_service_name /* [in] [unique,charset(UTF16)] */,
355							     const char **_display_name /* [out] [ref,charset(UTF16)] */,
356							     uint32_t *_display_name_length /* [in,out] [unique] */);
357NTSTATUS rpccli_svcctl_GetServiceDisplayNameW_recv(struct tevent_req *req,
358						   TALLOC_CTX *mem_ctx,
359						   WERROR *result);
360NTSTATUS rpccli_svcctl_GetServiceDisplayNameW(struct rpc_pipe_client *cli,
361					      TALLOC_CTX *mem_ctx,
362					      struct policy_handle *handle /* [in] [ref] */,
363					      const char *service_name /* [in] [unique,charset(UTF16)] */,
364					      const char **display_name /* [out] [ref,charset(UTF16)] */,
365					      uint32_t *display_name_length /* [in,out] [unique] */,
366					      WERROR *werror);
367struct tevent_req *rpccli_svcctl_GetServiceKeyNameW_send(TALLOC_CTX *mem_ctx,
368							 struct tevent_context *ev,
369							 struct rpc_pipe_client *cli,
370							 struct policy_handle *_handle /* [in] [ref] */,
371							 const char *_service_name /* [in] [unique,charset(UTF16)] */,
372							 const char **_key_name /* [out] [ref,charset(UTF16)] */,
373							 uint32_t *_display_name_length /* [in,out] [unique] */);
374NTSTATUS rpccli_svcctl_GetServiceKeyNameW_recv(struct tevent_req *req,
375					       TALLOC_CTX *mem_ctx,
376					       WERROR *result);
377NTSTATUS rpccli_svcctl_GetServiceKeyNameW(struct rpc_pipe_client *cli,
378					  TALLOC_CTX *mem_ctx,
379					  struct policy_handle *handle /* [in] [ref] */,
380					  const char *service_name /* [in] [unique,charset(UTF16)] */,
381					  const char **key_name /* [out] [ref,charset(UTF16)] */,
382					  uint32_t *display_name_length /* [in,out] [unique] */,
383					  WERROR *werror);
384struct tevent_req *rpccli_svcctl_SCSetServiceBitsA_send(TALLOC_CTX *mem_ctx,
385							struct tevent_context *ev,
386							struct rpc_pipe_client *cli,
387							struct policy_handle *_handle /* [in] [ref] */,
388							uint32_t _bits /* [in]  */,
389							uint32_t _bitson /* [in]  */,
390							uint32_t _immediate /* [in]  */);
391NTSTATUS rpccli_svcctl_SCSetServiceBitsA_recv(struct tevent_req *req,
392					      TALLOC_CTX *mem_ctx,
393					      WERROR *result);
394NTSTATUS rpccli_svcctl_SCSetServiceBitsA(struct rpc_pipe_client *cli,
395					 TALLOC_CTX *mem_ctx,
396					 struct policy_handle *handle /* [in] [ref] */,
397					 uint32_t bits /* [in]  */,
398					 uint32_t bitson /* [in]  */,
399					 uint32_t immediate /* [in]  */,
400					 WERROR *werror);
401struct tevent_req *rpccli_svcctl_ChangeServiceConfigA_send(TALLOC_CTX *mem_ctx,
402							   struct tevent_context *ev,
403							   struct rpc_pipe_client *cli,
404							   struct policy_handle *_handle /* [in] [ref] */,
405							   uint32_t _type /* [in]  */,
406							   enum svcctl_StartType _start_type /* [in]  */,
407							   enum svcctl_ErrorControl _error_control /* [in]  */,
408							   const char *_binary_path /* [in] [unique,charset(UTF16)] */,
409							   const char *_load_order_group /* [in] [unique,charset(UTF16)] */,
410							   uint32_t *_tag_id /* [out] [ref] */,
411							   const char *_dependencies /* [in] [unique,charset(UTF16)] */,
412							   const char *_service_start_name /* [in] [unique,charset(UTF16)] */,
413							   const char *_password /* [in] [unique,charset(UTF16)] */,
414							   const char *_display_name /* [in] [unique,charset(UTF16)] */);
415NTSTATUS rpccli_svcctl_ChangeServiceConfigA_recv(struct tevent_req *req,
416						 TALLOC_CTX *mem_ctx,
417						 WERROR *result);
418NTSTATUS rpccli_svcctl_ChangeServiceConfigA(struct rpc_pipe_client *cli,
419					    TALLOC_CTX *mem_ctx,
420					    struct policy_handle *handle /* [in] [ref] */,
421					    uint32_t type /* [in]  */,
422					    enum svcctl_StartType start_type /* [in]  */,
423					    enum svcctl_ErrorControl error_control /* [in]  */,
424					    const char *binary_path /* [in] [unique,charset(UTF16)] */,
425					    const char *load_order_group /* [in] [unique,charset(UTF16)] */,
426					    uint32_t *tag_id /* [out] [ref] */,
427					    const char *dependencies /* [in] [unique,charset(UTF16)] */,
428					    const char *service_start_name /* [in] [unique,charset(UTF16)] */,
429					    const char *password /* [in] [unique,charset(UTF16)] */,
430					    const char *display_name /* [in] [unique,charset(UTF16)] */,
431					    WERROR *werror);
432struct tevent_req *rpccli_svcctl_CreateServiceA_send(TALLOC_CTX *mem_ctx,
433						     struct tevent_context *ev,
434						     struct rpc_pipe_client *cli,
435						     struct policy_handle *_handle /* [in] [ref] */,
436						     const char *_ServiceName /* [in] [unique,charset(UTF16)] */,
437						     const char *_DisplayName /* [in] [unique,charset(UTF16)] */,
438						     uint32_t _desired_access /* [in]  */,
439						     uint32_t _type /* [in]  */,
440						     enum svcctl_StartType _start_type /* [in]  */,
441						     enum svcctl_ErrorControl _error_control /* [in]  */,
442						     const char *_binary_path /* [in] [unique,charset(UTF16)] */,
443						     const char *_LoadOrderGroupKey /* [in] [unique,charset(UTF16)] */,
444						     uint32_t *_TagId /* [out] [unique] */,
445						     const char *_dependencies /* [in] [unique,charset(UTF16)] */,
446						     const char *_service_start_name /* [in] [unique,charset(UTF16)] */,
447						     const char *_password /* [in] [unique,charset(UTF16)] */);
448NTSTATUS rpccli_svcctl_CreateServiceA_recv(struct tevent_req *req,
449					   TALLOC_CTX *mem_ctx,
450					   WERROR *result);
451NTSTATUS rpccli_svcctl_CreateServiceA(struct rpc_pipe_client *cli,
452				      TALLOC_CTX *mem_ctx,
453				      struct policy_handle *handle /* [in] [ref] */,
454				      const char *ServiceName /* [in] [unique,charset(UTF16)] */,
455				      const char *DisplayName /* [in] [unique,charset(UTF16)] */,
456				      uint32_t desired_access /* [in]  */,
457				      uint32_t type /* [in]  */,
458				      enum svcctl_StartType start_type /* [in]  */,
459				      enum svcctl_ErrorControl error_control /* [in]  */,
460				      const char *binary_path /* [in] [unique,charset(UTF16)] */,
461				      const char *LoadOrderGroupKey /* [in] [unique,charset(UTF16)] */,
462				      uint32_t *TagId /* [out] [unique] */,
463				      const char *dependencies /* [in] [unique,charset(UTF16)] */,
464				      const char *service_start_name /* [in] [unique,charset(UTF16)] */,
465				      const char *password /* [in] [unique,charset(UTF16)] */,
466				      WERROR *werror);
467struct tevent_req *rpccli_svcctl_EnumDependentServicesA_send(TALLOC_CTX *mem_ctx,
468							     struct tevent_context *ev,
469							     struct rpc_pipe_client *cli,
470							     struct policy_handle *_service /* [in] [ref] */,
471							     enum svcctl_ServiceState _state /* [in]  */,
472							     struct ENUM_SERVICE_STATUSA *_service_status /* [out] [unique] */,
473							     uint32_t _offered /* [in]  */,
474							     uint32_t *_needed /* [out] [ref] */,
475							     uint32_t *_services_returned /* [out] [ref] */);
476NTSTATUS rpccli_svcctl_EnumDependentServicesA_recv(struct tevent_req *req,
477						   TALLOC_CTX *mem_ctx,
478						   WERROR *result);
479NTSTATUS rpccli_svcctl_EnumDependentServicesA(struct rpc_pipe_client *cli,
480					      TALLOC_CTX *mem_ctx,
481					      struct policy_handle *service /* [in] [ref] */,
482					      enum svcctl_ServiceState state /* [in]  */,
483					      struct ENUM_SERVICE_STATUSA *service_status /* [out] [unique] */,
484					      uint32_t offered /* [in]  */,
485					      uint32_t *needed /* [out] [ref] */,
486					      uint32_t *services_returned /* [out] [ref] */,
487					      WERROR *werror);
488struct tevent_req *rpccli_svcctl_EnumServicesStatusA_send(TALLOC_CTX *mem_ctx,
489							  struct tevent_context *ev,
490							  struct rpc_pipe_client *cli,
491							  struct policy_handle *_handle /* [in] [ref] */,
492							  uint32_t _type /* [in]  */,
493							  enum svcctl_ServiceState _state /* [in]  */,
494							  uint32_t _offered /* [in]  */,
495							  uint8_t *_service /* [out] [size_is(offered)] */,
496							  uint32_t *_needed /* [out] [ref] */,
497							  uint32_t *_services_returned /* [out] [ref] */,
498							  uint32_t *_resume_handle /* [in,out] [unique] */);
499NTSTATUS rpccli_svcctl_EnumServicesStatusA_recv(struct tevent_req *req,
500						TALLOC_CTX *mem_ctx,
501						WERROR *result);
502NTSTATUS rpccli_svcctl_EnumServicesStatusA(struct rpc_pipe_client *cli,
503					   TALLOC_CTX *mem_ctx,
504					   struct policy_handle *handle /* [in] [ref] */,
505					   uint32_t type /* [in]  */,
506					   enum svcctl_ServiceState state /* [in]  */,
507					   uint32_t offered /* [in]  */,
508					   uint8_t *service /* [out] [size_is(offered)] */,
509					   uint32_t *needed /* [out] [ref] */,
510					   uint32_t *services_returned /* [out] [ref] */,
511					   uint32_t *resume_handle /* [in,out] [unique] */,
512					   WERROR *werror);
513struct tevent_req *rpccli_svcctl_OpenSCManagerA_send(TALLOC_CTX *mem_ctx,
514						     struct tevent_context *ev,
515						     struct rpc_pipe_client *cli,
516						     const char *_MachineName /* [in] [unique,charset(UTF16)] */,
517						     const char *_DatabaseName /* [in] [unique,charset(UTF16)] */,
518						     uint32_t _access_mask /* [in]  */,
519						     struct policy_handle *_handle /* [out] [ref] */);
520NTSTATUS rpccli_svcctl_OpenSCManagerA_recv(struct tevent_req *req,
521					   TALLOC_CTX *mem_ctx,
522					   WERROR *result);
523NTSTATUS rpccli_svcctl_OpenSCManagerA(struct rpc_pipe_client *cli,
524				      TALLOC_CTX *mem_ctx,
525				      const char *MachineName /* [in] [unique,charset(UTF16)] */,
526				      const char *DatabaseName /* [in] [unique,charset(UTF16)] */,
527				      uint32_t access_mask /* [in]  */,
528				      struct policy_handle *handle /* [out] [ref] */,
529				      WERROR *werror);
530struct tevent_req *rpccli_svcctl_OpenServiceA_send(TALLOC_CTX *mem_ctx,
531						   struct tevent_context *ev,
532						   struct rpc_pipe_client *cli,
533						   struct policy_handle *_scmanager_handle /* [in] [ref] */,
534						   const char *_ServiceName /* [in] [unique,charset(UTF16)] */,
535						   uint32_t _access_mask /* [in]  */);
536NTSTATUS rpccli_svcctl_OpenServiceA_recv(struct tevent_req *req,
537					 TALLOC_CTX *mem_ctx,
538					 WERROR *result);
539NTSTATUS rpccli_svcctl_OpenServiceA(struct rpc_pipe_client *cli,
540				    TALLOC_CTX *mem_ctx,
541				    struct policy_handle *scmanager_handle /* [in] [ref] */,
542				    const char *ServiceName /* [in] [unique,charset(UTF16)] */,
543				    uint32_t access_mask /* [in]  */,
544				    WERROR *werror);
545struct tevent_req *rpccli_svcctl_QueryServiceConfigA_send(TALLOC_CTX *mem_ctx,
546							  struct tevent_context *ev,
547							  struct rpc_pipe_client *cli,
548							  struct policy_handle *_handle /* [in] [ref] */,
549							  uint8_t *_query /* [out]  */,
550							  uint32_t _offered /* [in]  */,
551							  uint32_t *_needed /* [out] [ref] */);
552NTSTATUS rpccli_svcctl_QueryServiceConfigA_recv(struct tevent_req *req,
553						TALLOC_CTX *mem_ctx,
554						WERROR *result);
555NTSTATUS rpccli_svcctl_QueryServiceConfigA(struct rpc_pipe_client *cli,
556					   TALLOC_CTX *mem_ctx,
557					   struct policy_handle *handle /* [in] [ref] */,
558					   uint8_t *query /* [out]  */,
559					   uint32_t offered /* [in]  */,
560					   uint32_t *needed /* [out] [ref] */,
561					   WERROR *werror);
562struct tevent_req *rpccli_svcctl_QueryServiceLockStatusA_send(TALLOC_CTX *mem_ctx,
563							      struct tevent_context *ev,
564							      struct rpc_pipe_client *cli,
565							      struct policy_handle *_handle /* [in] [ref] */,
566							      uint32_t _offered /* [in]  */,
567							      struct SERVICE_LOCK_STATUS *_lock_status /* [out] [ref] */,
568							      uint32_t *_needed /* [out] [ref] */);
569NTSTATUS rpccli_svcctl_QueryServiceLockStatusA_recv(struct tevent_req *req,
570						    TALLOC_CTX *mem_ctx,
571						    WERROR *result);
572NTSTATUS rpccli_svcctl_QueryServiceLockStatusA(struct rpc_pipe_client *cli,
573					       TALLOC_CTX *mem_ctx,
574					       struct policy_handle *handle /* [in] [ref] */,
575					       uint32_t offered /* [in]  */,
576					       struct SERVICE_LOCK_STATUS *lock_status /* [out] [ref] */,
577					       uint32_t *needed /* [out] [ref] */,
578					       WERROR *werror);
579struct tevent_req *rpccli_svcctl_StartServiceA_send(TALLOC_CTX *mem_ctx,
580						    struct tevent_context *ev,
581						    struct rpc_pipe_client *cli,
582						    struct policy_handle *_handle /* [in] [ref] */,
583						    uint32_t _NumArgs /* [in]  */,
584						    const char *_Arguments /* [in] [unique,charset(UTF16)] */);
585NTSTATUS rpccli_svcctl_StartServiceA_recv(struct tevent_req *req,
586					  TALLOC_CTX *mem_ctx,
587					  WERROR *result);
588NTSTATUS rpccli_svcctl_StartServiceA(struct rpc_pipe_client *cli,
589				     TALLOC_CTX *mem_ctx,
590				     struct policy_handle *handle /* [in] [ref] */,
591				     uint32_t NumArgs /* [in]  */,
592				     const char *Arguments /* [in] [unique,charset(UTF16)] */,
593				     WERROR *werror);
594struct tevent_req *rpccli_svcctl_GetServiceDisplayNameA_send(TALLOC_CTX *mem_ctx,
595							     struct tevent_context *ev,
596							     struct rpc_pipe_client *cli,
597							     struct policy_handle *_handle /* [in] [ref] */,
598							     const char *_service_name /* [in] [unique,charset(UTF16)] */,
599							     const char **_display_name /* [out] [ref,charset(UTF16)] */,
600							     uint32_t *_display_name_length /* [in,out] [unique] */);
601NTSTATUS rpccli_svcctl_GetServiceDisplayNameA_recv(struct tevent_req *req,
602						   TALLOC_CTX *mem_ctx,
603						   WERROR *result);
604NTSTATUS rpccli_svcctl_GetServiceDisplayNameA(struct rpc_pipe_client *cli,
605					      TALLOC_CTX *mem_ctx,
606					      struct policy_handle *handle /* [in] [ref] */,
607					      const char *service_name /* [in] [unique,charset(UTF16)] */,
608					      const char **display_name /* [out] [ref,charset(UTF16)] */,
609					      uint32_t *display_name_length /* [in,out] [unique] */,
610					      WERROR *werror);
611struct tevent_req *rpccli_svcctl_GetServiceKeyNameA_send(TALLOC_CTX *mem_ctx,
612							 struct tevent_context *ev,
613							 struct rpc_pipe_client *cli,
614							 struct policy_handle *_handle /* [in] [ref] */,
615							 const char *_service_name /* [in] [unique,charset(UTF16)] */,
616							 const char **_key_name /* [out] [ref,charset(UTF16)] */,
617							 uint32_t *_display_name_length /* [in,out] [unique] */);
618NTSTATUS rpccli_svcctl_GetServiceKeyNameA_recv(struct tevent_req *req,
619					       TALLOC_CTX *mem_ctx,
620					       WERROR *result);
621NTSTATUS rpccli_svcctl_GetServiceKeyNameA(struct rpc_pipe_client *cli,
622					  TALLOC_CTX *mem_ctx,
623					  struct policy_handle *handle /* [in] [ref] */,
624					  const char *service_name /* [in] [unique,charset(UTF16)] */,
625					  const char **key_name /* [out] [ref,charset(UTF16)] */,
626					  uint32_t *display_name_length /* [in,out] [unique] */,
627					  WERROR *werror);
628struct tevent_req *rpccli_svcctl_GetCurrentGroupeStateW_send(TALLOC_CTX *mem_ctx,
629							     struct tevent_context *ev,
630							     struct rpc_pipe_client *cli);
631NTSTATUS rpccli_svcctl_GetCurrentGroupeStateW_recv(struct tevent_req *req,
632						   TALLOC_CTX *mem_ctx,
633						   WERROR *result);
634NTSTATUS rpccli_svcctl_GetCurrentGroupeStateW(struct rpc_pipe_client *cli,
635					      TALLOC_CTX *mem_ctx,
636					      WERROR *werror);
637struct tevent_req *rpccli_svcctl_EnumServiceGroupW_send(TALLOC_CTX *mem_ctx,
638							struct tevent_context *ev,
639							struct rpc_pipe_client *cli);
640NTSTATUS rpccli_svcctl_EnumServiceGroupW_recv(struct tevent_req *req,
641					      TALLOC_CTX *mem_ctx,
642					      WERROR *result);
643NTSTATUS rpccli_svcctl_EnumServiceGroupW(struct rpc_pipe_client *cli,
644					 TALLOC_CTX *mem_ctx,
645					 WERROR *werror);
646struct tevent_req *rpccli_svcctl_ChangeServiceConfig2A_send(TALLOC_CTX *mem_ctx,
647							    struct tevent_context *ev,
648							    struct rpc_pipe_client *cli,
649							    struct policy_handle *_handle /* [in] [ref] */,
650							    uint32_t _info_level /* [in]  */,
651							    uint8_t *_info /* [in] [unique] */);
652NTSTATUS rpccli_svcctl_ChangeServiceConfig2A_recv(struct tevent_req *req,
653						  TALLOC_CTX *mem_ctx,
654						  WERROR *result);
655NTSTATUS rpccli_svcctl_ChangeServiceConfig2A(struct rpc_pipe_client *cli,
656					     TALLOC_CTX *mem_ctx,
657					     struct policy_handle *handle /* [in] [ref] */,
658					     uint32_t info_level /* [in]  */,
659					     uint8_t *info /* [in] [unique] */,
660					     WERROR *werror);
661struct tevent_req *rpccli_svcctl_ChangeServiceConfig2W_send(TALLOC_CTX *mem_ctx,
662							    struct tevent_context *ev,
663							    struct rpc_pipe_client *cli,
664							    struct policy_handle *_handle /* [in] [ref] */,
665							    uint32_t _info_level /* [in]  */,
666							    uint8_t *_info /* [in] [unique] */);
667NTSTATUS rpccli_svcctl_ChangeServiceConfig2W_recv(struct tevent_req *req,
668						  TALLOC_CTX *mem_ctx,
669						  WERROR *result);
670NTSTATUS rpccli_svcctl_ChangeServiceConfig2W(struct rpc_pipe_client *cli,
671					     TALLOC_CTX *mem_ctx,
672					     struct policy_handle *handle /* [in] [ref] */,
673					     uint32_t info_level /* [in]  */,
674					     uint8_t *info /* [in] [unique] */,
675					     WERROR *werror);
676struct tevent_req *rpccli_svcctl_QueryServiceConfig2A_send(TALLOC_CTX *mem_ctx,
677							   struct tevent_context *ev,
678							   struct rpc_pipe_client *cli,
679							   struct policy_handle *_handle /* [in] [ref] */,
680							   enum svcctl_ConfigLevel _info_level /* [in]  */,
681							   uint8_t *_buffer /* [out]  */,
682							   uint32_t _offered /* [in]  */,
683							   uint32_t *_needed /* [out] [ref] */);
684NTSTATUS rpccli_svcctl_QueryServiceConfig2A_recv(struct tevent_req *req,
685						 TALLOC_CTX *mem_ctx,
686						 WERROR *result);
687NTSTATUS rpccli_svcctl_QueryServiceConfig2A(struct rpc_pipe_client *cli,
688					    TALLOC_CTX *mem_ctx,
689					    struct policy_handle *handle /* [in] [ref] */,
690					    enum svcctl_ConfigLevel info_level /* [in]  */,
691					    uint8_t *buffer /* [out]  */,
692					    uint32_t offered /* [in]  */,
693					    uint32_t *needed /* [out] [ref] */,
694					    WERROR *werror);
695struct tevent_req *rpccli_svcctl_QueryServiceConfig2W_send(TALLOC_CTX *mem_ctx,
696							   struct tevent_context *ev,
697							   struct rpc_pipe_client *cli,
698							   struct policy_handle *_handle /* [in] [ref] */,
699							   enum svcctl_ConfigLevel _info_level /* [in]  */,
700							   uint8_t *_buffer /* [out] [ref,size_is(offered)] */,
701							   uint32_t _offered /* [in] [range(0,8192)] */,
702							   uint32_t *_needed /* [out] [ref,range(0,8192)] */);
703NTSTATUS rpccli_svcctl_QueryServiceConfig2W_recv(struct tevent_req *req,
704						 TALLOC_CTX *mem_ctx,
705						 WERROR *result);
706NTSTATUS rpccli_svcctl_QueryServiceConfig2W(struct rpc_pipe_client *cli,
707					    TALLOC_CTX *mem_ctx,
708					    struct policy_handle *handle /* [in] [ref] */,
709					    enum svcctl_ConfigLevel info_level /* [in]  */,
710					    uint8_t *buffer /* [out] [ref,size_is(offered)] */,
711					    uint32_t offered /* [in] [range(0,8192)] */,
712					    uint32_t *needed /* [out] [ref,range(0,8192)] */,
713					    WERROR *werror);
714struct tevent_req *rpccli_svcctl_QueryServiceStatusEx_send(TALLOC_CTX *mem_ctx,
715							   struct tevent_context *ev,
716							   struct rpc_pipe_client *cli,
717							   struct policy_handle *_handle /* [in] [ref] */,
718							   enum svcctl_StatusLevel _info_level /* [in]  */,
719							   uint8_t *_buffer /* [out] [ref,size_is(offered)] */,
720							   uint32_t _offered /* [in] [range(0,8192)] */,
721							   uint32_t *_needed /* [out] [ref,range(0,8192)] */);
722NTSTATUS rpccli_svcctl_QueryServiceStatusEx_recv(struct tevent_req *req,
723						 TALLOC_CTX *mem_ctx,
724						 WERROR *result);
725NTSTATUS rpccli_svcctl_QueryServiceStatusEx(struct rpc_pipe_client *cli,
726					    TALLOC_CTX *mem_ctx,
727					    struct policy_handle *handle /* [in] [ref] */,
728					    enum svcctl_StatusLevel info_level /* [in]  */,
729					    uint8_t *buffer /* [out] [ref,size_is(offered)] */,
730					    uint32_t offered /* [in] [range(0,8192)] */,
731					    uint32_t *needed /* [out] [ref,range(0,8192)] */,
732					    WERROR *werror);
733struct tevent_req *rpccli_EnumServicesStatusExA_send(TALLOC_CTX *mem_ctx,
734						     struct tevent_context *ev,
735						     struct rpc_pipe_client *cli,
736						     struct policy_handle *_scmanager /* [in] [ref] */,
737						     uint32_t _info_level /* [in]  */,
738						     uint32_t _type /* [in]  */,
739						     enum svcctl_ServiceState _state /* [in]  */,
740						     uint8_t *_services /* [out]  */,
741						     uint32_t _offered /* [in]  */,
742						     uint32_t *_needed /* [out] [ref] */,
743						     uint32_t *_service_returned /* [out] [ref] */,
744						     uint32_t *_resume_handle /* [in,out] [unique] */,
745						     const char **_group_name /* [out] [ref,charset(UTF16)] */);
746NTSTATUS rpccli_EnumServicesStatusExA_recv(struct tevent_req *req,
747					   TALLOC_CTX *mem_ctx,
748					   WERROR *result);
749NTSTATUS rpccli_EnumServicesStatusExA(struct rpc_pipe_client *cli,
750				      TALLOC_CTX *mem_ctx,
751				      struct policy_handle *scmanager /* [in] [ref] */,
752				      uint32_t info_level /* [in]  */,
753				      uint32_t type /* [in]  */,
754				      enum svcctl_ServiceState state /* [in]  */,
755				      uint8_t *services /* [out]  */,
756				      uint32_t offered /* [in]  */,
757				      uint32_t *needed /* [out] [ref] */,
758				      uint32_t *service_returned /* [out] [ref] */,
759				      uint32_t *resume_handle /* [in,out] [unique] */,
760				      const char **group_name /* [out] [ref,charset(UTF16)] */,
761				      WERROR *werror);
762struct tevent_req *rpccli_EnumServicesStatusExW_send(TALLOC_CTX *mem_ctx,
763						     struct tevent_context *ev,
764						     struct rpc_pipe_client *cli,
765						     struct policy_handle *_scmanager /* [in] [ref] */,
766						     uint32_t _info_level /* [in]  */,
767						     uint32_t _type /* [in]  */,
768						     enum svcctl_ServiceState _state /* [in]  */,
769						     uint8_t *_services /* [out] [ref,size_is(offered)] */,
770						     uint32_t _offered /* [in] [range(0,0x40000)] */,
771						     uint32_t *_needed /* [out] [ref,range(0,0x40000)] */,
772						     uint32_t *_service_returned /* [out] [ref,range(0,0x40000)] */,
773						     uint32_t *_resume_handle /* [in,out] [unique,range(0,0x40000)] */,
774						     const char *_group_name /* [in] [unique,charset(UTF16)] */);
775NTSTATUS rpccli_EnumServicesStatusExW_recv(struct tevent_req *req,
776					   TALLOC_CTX *mem_ctx,
777					   WERROR *result);
778NTSTATUS rpccli_EnumServicesStatusExW(struct rpc_pipe_client *cli,
779				      TALLOC_CTX *mem_ctx,
780				      struct policy_handle *scmanager /* [in] [ref] */,
781				      uint32_t info_level /* [in]  */,
782				      uint32_t type /* [in]  */,
783				      enum svcctl_ServiceState state /* [in]  */,
784				      uint8_t *services /* [out] [ref,size_is(offered)] */,
785				      uint32_t offered /* [in] [range(0,0x40000)] */,
786				      uint32_t *needed /* [out] [ref,range(0,0x40000)] */,
787				      uint32_t *service_returned /* [out] [ref,range(0,0x40000)] */,
788				      uint32_t *resume_handle /* [in,out] [unique,range(0,0x40000)] */,
789				      const char *group_name /* [in] [unique,charset(UTF16)] */,
790				      WERROR *werror);
791struct tevent_req *rpccli_svcctl_SCSendTSMessage_send(TALLOC_CTX *mem_ctx,
792						      struct tevent_context *ev,
793						      struct rpc_pipe_client *cli);
794NTSTATUS rpccli_svcctl_SCSendTSMessage_recv(struct tevent_req *req,
795					    TALLOC_CTX *mem_ctx,
796					    WERROR *result);
797NTSTATUS rpccli_svcctl_SCSendTSMessage(struct rpc_pipe_client *cli,
798				       TALLOC_CTX *mem_ctx,
799				       WERROR *werror);
800#endif /* __CLI_SVCCTL__ */
801