Fix a debug message
[Samba.git] / source / librpc / gen_ndr / svcctl.h
blobd4135d2ddb9b89d18b42141fc59b1cb966942978
1 /* header auto-generated by pidl */
3 #include <stdint.h>
5 #ifndef _HEADER_svcctl
6 #define _HEADER_svcctl
8 #define SERVICE_TYPE_KERNEL_DRIVER ( 0x01 )
9 #define SERVICE_TYPE_FS_DRIVER ( 0x02 )
10 #define SERVICE_TYPE_ADAPTER ( 0x04 )
11 #define SERVICE_TYPE_RECOGNIZER_DRIVER ( 0x08 )
12 #define SERVICE_TYPE_DRIVER ( SERVICE_TYPE_KERNEL_DRIVER|SERVICE_TYPE_FS_DRIVER|SERVICE_TYPE_RECOGNIZER_DRIVER )
13 #define SERVICE_TYPE_WIN32_OWN_PROCESS ( 0x10 )
14 #define SERVICE_TYPE_WIN32_SHARE_PROCESS ( 0x20 )
15 #define SERVICE_TYPE_WIN32 ( SERVICE_TYPE_WIN32_OWN_PROCESS|SERVICE_TYPE_WIN32_SHARE_PROCESS )
16 #define SERVICE_STATE_ACTIVE ( 0x01 )
17 #define SERVICE_STATE_INACTIVE ( 0x02 )
18 #define SERVICE_STATE_ALL ( 0x03 )
19 #define SV_TYPE_ALL ( 0xFFFFFFFF )
20 struct SERVICE_LOCK_STATUS {
21 uint32_t is_locked;
22 const char *lock_owner;/* [unique,charset(UTF16)] */
23 uint32_t lock_duration;
26 struct SERVICE_STATUS {
27 uint32_t type;
28 uint32_t state;
29 uint32_t controls_accepted;
30 WERROR win32_exit_code;
31 uint32_t service_exit_code;
32 uint32_t check_point;
33 uint32_t wait_hint;
36 struct ENUM_SERVICE_STATUS {
37 const char * service_name;/* [relative,flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
38 const char * display_name;/* [relative,flag(LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_NULLTERM)] */
39 struct SERVICE_STATUS status;
42 /* bitmap svcctl_ServerType */
43 #define SV_TYPE_WORKSTATION ( 0x00000001 )
44 #define SV_TYPE_SERVER ( 0x00000002 )
45 #define SV_TYPE_SQLSERVER ( 0x00000004 )
46 #define SV_TYPE_DOMAIN_CTRL ( 0x00000008 )
47 #define SV_TYPE_DOMAIN_BAKCTRL ( 0x00000010 )
48 #define SV_TYPE_TIME_SOURCE ( 0x00000020 )
49 #define SV_TYPE_AFP ( 0x00000040 )
50 #define SV_TYPE_NOVELL ( 0x00000080 )
51 #define SV_TYPE_DOMAIN_MEMBER ( 0x00000100 )
52 #define SV_TYPE_PRINTQ_SERVER ( 0x00000200 )
53 #define SV_TYPE_DIALIN_SERVER ( 0x00000400 )
54 #define SV_TYPE_SERVER_UNIX ( 0x00000800 )
55 #define SV_TYPE_NT ( 0x00001000 )
56 #define SV_TYPE_WFW ( 0x00002000 )
57 #define SV_TYPE_SERVER_MFPN ( 0x00004000 )
58 #define SV_TYPE_SERVER_NT ( 0x00008000 )
59 #define SV_TYPE_POTENTIAL_BROWSER ( 0x00010000 )
60 #define SV_TYPE_BACKUP_BROWSER ( 0x00020000 )
61 #define SV_TYPE_MASTER_BROWSER ( 0x00040000 )
62 #define SV_TYPE_DOMAIN_MASTER ( 0x00080000 )
63 #define SV_TYPE_SERVER_OSF ( 0x00100000 )
64 #define SV_TYPE_SERVER_VMS ( 0x00200000 )
65 #define SV_TYPE_WIN95_PLUS ( 0x00400000 )
66 #define SV_TYPE_DFS_SERVER ( 0x00800000 )
67 #define SV_TYPE_ALTERNATE_XPORT ( 0x20000000 )
68 #define SV_TYPE_LOCAL_LIST_ONLY ( 0x40000000 )
69 #define SV_TYPE_DOMAIN_ENUM ( 0x80000000 )
71 enum SERVICE_CONTROL
72 #ifndef USE_UINT_ENUMS
74 FIXME=1
76 #else
77 { __donnot_use_enum_SERVICE_CONTROL=0x7FFFFFFF}
78 #define FIXME ( 1 )
79 #endif
82 /* bitmap svcctl_MgrAccessMask */
83 #define SC_RIGHT_MGR_CONNECT ( 0x0001 )
84 #define SC_RIGHT_MGR_CREATE_SERVICE ( 0x0002 )
85 #define SC_RIGHT_MGR_ENUMERATE_SERVICE ( 0x0004 )
86 #define SC_RIGHT_MGR_LOCK ( 0x0008 )
87 #define SC_RIGHT_MGR_QUERY_LOCK_STATUS ( 0x0010 )
88 #define SC_RIGHT_MGR_MODIFY_BOOT_CONFIG ( 0x0020 )
90 /* bitmap svcctl_ServiceAccessMask */
91 #define SC_RIGHT_SVC_QUERY_CONFIG ( 0x0001 )
92 #define SC_RIGHT_SVC_CHANGE_CONFIG ( 0x0002 )
93 #define SC_RIGHT_SVC_QUERY_STATUS ( 0x0004 )
94 #define SC_RIGHT_SVC_ENUMERATE_DEPENDENTS ( 0x0008 )
95 #define SC_RIGHT_SVC_START ( 0x0010 )
96 #define SC_RIGHT_SVC_STOP ( 0x0020 )
97 #define SC_RIGHT_SVC_PAUSE_CONTINUE ( 0x0040 )
98 #define SC_RIGHT_SVC_INTERROGATE ( 0x0080 )
99 #define SC_RIGHT_SVC_USER_DEFINED_CONTROL ( 0x0100 )
102 struct svcctl_CloseServiceHandle {
103 struct {
104 struct policy_handle *handle;/* [ref] */
105 } in;
107 struct {
108 struct policy_handle *handle;/* [ref] */
109 WERROR result;
110 } out;
115 struct svcctl_ControlService {
116 struct {
117 struct policy_handle *handle;/* [ref] */
118 uint32_t control;
119 } in;
121 struct {
122 struct SERVICE_STATUS *service_status;/* [ref] */
123 WERROR result;
124 } out;
129 struct svcctl_DeleteService {
130 struct {
131 struct policy_handle *handle;/* [ref] */
132 } in;
134 struct {
135 WERROR result;
136 } out;
141 struct svcctl_LockServiceDatabase {
142 struct {
143 struct policy_handle *handle;/* [ref] */
144 } in;
146 struct {
147 struct policy_handle *lock;/* [ref] */
148 WERROR result;
149 } out;
154 struct svcctl_QueryServiceObjectSecurity {
155 struct {
156 struct policy_handle *handle;/* [ref] */
157 uint32_t security_flags;
158 uint32_t buffer_size;/* [range(0,0x40000)] */
159 } in;
161 struct {
162 uint8_t *buffer;/* [ref,size_is(buffer_size)] */
163 uint32_t *needed;/* [ref,range(0,0x40000)] */
164 WERROR result;
165 } out;
170 struct svcctl_SetServiceObjectSecurity {
171 struct {
172 struct policy_handle *handle;/* [ref] */
173 uint32_t security_flags;
174 uint8_t *buffer;/* [ref,size_is(buffer_size)] */
175 uint32_t buffer_size;
176 } in;
178 struct {
179 WERROR result;
180 } out;
185 struct svcctl_QueryServiceStatus {
186 struct {
187 struct policy_handle *handle;/* [ref] */
188 } in;
190 struct {
191 struct SERVICE_STATUS *service_status;/* [ref] */
192 WERROR result;
193 } out;
198 struct svcctl_SetServiceStatus {
199 struct {
200 WERROR result;
201 } out;
206 struct svcctl_UnlockServiceDatabase {
207 struct {
208 struct policy_handle *lock;/* [ref] */
209 } in;
211 struct {
212 struct policy_handle *lock;/* [ref] */
213 WERROR result;
214 } out;
219 struct svcctl_NotifyBootConfigStatus {
220 struct {
221 WERROR result;
222 } out;
227 struct svcctl_SCSetServiceBitsW {
228 struct {
229 struct policy_handle *handle;/* [ref] */
230 uint32_t bits;
231 uint32_t bitson;
232 uint32_t immediate;
233 } in;
235 struct {
236 WERROR result;
237 } out;
242 struct svcctl_ChangeServiceConfigW {
243 struct {
244 struct policy_handle *handle;/* [ref] */
245 uint32_t type;
246 uint32_t start;
247 uint32_t error;
248 const char *binary_path;/* [unique,charset(UTF16)] */
249 const char *load_order_group;/* [unique,charset(UTF16)] */
250 const char *dependencies;/* [unique,charset(UTF16)] */
251 const char *service_start_name;/* [unique,charset(UTF16)] */
252 const char *password;/* [unique,charset(UTF16)] */
253 const char *display_name;/* [unique,charset(UTF16)] */
254 } in;
256 struct {
257 uint32_t *tag_id;/* [ref] */
258 WERROR result;
259 } out;
264 struct svcctl_CreateServiceW {
265 struct {
266 struct policy_handle *scmanager_handle;/* [ref] */
267 const char *ServiceName;/* [charset(UTF16)] */
268 const char *DisplayName;/* [unique,charset(UTF16)] */
269 uint32_t desired_access;
270 uint32_t type;
271 uint32_t start_type;
272 uint32_t error_control;
273 const char *binary_path;/* [charset(UTF16)] */
274 const char *LoadOrderGroupKey;/* [unique,charset(UTF16)] */
275 uint8_t *dependencies;/* [unique,size_is(dependencies_size)] */
276 uint32_t dependencies_size;
277 const char *service_start_name;/* [unique,charset(UTF16)] */
278 uint8_t *password;/* [unique,size_is(password_size)] */
279 uint32_t password_size;
280 uint32_t *TagId;/* [unique] */
281 } in;
283 struct {
284 struct policy_handle *handle;/* [ref] */
285 uint32_t *TagId;/* [unique] */
286 WERROR result;
287 } out;
292 struct svcctl_EnumDependentServicesW {
293 struct {
294 struct policy_handle *service;/* [ref] */
295 uint32_t state;
296 uint32_t buf_size;/* [range(0,0x40000)] */
297 } in;
299 struct {
300 uint8_t *service_status;/* [ref,size_is(buf_size)] */
301 uint32_t *bytes_needed;/* [ref,range(0,0x40000)] */
302 uint32_t *services_returned;/* [ref,range(0,0x40000)] */
303 WERROR result;
304 } out;
309 struct svcctl_EnumServicesStatusW {
310 struct {
311 struct policy_handle *handle;/* [ref] */
312 uint32_t type;
313 uint32_t state;
314 uint32_t buf_size;
315 uint32_t *resume_handle;/* [unique] */
316 } in;
318 struct {
319 uint8_t *service;/* [size_is(buf_size)] */
320 uint32_t *bytes_needed;/* [ref] */
321 uint32_t *services_returned;/* [ref] */
322 uint32_t *resume_handle;/* [unique] */
323 WERROR result;
324 } out;
329 struct svcctl_OpenSCManagerW {
330 struct {
331 const char *MachineName;/* [unique,charset(UTF16)] */
332 const char *DatabaseName;/* [unique,charset(UTF16)] */
333 uint32_t access_mask;
334 } in;
336 struct {
337 struct policy_handle *handle;/* [ref] */
338 WERROR result;
339 } out;
344 struct svcctl_OpenServiceW {
345 struct {
346 struct policy_handle *scmanager_handle;/* [ref] */
347 const char *ServiceName;/* [charset(UTF16)] */
348 uint32_t access_mask;
349 } in;
351 struct {
352 struct policy_handle *handle;/* [ref] */
353 WERROR result;
354 } out;
359 struct svcctl_QueryServiceConfigW {
360 struct {
361 struct policy_handle *handle;/* [ref] */
362 uint32_t buf_size;
363 } in;
365 struct {
366 uint8_t *query;
367 uint32_t *bytes_needed;/* [ref] */
368 WERROR result;
369 } out;
374 struct svcctl_QueryServiceLockStatusW {
375 struct {
376 struct policy_handle *handle;/* [ref] */
377 uint32_t buf_size;
378 } in;
380 struct {
381 struct SERVICE_LOCK_STATUS *lock_status;/* [ref] */
382 uint32_t *required_buf_size;/* [ref] */
383 WERROR result;
384 } out;
389 struct svcctl_StartServiceW {
390 struct {
391 struct policy_handle *handle;/* [ref] */
392 uint32_t NumArgs;
393 const char *Arguments;/* [unique,charset(UTF16)] */
394 } in;
396 struct {
397 WERROR result;
398 } out;
403 struct svcctl_GetServiceDisplayNameW {
404 struct {
405 struct policy_handle *handle;/* [ref] */
406 const char *service_name;/* [unique,charset(UTF16)] */
407 uint32_t *display_name_length;/* [unique] */
408 } in;
410 struct {
411 const char **display_name;/* [ref,charset(UTF16)] */
412 uint32_t *display_name_length;/* [unique] */
413 WERROR result;
414 } out;
419 struct svcctl_GetServiceKeyNameW {
420 struct {
421 struct policy_handle *handle;/* [ref] */
422 const char *service_name;/* [unique,charset(UTF16)] */
423 uint32_t *display_name_length;/* [unique] */
424 } in;
426 struct {
427 const char **key_name;/* [ref,charset(UTF16)] */
428 uint32_t *display_name_length;/* [unique] */
429 WERROR result;
430 } out;
435 struct svcctl_SCSetServiceBitsA {
436 struct {
437 struct policy_handle *handle;/* [ref] */
438 uint32_t bits;
439 uint32_t bitson;
440 uint32_t immediate;
441 } in;
443 struct {
444 WERROR result;
445 } out;
450 struct svcctl_ChangeServiceConfigA {
451 struct {
452 struct policy_handle *handle;/* [ref] */
453 uint32_t type;
454 uint32_t start;
455 uint32_t error;
456 const char *binary_path;/* [unique,charset(UTF16)] */
457 const char *load_order_group;/* [unique,charset(UTF16)] */
458 const char *dependencies;/* [unique,charset(UTF16)] */
459 const char *service_start_name;/* [unique,charset(UTF16)] */
460 const char *password;/* [unique,charset(UTF16)] */
461 const char *display_name;/* [unique,charset(UTF16)] */
462 } in;
464 struct {
465 uint32_t *tag_id;/* [ref] */
466 WERROR result;
467 } out;
472 struct svcctl_CreateServiceA {
473 struct {
474 struct policy_handle *handle;/* [ref] */
475 const char *ServiceName;/* [unique,charset(UTF16)] */
476 const char *DisplayName;/* [unique,charset(UTF16)] */
477 uint32_t desired_access;
478 uint32_t type;
479 uint32_t start_type;
480 uint32_t error_control;
481 const char *binary_path;/* [unique,charset(UTF16)] */
482 const char *LoadOrderGroupKey;/* [unique,charset(UTF16)] */
483 const char *dependencies;/* [unique,charset(UTF16)] */
484 const char *service_start_name;/* [unique,charset(UTF16)] */
485 const char *password;/* [unique,charset(UTF16)] */
486 } in;
488 struct {
489 uint32_t *TagId;/* [unique] */
490 WERROR result;
491 } out;
496 struct svcctl_EnumDependentServicesA {
497 struct {
498 struct policy_handle *service;/* [ref] */
499 uint32_t state;
500 uint32_t buf_size;
501 } in;
503 struct {
504 struct ENUM_SERVICE_STATUS *service_status;/* [unique] */
505 uint32_t *bytes_needed;/* [ref] */
506 uint32_t *services_returned;/* [ref] */
507 WERROR result;
508 } out;
513 struct svcctl_EnumServicesStatusA {
514 struct {
515 struct policy_handle *handle;/* [ref] */
516 uint32_t type;
517 uint32_t state;
518 uint32_t buf_size;
519 uint32_t *resume_handle;/* [unique] */
520 } in;
522 struct {
523 uint8_t *service;/* [size_is(buf_size)] */
524 uint32_t *bytes_needed;/* [ref] */
525 uint32_t *services_returned;/* [ref] */
526 uint32_t *resume_handle;/* [unique] */
527 WERROR result;
528 } out;
533 struct svcctl_OpenSCManagerA {
534 struct {
535 const char *MachineName;/* [unique,charset(UTF16)] */
536 const char *DatabaseName;/* [unique,charset(UTF16)] */
537 uint32_t access_mask;
538 } in;
540 struct {
541 struct policy_handle *handle;/* [ref] */
542 WERROR result;
543 } out;
548 struct svcctl_OpenServiceA {
549 struct {
550 struct policy_handle *scmanager_handle;/* [ref] */
551 const char *ServiceName;/* [unique,charset(UTF16)] */
552 uint32_t access_mask;
553 } in;
555 struct {
556 WERROR result;
557 } out;
562 struct svcctl_QueryServiceConfigA {
563 struct {
564 struct policy_handle *handle;/* [ref] */
565 uint32_t buf_size;
566 } in;
568 struct {
569 uint8_t *query;
570 uint32_t *bytes_needed;/* [ref] */
571 WERROR result;
572 } out;
577 struct svcctl_QueryServiceLockStatusA {
578 struct {
579 struct policy_handle *handle;/* [ref] */
580 uint32_t buf_size;
581 } in;
583 struct {
584 struct SERVICE_LOCK_STATUS *lock_status;/* [ref] */
585 uint32_t *required_buf_size;/* [ref] */
586 WERROR result;
587 } out;
592 struct svcctl_StartServiceA {
593 struct {
594 struct policy_handle *handle;/* [ref] */
595 uint32_t NumArgs;
596 const char *Arguments;/* [unique,charset(UTF16)] */
597 } in;
599 struct {
600 WERROR result;
601 } out;
606 struct svcctl_GetServiceDisplayNameA {
607 struct {
608 struct policy_handle *handle;/* [ref] */
609 const char *service_name;/* [unique,charset(UTF16)] */
610 uint32_t *display_name_length;/* [unique] */
611 } in;
613 struct {
614 const char **display_name;/* [ref,charset(UTF16)] */
615 uint32_t *display_name_length;/* [unique] */
616 WERROR result;
617 } out;
622 struct svcctl_GetServiceKeyNameA {
623 struct {
624 struct policy_handle *handle;/* [ref] */
625 const char *service_name;/* [unique,charset(UTF16)] */
626 uint32_t *display_name_length;/* [unique] */
627 } in;
629 struct {
630 const char **key_name;/* [ref,charset(UTF16)] */
631 uint32_t *display_name_length;/* [unique] */
632 WERROR result;
633 } out;
638 struct svcctl_GetCurrentGroupeStateW {
639 struct {
640 WERROR result;
641 } out;
646 struct svcctl_EnumServiceGroupW {
647 struct {
648 WERROR result;
649 } out;
654 struct svcctl_ChangeServiceConfig2A {
655 struct {
656 struct policy_handle *handle;/* [ref] */
657 uint32_t info_level;
658 uint8_t *info;/* [unique] */
659 } in;
661 struct {
662 WERROR result;
663 } out;
668 struct svcctl_ChangeServiceConfig2W {
669 struct {
670 struct policy_handle *handle;/* [ref] */
671 uint32_t info_level;
672 uint8_t *info;/* [unique] */
673 } in;
675 struct {
676 WERROR result;
677 } out;
682 struct svcctl_QueryServiceConfig2A {
683 struct {
684 struct policy_handle *handle;/* [ref] */
685 uint32_t info_level;
686 uint32_t buf_size;
687 } in;
689 struct {
690 uint8_t *buffer;
691 uint32_t *bytes_needed;/* [ref] */
692 WERROR result;
693 } out;
698 struct svcctl_QueryServiceConfig2W {
699 struct {
700 struct policy_handle *handle;/* [ref] */
701 uint32_t info_level;
702 uint32_t buf_size;
703 } in;
705 struct {
706 uint8_t *buffer;
707 uint32_t *bytes_needed;/* [ref] */
708 WERROR result;
709 } out;
714 struct svcctl_QueryServiceStatusEx {
715 struct {
716 struct policy_handle *handle;/* [ref] */
717 uint32_t info_level;
718 uint32_t buf_size;
719 } in;
721 struct {
722 uint8_t *buffer;
723 uint32_t *bytes_needed;/* [ref] */
724 WERROR result;
725 } out;
730 struct EnumServicesStatusExA {
731 struct {
732 struct policy_handle *scmanager;/* [ref] */
733 uint32_t info_level;
734 uint32_t type;
735 uint32_t state;
736 uint32_t buf_size;
737 uint32_t *resume_handle;/* [unique] */
738 } in;
740 struct {
741 uint8_t *services;
742 uint32_t *bytes_needed;/* [ref] */
743 uint32_t *service_returned;/* [ref] */
744 const char **group_name;/* [ref,charset(UTF16)] */
745 uint32_t *resume_handle;/* [unique] */
746 WERROR result;
747 } out;
752 struct EnumServicesStatusExW {
753 struct {
754 struct policy_handle *scmanager;/* [ref] */
755 uint32_t info_level;
756 uint32_t type;
757 uint32_t state;
758 uint32_t buf_size;
759 uint32_t *resume_handle;/* [unique] */
760 } in;
762 struct {
763 uint8_t *services;
764 uint32_t *bytes_needed;/* [ref] */
765 uint32_t *service_returned;/* [ref] */
766 const char **group_name;/* [ref,charset(UTF16)] */
767 uint32_t *resume_handle;/* [unique] */
768 WERROR result;
769 } out;
774 struct svcctl_SCSendTSMessage {
775 struct {
776 WERROR result;
777 } out;
781 #endif /* _HEADER_svcctl */