The branch, master has been updated
       via  f36ffa768129f01b0c12d30bff5e4e205dd3676c (commit)
       via  c1e5f284569d7c9aece4fba0a2101305b16cae91 (commit)
      from  d70efa57ceae1011a6a55d57d0152fd1bc2bb192 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit f36ffa768129f01b0c12d30bff5e4e205dd3676c
Author: Günther Deschner <[EMAIL PROTECTED]>
Date:   Thu Oct 23 18:34:28 2008 +0200

    s3-build: remove duplicate svcctl bits and re-run make samba3-idl.
    
    Guenther

commit c1e5f284569d7c9aece4fba0a2101305b16cae91
Author: Günther Deschner <[EMAIL PROTECTED]>
Date:   Thu Oct 23 18:33:49 2008 +0200

    idl: add svcctl specific access bits.
    
    Guenther

-----------------------------------------------------------------------

Summary of changes:
 librpc/idl/svcctl.idl           |   47 +++++++++++++++++++++++++-
 source3/include/rpc_secdes.h    |   70 ---------------------------------------
 source3/librpc/gen_ndr/svcctl.h |    8 ++++
 3 files changed, 54 insertions(+), 71 deletions(-)


Changeset truncated at 500 lines:

diff --git a/librpc/idl/svcctl.idl b/librpc/idl/svcctl.idl
index 3eb686f..fa8e109 100644
--- a/librpc/idl/svcctl.idl
+++ b/librpc/idl/svcctl.idl
@@ -4,7 +4,7 @@
   svcctl interface definitions
 */
 
-import "misc.idl";
+import "misc.idl", "security.idl";
 [ uuid("367abb81-9844-35f1-ad32-98f038001003"),
   version(2.0),
   pointer_default(unique),
@@ -227,6 +227,9 @@ import "misc.idl";
 
        /*****************/
        /* Function 0x0f */
+
+       /* Service Control Manager Bits */
+
        typedef [bitmap32bit] bitmap {
                SC_RIGHT_MGR_CONNECT            = 0x0001,
                SC_RIGHT_MGR_CREATE_SERVICE     = 0x0002,
@@ -236,6 +239,23 @@ import "misc.idl";
                SC_RIGHT_MGR_MODIFY_BOOT_CONFIG = 0x0020
        } svcctl_MgrAccessMask;
 
+       const int SC_MANAGER_READ_ACCESS =
+               (SEC_STD_READ_CONTROL                   |
+                SC_RIGHT_MGR_CONNECT                   |
+                SC_RIGHT_MGR_ENUMERATE_SERVICE         |
+                SC_RIGHT_MGR_QUERY_LOCK_STATUS);
+
+       const int SC_MANAGER_EXECUTE_ACCESS = SC_MANAGER_READ_ACCESS;
+
+       const int SC_MANAGER_WRITE_ACCESS =
+               (SEC_STD_REQUIRED                       |
+                SC_MANAGER_READ_ACCESS                 |
+                SC_RIGHT_MGR_CREATE_SERVICE            |
+                SC_RIGHT_MGR_LOCK                      |
+                SC_RIGHT_MGR_MODIFY_BOOT_CONFIG);
+
+       const int SC_MANAGER_ALL_ACCESS = SC_MANAGER_WRITE_ACCESS;
+
        WERROR svcctl_OpenSCManagerW(
                [in,unique] [string,charset(UTF16)] uint16 *MachineName,
                [in,unique] [string,charset(UTF16)] uint16 *DatabaseName,
@@ -245,6 +265,9 @@ import "misc.idl";
 
        /*****************/
        /* Function 0x10 */
+
+       /* Service Object Bits */
+
        typedef [bitmap32bit] bitmap {
                SC_RIGHT_SVC_QUERY_CONFIG               = 0x0001,
                SC_RIGHT_SVC_CHANGE_CONFIG              = 0x0002,
@@ -257,6 +280,28 @@ import "misc.idl";
                SC_RIGHT_SVC_USER_DEFINED_CONTROL       = 0x0100
        } svcctl_ServiceAccessMask;
 
+       const int SERVICE_READ_ACCESS =
+               (SEC_STD_READ_CONTROL                   |
+                SC_RIGHT_SVC_ENUMERATE_DEPENDENTS      |
+                SC_RIGHT_SVC_INTERROGATE               |
+                SC_RIGHT_SVC_QUERY_CONFIG              |
+                SC_RIGHT_SVC_QUERY_STATUS              |
+                SC_RIGHT_SVC_USER_DEFINED_CONTROL);
+
+       const int SERVICE_EXECUTE_ACCESS =
+               (SERVICE_READ_ACCESS                    |
+                SC_RIGHT_SVC_START                     |
+                SC_RIGHT_SVC_STOP                      |
+                SC_RIGHT_SVC_PAUSE_CONTINUE);
+
+       const int SERVICE_WRITE_ACCESS =
+               (SEC_STD_REQUIRED                       |
+                SERVICE_READ_ACCESS                    |
+                SERVICE_EXECUTE_ACCESS                 |
+                SC_RIGHT_SVC_CHANGE_CONFIG);
+
+       const int SERVICE_ALL_ACCESS = SERVICE_WRITE_ACCESS;
+
        WERROR svcctl_OpenServiceW(
                [in,ref] policy_handle *scmanager_handle,
                [in] [string,charset(UTF16)] uint16 ServiceName[],
diff --git a/source3/include/rpc_secdes.h b/source3/include/rpc_secdes.h
index 71fba41..fb73498 100644
--- a/source3/include/rpc_secdes.h
+++ b/source3/include/rpc_secdes.h
@@ -386,76 +386,6 @@ struct standard_mapping {
                SA_RIGHT_ALIAS_LOOKUP_INFO )    /* 0x00020008 */
 
 /*
- * Acces bits for the svcctl objects
- */
-
-/* Service Control Manager Bits */ 
-
-#if 0
-#define SC_RIGHT_MGR_CONNECT                   0x0001
-#define SC_RIGHT_MGR_CREATE_SERVICE            0x0002
-#define SC_RIGHT_MGR_ENUMERATE_SERVICE         0x0004
-#define SC_RIGHT_MGR_LOCK                      0x0008
-#define SC_RIGHT_MGR_QUERY_LOCK_STATUS         0x0010
-#define SC_RIGHT_MGR_MODIFY_BOOT_CONFIG                0x0020
-
-#endif
-
-#define SC_MANAGER_READ_ACCESS \
-       ( STANDARD_RIGHTS_READ_ACCESS           | \
-         SC_RIGHT_MGR_CONNECT                  | \
-         SC_RIGHT_MGR_ENUMERATE_SERVICE        | \
-         SC_RIGHT_MGR_QUERY_LOCK_STATUS )
-
-#define SC_MANAGER_EXECUTE_ACCESS SC_MANAGER_READ_ACCESS
-
-#define SC_MANAGER_WRITE_ACCESS \
-       ( STANDARD_RIGHTS_REQUIRED_ACCESS       | \
-         SC_MANAGER_READ_ACCESS                | \
-         SC_RIGHT_MGR_CREATE_SERVICE           | \
-         SC_RIGHT_MGR_LOCK                     | \
-         SC_RIGHT_MGR_MODIFY_BOOT_CONFIG )
-
-#define SC_MANAGER_ALL_ACCESS SC_MANAGER_WRITE_ACCESS
-
-/* Service Object Bits */
-
-#if 0
-#define SC_RIGHT_SVC_QUERY_CONFIG              0x0001
-#define SC_RIGHT_SVC_CHANGE_CONFIG             0x0002
-#define SC_RIGHT_SVC_QUERY_STATUS              0x0004
-#define SC_RIGHT_SVC_ENUMERATE_DEPENDENTS      0x0008
-#define SC_RIGHT_SVC_START                     0x0010
-#define SC_RIGHT_SVC_STOP                      0x0020
-#define SC_RIGHT_SVC_PAUSE_CONTINUE            0x0040
-#define SC_RIGHT_SVC_INTERROGATE               0x0080
-#define SC_RIGHT_SVC_USER_DEFINED_CONTROL      0x0100
-
-#endif
-
-#define SERVICE_READ_ACCESS \
-       ( STANDARD_RIGHTS_READ_ACCESS           | \
-         SC_RIGHT_SVC_ENUMERATE_DEPENDENTS     | \
-         SC_RIGHT_SVC_INTERROGATE              | \
-         SC_RIGHT_SVC_QUERY_CONFIG             | \
-         SC_RIGHT_SVC_QUERY_STATUS             | \
-         SC_RIGHT_SVC_USER_DEFINED_CONTROL )
-
-#define SERVICE_EXECUTE_ACCESS \
-       ( SERVICE_READ_ACCESS                   | \
-         SC_RIGHT_SVC_START                    | \
-         SC_RIGHT_SVC_STOP                     | \
-         SC_RIGHT_SVC_PAUSE_CONTINUE )
-
-#define SERVICE_WRITE_ACCESS \
-       ( STANDARD_RIGHTS_REQUIRED_ACCESS       | \
-         SERVICE_READ_ACCESS                   | \
-         SERVICE_EXECUTE_ACCESS                | \
-         SC_RIGHT_SVC_CHANGE_CONFIG )
-
-#define SERVICE_ALL_ACCESS SERVICE_WRITE_ACCESS
-
-/*
  * Access Bits for registry ACLS
  */
 
diff --git a/source3/librpc/gen_ndr/svcctl.h b/source3/librpc/gen_ndr/svcctl.h
index 42ed039..5da6979 100644
--- a/source3/librpc/gen_ndr/svcctl.h
+++ b/source3/librpc/gen_ndr/svcctl.h
@@ -18,6 +18,14 @@
 #define SERVICE_STATE_INACTIVE ( 0x02 )
 #define SERVICE_STATE_ALL      ( 0x03 )
 #define SV_TYPE_ALL    ( 0xFFFFFFFF )
+#define SC_MANAGER_READ_ACCESS ( 
(STANDARD_RIGHTS_READ_ACCESS|SC_RIGHT_MGR_CONNECT|SC_RIGHT_MGR_ENUMERATE_SERVICE|SC_RIGHT_MGR_QUERY_LOCK_STATUS)
 )
+#define SC_MANAGER_EXECUTE_ACCESS      ( SC_MANAGER_READ_ACCESS )
+#define SC_MANAGER_WRITE_ACCESS        ( 
(STANDARD_RIGHTS_REQUIRED_ACCESS|SC_MANAGER_READ_ACCESS|SC_RIGHT_MGR_CREATE_SERVICE|SC_RIGHT_MGR_LOCK|SC_RIGHT_MGR_MODIFY_BOOT_CONFIG)
 )
+#define SC_MANAGER_ALL_ACCESS  ( SC_MANAGER_WRITE_ACCESS )
+#define SERVICE_READ_ACCESS    ( 
(STANDARD_RIGHTS_READ_ACCESS|SC_RIGHT_SVC_ENUMERATE_DEPENDENTS|SC_RIGHT_SVC_INTERROGATE|SC_RIGHT_SVC_QUERY_CONFIG|SC_RIGHT_SVC_QUERY_STATUS|SC_RIGHT_SVC_USER_DEFINED_CONTROL)
 )
+#define SERVICE_EXECUTE_ACCESS ( 
(SERVICE_READ_ACCESS|SC_RIGHT_SVC_START|SC_RIGHT_SVC_STOP|SC_RIGHT_SVC_PAUSE_CONTINUE)
 )
+#define SERVICE_WRITE_ACCESS   ( 
(STANDARD_RIGHTS_REQUIRED_ACCESS|SERVICE_READ_ACCESS|SERVICE_EXECUTE_ACCESS|SC_RIGHT_SVC_CHANGE_CONFIG)
 )
+#define SERVICE_ALL_ACCESS     ( SERVICE_WRITE_ACCESS )
 struct SERVICE_LOCK_STATUS {
        uint32_t is_locked;
        const char *lock_owner;/* [unique,charset(UTF16)] */


-- 
Samba Shared Repository

Reply via email to