Remove SEC_ACCESS. It's a uint32_t.
authorJeremy Allison <jra@samba.org>
Thu, 9 Oct 2008 16:49:03 +0000 (09:49 -0700)
committerJeremy Allison <jra@samba.org>
Thu, 9 Oct 2008 16:49:03 +0000 (09:49 -0700)
Jeremy.

20 files changed:
source3/include/proto.h
source3/include/rpc_secdes.h
source3/lib/display_sec.c
source3/lib/secace.c
source3/lib/secdesc.c
source3/lib/sharesec.c
source3/lib/util_seaccess.c
source3/libgpo/gpo_reg.c
source3/libsmb/libsmb_xattr.c
source3/modules/nfs4_acls.c
source3/modules/vfs_afsacl.c
source3/printing/nt_printing.c
source3/registry/reg_dispatcher.c
source3/rpc_server/srv_lsa_nt.c
source3/rpc_server/srv_samr_nt.c
source3/rpc_server/srv_svcctl_nt.c
source3/services/services_db.c
source3/smbd/posix_acls.c
source3/utils/sharesec.c
source3/utils/smbcacls.c

index 99557a25a15fada59e14cce5e83aacb4627c935f..b7a7ed547930836f368fa7c196ac7d9fb4977bd3 100644 (file)
@@ -497,7 +497,7 @@ TALLOC_CTX *debug_ctx(void);
 /* The following definitions come from lib/display_sec.c  */
 
 char *get_sec_mask_str(TALLOC_CTX *ctx, uint32 type);
-void display_sec_access(SEC_ACCESS *info);
+void display_sec_access(uint32_t *info);
 void display_sec_ace_flags(uint8_t flags);
 void display_sec_ace(SEC_ACE *ace);
 void display_sec_acl(SEC_ACL *sec_acl);
@@ -776,7 +776,6 @@ NTSTATUS sec_desc_mod_sid(SEC_DESC *sd, DOM_SID *sid, uint32 mask);
 NTSTATUS sec_desc_del_sid(TALLOC_CTX *ctx, SEC_DESC **psd, DOM_SID *sid, size_t *sd_size);
 SEC_DESC_BUF *se_create_child_secdesc(TALLOC_CTX *ctx, SEC_DESC *parent_ctr, 
                                      bool child_container);
-void init_sec_access(uint32 *t, uint32 mask);
 
 /* The following definitions come from lib/select.c  */
 
index 83103b73869c1780aee22c56896ef6de39859c38..71fba41fe949da76bd7b67011af9975b084e8a5c 100644 (file)
@@ -70,9 +70,6 @@
                                        PROTECTED_SACL_SECURITY_INFORMATION|\
                                        PROTECTED_DACL_SECURITY_INFORMATION)
 
-/* SEC_ACCESS */
-typedef uint32 SEC_ACCESS;
-
 /* SEC_ACE */
 typedef struct security_ace SEC_ACE;
 #define  SEC_ACE_HEADER_SIZE (2 * sizeof(uint8) + sizeof(uint16) + sizeof(uint32))
index 67392e45688c5478ddc7c06d3570a7e96535ebea..5427a8173ee09bcf3f727e413ca15608e2c7bfc0 100644 (file)
@@ -118,7 +118,7 @@ char *get_sec_mask_str(TALLOC_CTX *ctx, uint32 type)
 /****************************************************************************
  display sec_access structure
  ****************************************************************************/
-void display_sec_access(SEC_ACCESS *info)
+void display_sec_access(uint32_t *info)
 {
        char *mask_str = get_sec_mask_str(NULL, *info);
        printf("\t\tPermissions: 0x%x: %s\n", *info, mask_str ? mask_str : "");
index 8760a6109a7ba95f30e5c7f2bf7b4c80317baa61..9f5a0c02ba645d831c94589a794b9a60ba4ef2bc 100644 (file)
@@ -55,7 +55,7 @@ void sec_ace_copy(SEC_ACE *ace_dest, SEC_ACE *ace_src)
 ********************************************************************/
 
 void init_sec_ace(SEC_ACE *t, const DOM_SID *sid, enum security_ace_type type,
-                 uint32 mask, uint8 flag)
+                 uint32_t mask, uint8 flag)
 {
        t->type = type;
        t->flags = flag;
index 4965200bc1129f254798f3faf5ba87902a3d416c..52ff067d6ab358936319e729adae33cfef77fd59 100644 (file)
@@ -512,7 +512,7 @@ SEC_DESC_BUF *se_create_child_secdesc(TALLOC_CTX *ctx, SEC_DESC *parent_ctr,
                if (!inherit)
                        continue;
 
-               init_sec_access(&new_ace->access_mask, ace->access_mask);
+               new_ace->access_mask = ace->access_mask;
                init_sec_ace(new_ace, &ace->trustee, ace->type,
                             new_ace->access_mask, new_flags);
 
@@ -546,14 +546,3 @@ SEC_DESC_BUF *se_create_child_secdesc(TALLOC_CTX *ctx, SEC_DESC *parent_ctr,
 
        return sdb;
 }
-
-/*******************************************************************
- Sets up a SEC_ACCESS structure.
-********************************************************************/
-
-void init_sec_access(uint32 *t, uint32 mask)
-{
-       *t = mask;
-}
-
-
index 33f66ca47f5255621b21985f8c68f91210816608..298655e1819ab9df57027dfe5f846eb3083ea12a 100644 (file)
@@ -124,7 +124,7 @@ static bool share_info_db_init(void)
 
 SEC_DESC *get_share_security_default( TALLOC_CTX *ctx, size_t *psize, uint32 def_access)
 {
-       SEC_ACCESS sa;
+       uint32_t sa;
        SEC_ACE ace;
        SEC_ACL *psa = NULL;
        SEC_DESC *psd = NULL;
@@ -132,7 +132,7 @@ SEC_DESC *get_share_security_default( TALLOC_CTX *ctx, size_t *psize, uint32 def
 
        se_map_generic(&spec_access, &file_generic_mapping);
 
-       init_sec_access(&sa, def_access | spec_access );
+       sa = (def_access | spec_access );
        init_sec_ace(&ace, &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED, sa, 0);
 
        if ((psa = make_sec_acl(ctx, NT4_ACL_REVISION, 1, &ace)) != NULL) {
@@ -332,7 +332,7 @@ bool parse_usershare_acl(TALLOC_CTX *ctx, const char *acl_str, SEC_DESC **ppsd)
        }
 
        for (i = 0; i < num_aces; i++) {
-               SEC_ACCESS sa;
+               uint32_t sa;
                uint32 g_access;
                uint32 s_access;
                DOM_SID sid;
@@ -380,7 +380,7 @@ bool parse_usershare_acl(TALLOC_CTX *ctx, const char *acl_str, SEC_DESC **ppsd)
                pacl++; /* Go past any ',' */
 
                se_map_generic(&s_access, &file_generic_mapping);
-               init_sec_access(&sa, g_access | s_access );
+               sa = (g_access | s_access);
                init_sec_ace(&ace_list[i], &sid, type, sa, 0);
        }
 
index cab4261adf14782f854e0d37fbfb77a38e8f84a7..7e461556b3758fd3e228874aa5d5105d03fa7309 100644 (file)
@@ -30,7 +30,7 @@ extern NT_USER_TOKEN anonymous_token;
 static uint32 check_ace(SEC_ACE *ace, const NT_USER_TOKEN *token, uint32 acc_desired, 
                        NTSTATUS *status)
 {
-       uint32 mask = ace->access_mask;
+       uint32_t mask = ace->access_mask;
 
        /*
         * Inherit only is ignored.
@@ -346,7 +346,6 @@ NTSTATUS samr_make_sam_obj_sd(TALLOC_CTX *ctx, SEC_DESC **psd, size_t *sd_size)
        DOM_SID act_sid;
 
        SEC_ACE ace[3];
-       SEC_ACCESS mask;
 
        SEC_ACL *psa = NULL;
 
@@ -357,13 +356,14 @@ NTSTATUS samr_make_sam_obj_sd(TALLOC_CTX *ctx, SEC_DESC **psd, size_t *sd_size)
        sid_append_rid(&act_sid, BUILTIN_ALIAS_RID_ACCOUNT_OPS);
 
        /*basic access for every one*/
-       init_sec_access(&mask, GENERIC_RIGHTS_SAM_EXECUTE | GENERIC_RIGHTS_SAM_READ);
-       init_sec_ace(&ace[0], &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[0], &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED,
+               GENERIC_RIGHTS_SAM_EXECUTE | GENERIC_RIGHTS_SAM_READ, 0);
 
        /*full access for builtin aliases Administrators and Account Operators*/
-       init_sec_access(&mask, GENERIC_RIGHTS_SAM_ALL_ACCESS);
-       init_sec_ace(&ace[1], &adm_sid, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
-       init_sec_ace(&ace[2], &act_sid, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[1], &adm_sid,
+               SEC_ACE_TYPE_ACCESS_ALLOWED, GENERIC_RIGHTS_SAM_ALL_ACCESS, 0);
+       init_sec_ace(&ace[2], &act_sid,
+               SEC_ACE_TYPE_ACCESS_ALLOWED, GENERIC_RIGHTS_SAM_ALL_ACCESS, 0);
 
        if ((psa = make_sec_acl(ctx, NT4_ACL_REVISION, 3, ace)) == NULL)
                return NT_STATUS_NO_MEMORY;
index 920deeb189b54aef09011952be23e45c9e92fabf..d49315021e4eccb8cb3c6184f5cbaa524e7902ce 100644 (file)
@@ -689,25 +689,25 @@ static WERROR gp_reg_generate_sd(TALLOC_CTX *mem_ctx,
                                 size_t *sd_size)
 {
        SEC_ACE ace[6];
-       SEC_ACCESS mask;
+       uint32_t mask;
 
        SEC_ACL *acl = NULL;
 
        uint8_t inherit_flags;
 
-       init_sec_access(&mask, REG_KEY_ALL);
+       mask = REG_KEY_ALL;
        init_sec_ace(&ace[0],
                     &global_sid_System,
                     SEC_ACE_TYPE_ACCESS_ALLOWED,
                     mask, 0);
 
-       init_sec_access(&mask, REG_KEY_ALL);
+       mask = REG_KEY_ALL;
        init_sec_ace(&ace[1],
                     &global_sid_Builtin_Administrators,
                     SEC_ACE_TYPE_ACCESS_ALLOWED,
                     mask, 0);
 
-       init_sec_access(&mask, REG_KEY_READ);
+       mask = REG_KEY_READ;
        init_sec_ace(&ace[2],
                     sid ? sid : &global_sid_Authenticated_Users,
                     SEC_ACE_TYPE_ACCESS_ALLOWED,
@@ -717,19 +717,19 @@ static WERROR gp_reg_generate_sd(TALLOC_CTX *mem_ctx,
                        SEC_ACE_FLAG_CONTAINER_INHERIT |
                        SEC_ACE_FLAG_INHERIT_ONLY;
 
-       init_sec_access(&mask, REG_KEY_ALL);
+       mask = REG_KEY_ALL;
        init_sec_ace(&ace[3],
                     &global_sid_System,
                     SEC_ACE_TYPE_ACCESS_ALLOWED,
                     mask, inherit_flags);
 
-       init_sec_access(&mask, REG_KEY_ALL);
+       mask = REG_KEY_ALL;
        init_sec_ace(&ace[4],
                     &global_sid_Builtin_Administrators,
                     SEC_ACE_TYPE_ACCESS_ALLOWED,
                     mask, inherit_flags);
 
-       init_sec_access(&mask, REG_KEY_READ);
+       mask = REG_KEY_READ;
        init_sec_ace(&ace[5],
                     sid ? sid : &global_sid_Authenticated_Users,
                     SEC_ACE_TYPE_ACCESS_ALLOWED,
index f1b3d1415e94d090c6495ed5d3270534be641d5f..ea2c46953c7a612a9993a86f263063a660dd3242 100644 (file)
@@ -266,7 +266,7 @@ parse_ace(struct cli_state *ipc_cli,
         unsigned int aflags;
         unsigned int amask;
        DOM_SID sid;
-       SEC_ACCESS mask;
+       uint32_t mask;
        const struct perm_value *v;
         struct perm_value {
                 const char *perm;
index f1b8cfffced9cc68afaf406fd3bd81be82d1f7be..f411176590113f9c368cdbfb3943fc48a9c1a240 100644 (file)
@@ -221,7 +221,7 @@ static bool smbacl4_nfs42win(TALLOC_CTX *mem_ctx, SMB4ACL_T *acl, /* in */
        }
 
        for (aceint=aclint->first; aceint!=NULL; aceint=(SMB_ACE4_INT_T *)aceint->next) {
-               SEC_ACCESS mask;
+               uint32_t mask;
                DOM_SID sid;
                SMB_ACE4PROP_T  *ace = &aceint->prop;
 
@@ -256,7 +256,7 @@ static bool smbacl4_nfs42win(TALLOC_CTX *mem_ctx, SMB4ACL_T *acl, /* in */
                DEBUG(10, ("mapped %d to %s\n", ace->who.id,
                           sid_string_dbg(&sid)));
 
-               init_sec_access(&mask, ace->aceMask);
+               mask = ace->aceMask;
                init_sec_ace(&nt_ace_list[good_aces++], &sid,
                        ace->aceType, mask,
                        ace->aceFlags & 0xf);
index c78369ac13d72703f110b4fc2f4cf61434df279d..8c89d2fd9f935026d9175694701bb3557571e64f 100644 (file)
@@ -592,7 +592,6 @@ static size_t afs_to_nt_acl_common(struct afs_acl *afs_acl,
 {
        SEC_ACE *nt_ace_list;
        DOM_SID owner_sid, group_sid;
-       SEC_ACCESS mask;
        SEC_ACL *psa = NULL;
        int good_aces;
        size_t sd_size;
@@ -616,7 +615,7 @@ static size_t afs_to_nt_acl_common(struct afs_acl *afs_acl,
        good_aces = 0;
 
        while (afs_ace != NULL) {
-               uint32 nt_rights;
+               uint32_t nt_rights;
                uint8 flag = SEC_ACE_FLAG_OBJECT_INHERIT |
                        SEC_ACE_FLAG_CONTAINER_INHERIT;
 
@@ -633,9 +632,8 @@ static size_t afs_to_nt_acl_common(struct afs_acl *afs_acl,
                else
                        nt_rights = afs_to_nt_file_rights(afs_ace->rights);
 
-               init_sec_access(&mask, nt_rights);
                init_sec_ace(&nt_ace_list[good_aces++], &(afs_ace->sid),
-                            SEC_ACE_TYPE_ACCESS_ALLOWED, mask, flag);
+                            SEC_ACE_TYPE_ACCESS_ALLOWED, nt_rights, flag);
                afs_ace = afs_ace->next;
        }
 
index 19c44d1bbbc589bc4404af1ceca317895cc60162..850375e82b300a6e0a205fb42fafdc24425206fe 100644 (file)
@@ -5493,7 +5493,7 @@ static SEC_DESC_BUF *construct_default_printer_sdb(TALLOC_CTX *ctx)
 {
        SEC_ACE ace[5]; /* max number of ace entries */
        int i = 0;
-       SEC_ACCESS sa;
+       uint32_t sa;
        SEC_ACL *psa = NULL;
        SEC_DESC_BUF *sdb = NULL;
        SEC_DESC *psd = NULL;
@@ -5502,7 +5502,7 @@ static SEC_DESC_BUF *construct_default_printer_sdb(TALLOC_CTX *ctx)
 
        /* Create an ACE where Everyone is allowed to print */
 
-       init_sec_access(&sa, PRINTER_ACE_PRINT);
+       sa = PRINTER_ACE_PRINT;
        init_sec_ace(&ace[i++], &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED,
                     sa, SEC_ACE_FLAG_CONTAINER_INHERIT);
 
@@ -5514,7 +5514,7 @@ static SEC_DESC_BUF *construct_default_printer_sdb(TALLOC_CTX *ctx)
                sid_copy(&domadmins_sid, get_global_sam_sid());
                sid_append_rid(&domadmins_sid, DOMAIN_GROUP_RID_ADMINS);
                
-               init_sec_access(&sa, PRINTER_ACE_FULL_CONTROL);
+               sa = PRINTER_ACE_FULL_CONTROL;
                init_sec_ace(&ace[i++], &domadmins_sid, 
                        SEC_ACE_TYPE_ACCESS_ALLOWED, sa, 
                        SEC_ACE_FLAG_OBJECT_INHERIT | SEC_ACE_FLAG_INHERIT_ONLY);
@@ -5524,7 +5524,7 @@ static SEC_DESC_BUF *construct_default_printer_sdb(TALLOC_CTX *ctx)
        else if (secrets_fetch_domain_sid(lp_workgroup(), &adm_sid)) {
                sid_append_rid(&adm_sid, DOMAIN_USER_RID_ADMIN);
 
-               init_sec_access(&sa, PRINTER_ACE_FULL_CONTROL);
+               sa = PRINTER_ACE_FULL_CONTROL;
                init_sec_ace(&ace[i++], &adm_sid, 
                        SEC_ACE_TYPE_ACCESS_ALLOWED, sa, 
                        SEC_ACE_FLAG_OBJECT_INHERIT | SEC_ACE_FLAG_INHERIT_ONLY);
@@ -5534,7 +5534,7 @@ static SEC_DESC_BUF *construct_default_printer_sdb(TALLOC_CTX *ctx)
 
        /* add BUILTIN\Administrators as FULL CONTROL */
 
-       init_sec_access(&sa, PRINTER_ACE_FULL_CONTROL);
+       sa = PRINTER_ACE_FULL_CONTROL;
        init_sec_ace(&ace[i++], &global_sid_Builtin_Administrators, 
                SEC_ACE_TYPE_ACCESS_ALLOWED, sa, 
                SEC_ACE_FLAG_OBJECT_INHERIT | SEC_ACE_FLAG_INHERIT_ONLY);
index c68ecdedebcd01014a32cd57505af0de5a5f91b8..d06410a1b37f1995b231a01300b544cf9b3b4f94 100644 (file)
@@ -37,7 +37,6 @@ static const struct generic_mapping reg_generic_map =
 static WERROR construct_registry_sd(TALLOC_CTX *ctx, SEC_DESC **psd)
 {
        SEC_ACE ace[3];
-       SEC_ACCESS mask;
        size_t i = 0;
        SEC_DESC *sd;
        SEC_ACL *acl;
@@ -45,21 +44,18 @@ static WERROR construct_registry_sd(TALLOC_CTX *ctx, SEC_DESC **psd)
 
        /* basic access for Everyone */
 
-       init_sec_access(&mask, REG_KEY_READ);
        init_sec_ace(&ace[i++], &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED,
-                    mask, 0);
+                    REG_KEY_READ, 0);
 
        /* Full Access 'BUILTIN\Administrators' */
 
-       init_sec_access(&mask, REG_KEY_ALL);
        init_sec_ace(&ace[i++], &global_sid_Builtin_Administrators,
-                    SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+                    SEC_ACE_TYPE_ACCESS_ALLOWED, REG_KEY_ALL, 0);
 
        /* Full Access 'NT Authority\System' */
 
-       init_sec_access(&mask, REG_KEY_ALL );
        init_sec_ace(&ace[i++], &global_sid_System, SEC_ACE_TYPE_ACCESS_ALLOWED,
-                    mask, 0);
+                    REG_KEY_ALL, 0);
 
        /* create the security descriptor */
 
index 94517f347879f1d779b217a46eea169548d8714f..0e9d12124217112162ae344e3c5e63bad3c1329b 100644 (file)
@@ -290,22 +290,18 @@ static NTSTATUS lsa_get_generic_sd(TALLOC_CTX *mem_ctx, SEC_DESC **sd, size_t *s
        DOM_SID adm_sid;
 
        SEC_ACE ace[3];
-       SEC_ACCESS mask;
 
        SEC_ACL *psa = NULL;
 
-       init_sec_access(&mask, LSA_POLICY_EXECUTE);
-       init_sec_ace(&ace[0], &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[0], &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED, LSA_POLICY_EXECUTE, 0);
 
        sid_copy(&adm_sid, get_global_sam_sid());
        sid_append_rid(&adm_sid, DOMAIN_GROUP_RID_ADMINS);
-       init_sec_access(&mask, LSA_POLICY_ALL_ACCESS);
-       init_sec_ace(&ace[1], &adm_sid, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[1], &adm_sid, SEC_ACE_TYPE_ACCESS_ALLOWED, LSA_POLICY_ALL_ACCESS, 0);
 
        sid_copy(&local_adm_sid, &global_sid_Builtin);
        sid_append_rid(&local_adm_sid, BUILTIN_ALIAS_RID_ADMINS);
-       init_sec_access(&mask, LSA_POLICY_ALL_ACCESS);
-       init_sec_ace(&ace[2], &local_adm_sid, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[2], &local_adm_sid, SEC_ACE_TYPE_ACCESS_ALLOWED, LSA_POLICY_ALL_ACCESS, 0);
 
        if((psa = make_sec_acl(mem_ctx, NT4_ACL_REVISION, 3, ace)) == NULL)
                return NT_STATUS_NO_MEMORY;
index 1b1e98c049cc0ade0cdc9d7bcec8d9b8b8d2eccc..6455f0237496dd1f8d4ab4a9df9ae14554ab1627 100644 (file)
@@ -113,36 +113,35 @@ static NTSTATUS make_samr_object_sd( TALLOC_CTX *ctx, SEC_DESC **psd, size_t *sd
 {
        DOM_SID domadmin_sid;
        SEC_ACE ace[5];         /* at most 5 entries */
-       SEC_ACCESS mask;
        size_t i = 0;
 
        SEC_ACL *psa = NULL;
 
        /* basic access for Everyone */
 
-       init_sec_access(&mask, map->generic_execute | map->generic_read );
-       init_sec_ace(&ace[i++], &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[i++], &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED,
+                       map->generic_execute | map->generic_read, 0);
 
        /* add Full Access 'BUILTIN\Administrators' and 'BUILTIN\Account Operators */
 
-       init_sec_access(&mask, map->generic_all);
-
-       init_sec_ace(&ace[i++], &global_sid_Builtin_Administrators, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
-       init_sec_ace(&ace[i++], &global_sid_Builtin_Account_Operators, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[i++], &global_sid_Builtin_Administrators,
+                       SEC_ACE_TYPE_ACCESS_ALLOWED, map->generic_all, 0);
+       init_sec_ace(&ace[i++], &global_sid_Builtin_Account_Operators,
+                       SEC_ACE_TYPE_ACCESS_ALLOWED, map->generic_all, 0);
 
        /* Add Full Access for Domain Admins if we are a DC */
 
        if ( IS_DC ) {
                sid_copy( &domadmin_sid, get_global_sam_sid() );
                sid_append_rid( &domadmin_sid, DOMAIN_GROUP_RID_ADMINS );
-               init_sec_ace(&ace[i++], &domadmin_sid, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+               init_sec_ace(&ace[i++], &domadmin_sid,
+                       SEC_ACE_TYPE_ACCESS_ALLOWED, map->generic_all, 0);
        }
 
        /* if we have a sid, give it some special access */
 
        if ( sid ) {
-               init_sec_access( &mask, sid_access );
-               init_sec_ace(&ace[i++], sid, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+               init_sec_ace(&ace[i++], sid, SEC_ACE_TYPE_ACCESS_ALLOWED, sid_access, 0);
        }
 
        /* create the security descriptor */
index 6bb538a3115384a3c148287fbfcb5b69c238f6bd..a57d0ff4a4f914135762f690ec8d0846e2cb692d 100644 (file)
@@ -140,7 +140,6 @@ static NTSTATUS svcctl_access_check( SEC_DESC *sec_desc, NT_USER_TOKEN *token,
 static SEC_DESC* construct_scm_sd( TALLOC_CTX *ctx )
 {
        SEC_ACE ace[2];
-       SEC_ACCESS mask;
        size_t i = 0;
        SEC_DESC *sd;
        SEC_ACL *acl;
@@ -148,13 +147,13 @@ static SEC_DESC* construct_scm_sd( TALLOC_CTX *ctx )
 
        /* basic access for Everyone */
 
-       init_sec_access(&mask, SC_MANAGER_READ_ACCESS );
-       init_sec_ace(&ace[i++], &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[i++], &global_sid_World,
+               SEC_ACE_TYPE_ACCESS_ALLOWED, SC_MANAGER_READ_ACCESS, 0);
 
        /* Full Access 'BUILTIN\Administrators' */
 
-       init_sec_access(&mask,SC_MANAGER_ALL_ACCESS );
-       init_sec_ace(&ace[i++], &global_sid_Builtin_Administrators, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[i++], &global_sid_Builtin_Administrators,
+               SEC_ACE_TYPE_ACCESS_ALLOWED, SC_MANAGER_ALL_ACCESS, 0);
 
 
        /* create the security descriptor */
index 8f58c2dbfa0baafea5168a25537423c6217f6f11..0f5264bcd859c0b6a46c8da146a84de1f41dea58 100644 (file)
@@ -89,7 +89,6 @@ struct service_display_info common_unix_svcs[] = {
 static SEC_DESC* construct_service_sd( TALLOC_CTX *ctx )
 {
        SEC_ACE ace[4];
-       SEC_ACCESS mask;
        size_t i = 0;
        SEC_DESC *sd = NULL;
        SEC_ACL *acl = NULL;
@@ -97,15 +96,16 @@ static SEC_DESC* construct_service_sd( TALLOC_CTX *ctx )
 
        /* basic access for Everyone */
 
-       init_sec_access(&mask, SERVICE_READ_ACCESS );
-       init_sec_ace(&ace[i++], &global_sid_World, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[i++], &global_sid_World,
+               SEC_ACE_TYPE_ACCESS_ALLOWED, SERVICE_READ_ACCESS, 0);
 
-       init_sec_access(&mask,SERVICE_EXECUTE_ACCESS );
-       init_sec_ace(&ace[i++], &global_sid_Builtin_Power_Users, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[i++], &global_sid_Builtin_Power_Users,
+                       SEC_ACE_TYPE_ACCESS_ALLOWED, SERVICE_EXECUTE_ACCESS, 0);
 
-       init_sec_access(&mask,SERVICE_ALL_ACCESS );
-       init_sec_ace(&ace[i++], &global_sid_Builtin_Server_Operators, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
-       init_sec_ace(&ace[i++], &global_sid_Builtin_Administrators, SEC_ACE_TYPE_ACCESS_ALLOWED, mask, 0);
+       init_sec_ace(&ace[i++], &global_sid_Builtin_Server_Operators,
+               SEC_ACE_TYPE_ACCESS_ALLOWED, SERVICE_ALL_ACCESS, 0);
+       init_sec_ace(&ace[i++], &global_sid_Builtin_Administrators,
+               SEC_ACE_TYPE_ACCESS_ALLOWED, SERVICE_ALL_ACCESS, 0);
 
        /* create the security descriptor */
 
index da17e53b2ca5268ee43f22b017454a963e320a82..4e35e9deaabd342b3a2d1d5c6814acfdb12c838e 100644 (file)
@@ -890,13 +890,12 @@ static bool nt4_compatible_acls(void)
  not get. Deny entries are implicit on get with ace->perms = 0.
 ****************************************************************************/
 
-static SEC_ACCESS map_canon_ace_perms(int snum,
+static uint32_t map_canon_ace_perms(int snum,
                                enum security_ace_type *pacl_type,
                                mode_t perms,
                                bool directory_ace)
 {
-       SEC_ACCESS sa;
-       uint32 nt_mask = 0;
+       uint32_t nt_mask = 0;
 
        *pacl_type = SEC_ACE_TYPE_ACCESS_ALLOWED;
 
@@ -935,8 +934,7 @@ static SEC_ACCESS map_canon_ace_perms(int snum,
        DEBUG(10,("map_canon_ace_perms: Mapped (UNIX) %x to (NT) %x\n",
                        (unsigned int)perms, (unsigned int)nt_mask ));
 
-       init_sec_access(&sa,nt_mask);
-       return sa;
+       return nt_mask;
 }
 
 /****************************************************************************
@@ -2962,9 +2960,7 @@ static NTSTATUS posix_get_nt_acl_common(struct connection_struct *conn,
                         */
 
                        for (ace = file_ace; ace != NULL; ace = ace->next) {
-                               SEC_ACCESS acc;
-
-                               acc = map_canon_ace_perms(SNUM(conn),
+                               uint32_t acc = map_canon_ace_perms(SNUM(conn),
                                                &nt_acl_type,
                                                ace->perms,
                                                S_ISDIR(sbuf->st_mode));
@@ -2979,19 +2975,14 @@ static NTSTATUS posix_get_nt_acl_common(struct connection_struct *conn,
                        /* The User must have access to a profile share - even
                         * if we can't map the SID. */
                        if (lp_profile_acls(SNUM(conn))) {
-                               SEC_ACCESS acc;
-
-                               init_sec_access(&acc,FILE_GENERIC_ALL);
                                init_sec_ace(&nt_ace_list[num_aces++],
                                                &global_sid_Builtin_Users,
                                                SEC_ACE_TYPE_ACCESS_ALLOWED,
-                                               acc, 0);
+                                               FILE_GENERIC_ALL, 0);
                        }
 
                        for (ace = dir_ace; ace != NULL; ace = ace->next) {
-                               SEC_ACCESS acc;
-
-                               acc = map_canon_ace_perms(SNUM(conn),
+                               uint32_t acc = map_canon_ace_perms(SNUM(conn),
                                                &nt_acl_type,
                                                ace->perms,
                                                S_ISDIR(sbuf->st_mode));
@@ -3009,10 +3000,7 @@ static NTSTATUS posix_get_nt_acl_common(struct connection_struct *conn,
                        /* The User must have access to a profile share - even
                         * if we can't map the SID. */
                        if (lp_profile_acls(SNUM(conn))) {
-                               SEC_ACCESS acc;
-
-                               init_sec_access(&acc,FILE_GENERIC_ALL);
-                               init_sec_ace(&nt_ace_list[num_aces++], &global_sid_Builtin_Users, SEC_ACE_TYPE_ACCESS_ALLOWED, acc,
+                               init_sec_ace(&nt_ace_list[num_aces++], &global_sid_Builtin_Users, SEC_ACE_TYPE_ACCESS_ALLOWED, FILE_GENERIC_ALL,
                                                SEC_ACE_FLAG_OBJECT_INHERIT|SEC_ACE_FLAG_CONTAINER_INHERIT|
                                                SEC_ACE_FLAG_INHERIT_ONLY|0);
                        }
index 46f9ecdc7df4578935f8805e7d5d2bf795e69401..3ad949a6d325ced8607c546fdd80abd870b51513 100644 (file)
@@ -153,7 +153,7 @@ static bool parse_ace(SEC_ACE *ace, const char *orig_str)
        unsigned int aflags = 0;
        unsigned int amask = 0;
        DOM_SID sid;
-       SEC_ACCESS mask;
+       uint32_t mask;
        const struct perm_value *v;
        char *str = SMB_STRDUP(orig_str);
        TALLOC_CTX *frame = talloc_stackframe();
index d488ce2187ab2283dfd1a20a3f88586d7c1283c6..eda8732c8914ef290ab113271fdd8a78b4575f08 100644 (file)
@@ -275,7 +275,7 @@ static bool parse_ace(struct cli_state *cli, SEC_ACE *ace,
        unsigned int aflags = 0;
        unsigned int amask = 0;
        DOM_SID sid;
-       SEC_ACCESS mask;
+       uint32_t mask;
        const struct perm_value *v;
        char *str = SMB_STRDUP(orig_str);
        TALLOC_CTX *frame = talloc_stackframe();