Merge branch 'master' of ssh://git.samba.org/data/git/abartlet/samba into extended...
[abartlet/samba.git/.git] / source3 / librpc / gen_ndr / svcctl.h
index b098eb1c42f0f69997a81fc0d357ba5758553262..9baa122e564c38bf4a9e9a0a1806e5a677d2977c 100644 (file)
@@ -81,11 +81,19 @@ struct ENUM_SERVICE_STATUS {
 enum SERVICE_CONTROL
 #ifndef USE_UINT_ENUMS
  {
-       FIXME=1
+       SVCCTL_CONTROL_STOP=0x00000001,
+       SVCCTL_CONTROL_PAUSE=0x00000002,
+       SVCCTL_CONTROL_CONTINUE=0x00000003,
+       SVCCTL_CONTROL_INTERROGATE=0x00000004,
+       SVCCTL_CONTROL_SHUTDOWN=0x00000005
 }
 #else
  { __donnot_use_enum_SERVICE_CONTROL=0x7FFFFFFF}
-#define FIXME ( 1 )
+#define SVCCTL_CONTROL_STOP ( 0x00000001 )
+#define SVCCTL_CONTROL_PAUSE ( 0x00000002 )
+#define SVCCTL_CONTROL_CONTINUE ( 0x00000003 )
+#define SVCCTL_CONTROL_INTERROGATE ( 0x00000004 )
+#define SVCCTL_CONTROL_SHUTDOWN ( 0x00000005 )
 #endif
 ;
 
@@ -137,7 +145,7 @@ struct svcctl_CloseServiceHandle {
 struct svcctl_ControlService {
        struct {
                struct policy_handle *handle;/* [ref] */
-               uint32_t control;
+               enum SERVICE_CONTROL control;
        } in;
 
        struct {
@@ -333,14 +341,14 @@ struct svcctl_EnumServicesStatusW {
                struct policy_handle *handle;/* [ref] */
                uint32_t type;
                uint32_t state;
-               uint32_t buf_size;
+               uint32_t buf_size;/* [range(0,262144)] */
                uint32_t *resume_handle;/* [unique] */
        } in;
 
        struct {
-               uint8_t *service;/* [size_is(buf_size)] */
-               uint32_t *bytes_needed;/* [ref] */
-               uint32_t *services_returned;/* [ref] */
+               uint8_t *service;/* [ref,size_is(buf_size)] */
+               uint32_t *bytes_needed;/* [ref,range(0,262144)] */
+               uint32_t *services_returned;/* [ref,range(0,262144)] */
                uint32_t *resume_handle;/* [unique] */
                WERROR result;
        } out;
@@ -721,12 +729,12 @@ struct svcctl_QueryServiceConfig2W {
        struct {
                struct policy_handle *handle;/* [ref] */
                uint32_t info_level;
-               uint32_t buf_size;
+               uint32_t buf_size;/* [range(0,8192)] */
        } in;
 
        struct {
-               uint8_t *buffer;
-               uint32_t *bytes_needed;/* [ref] */
+               uint8_t *buffer;/* [ref,size_is(buf_size)] */
+               uint32_t *bytes_needed;/* [ref,range(0,8192)] */
                WERROR result;
        } out;
 
@@ -737,12 +745,12 @@ struct svcctl_QueryServiceStatusEx {
        struct {
                struct policy_handle *handle;/* [ref] */
                uint32_t info_level;
-               uint32_t buf_size;
+               uint32_t buf_size;/* [range(0,8192)] */
        } in;
 
        struct {
-               uint8_t *buffer;
-               uint32_t *bytes_needed;/* [ref] */
+               uint8_t *buffer;/* [ref,size_is(buf_size)] */
+               uint32_t *bytes_needed;/* [ref,range(0,8192)] */
                WERROR result;
        } out;
 
@@ -777,16 +785,16 @@ struct EnumServicesStatusExW {
                uint32_t info_level;
                uint32_t type;
                uint32_t state;
-               uint32_t buf_size;
-               uint32_t *resume_handle;/* [unique] */
+               uint32_t buf_size;/* [range(0,262144)] */
+               const char *group_name;/* [unique,charset(UTF16)] */
+               uint32_t *resume_handle;/* [unique,range(0,262144)] */
        } in;
 
        struct {
-               uint8_t *services;
-               uint32_t *bytes_needed;/* [ref] */
-               uint32_t *service_returned;/* [ref] */
-               const char **group_name;/* [ref,charset(UTF16)] */
-               uint32_t *resume_handle;/* [unique] */
+               uint8_t *services;/* [ref,size_is(buf_size)] */
+               uint32_t *bytes_needed;/* [ref,range(0,262144)] */
+               uint32_t *service_returned;/* [ref,range(0,262144)] */
+               uint32_t *resume_handle;/* [unique,range(0,262144)] */
                WERROR result;
        } out;