summaryrefslogtreecommitdiff
path: root/librpc/idl/svcctl.idl
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2009-01-08 12:39:50 +0100
committerGünther Deschner <gd@samba.org>2009-01-08 13:24:22 +0100
commit378ef220690152de101dc71acd5e9fa1d064ac35 (patch)
treeb0a3c70b53deb57ab33f99d3ce35d33dad49c6ab /librpc/idl/svcctl.idl
parentad078f5269b93cdf4b8ee832a4b18dac8b513181 (diff)
downloadsamba-378ef220690152de101dc71acd5e9fa1d064ac35.tar.gz
samba-378ef220690152de101dc71acd5e9fa1d064ac35.tar.bz2
samba-378ef220690152de101dc71acd5e9fa1d064ac35.zip
svcctl: add svcctl_ServiceStatus and svcctl_ControlsAccepted.
Guenther
Diffstat (limited to 'librpc/idl/svcctl.idl')
-rw-r--r--librpc/idl/svcctl.idl26
1 files changed, 24 insertions, 2 deletions
diff --git a/librpc/idl/svcctl.idl b/librpc/idl/svcctl.idl
index c70858fbd9..f804f91730 100644
--- a/librpc/idl/svcctl.idl
+++ b/librpc/idl/svcctl.idl
@@ -18,10 +18,32 @@ import "misc.idl", "security.idl";
uint32 lock_duration;
} SERVICE_LOCK_STATUS;
+ typedef [v1_enum] enum {
+ SVCCTL_STATE_UNKNOWN = 0x00000000, /* only used internally to smbd */
+ SVCCTL_STOPPED = 0x00000001,
+ SVCCTL_START_PENDING = 0x00000002,
+ SVCCTL_STOP_PENDING = 0x00000003,
+ SVCCTL_RUNNING = 0x00000004,
+ SVCCTL_CONTINUE_PENDING = 0x00000005,
+ SVCCTL_PAUSE_PENDING = 0x00000006,
+ SVCCTL_PAUSED = 0x00000007
+ } svcctl_ServiceStatus;
+
+ typedef [bitmap32bit] bitmap {
+ SVCCTL_ACCEPT_NONE = 0x00000000,
+ SVCCTL_ACCEPT_STOP = 0x00000001,
+ SVCCTL_ACCEPT_PAUSE_CONTINUE = 0x00000002,
+ SVCCTL_ACCEPT_SHUTDOWN = 0x00000004,
+ SVCCTL_ACCEPT_PARAMCHANGE = 0x00000008,
+ SVCCTL_ACCEPT_NETBINDCHANGE = 0x00000010,
+ SVCCTL_ACCEPT_HARDWAREPROFILECHANGE = 0x00000020,
+ SVCCTL_ACCEPT_POWEREVENT = 0x00000040
+ } svcctl_ControlsAccepted;
+
typedef struct {
uint32 type;
- uint32 state;
- uint32 controls_accepted;
+ svcctl_ServiceStatus state;
+ svcctl_ControlsAccepted controls_accepted;
WERROR win32_exit_code;
uint32 service_exit_code;
uint32 check_point;