s3-security: use shared SECINFO_OWNER define.
authorGünther Deschner <gd@samba.org>
Wed, 2 Jun 2010 21:22:12 +0000 (23:22 +0200)
committerGünther Deschner <gd@samba.org>
Thu, 3 Jun 2010 08:59:15 +0000 (10:59 +0200)
Guenther

13 files changed:
source3/include/rpc_secdes.h
source3/lib/secdesc.c
source3/libsmb/clisecdesc.c
source3/modules/nfs4_acls.c
source3/modules/onefs_acl.c
source3/modules/vfs_acl_common.c
source3/modules/vfs_afsacl.c
source3/rpc_server/srv_srvsvc_nt.c
source3/rpc_server/srv_svcctl_nt.c
source3/smbd/file_access.c
source3/smbd/nttrans.c
source3/smbd/open.c
source3/smbd/posix_acls.c

index 0badd0a4788244c66c9aeffb13d14f8a44a5b4ad..0fcab46a661432faee6bd1524f40551b526de0e2 100644 (file)
@@ -25,7 +25,6 @@
 #define SEC_RIGHTS_FULL_CTRL           0xf01ff
 
 /* security information */
-#define OWNER_SECURITY_INFORMATION     0x00000001
 #define GROUP_SECURITY_INFORMATION     0x00000002
 #define DACL_SECURITY_INFORMATION      0x00000004
 #define SACL_SECURITY_INFORMATION      0x00000008
@@ -35,7 +34,7 @@
 #define PROTECTED_SACL_SECURITY_INFORMATION    0x40000000
 #define PROTECTED_DACL_SECURITY_INFORMATION    0x80000000
 
-#define ALL_SECURITY_INFORMATION (OWNER_SECURITY_INFORMATION|GROUP_SECURITY_INFORMATION|\
+#define ALL_SECURITY_INFORMATION (SECINFO_OWNER|GROUP_SECURITY_INFORMATION|\
                                        DACL_SECURITY_INFORMATION|SACL_SECURITY_INFORMATION|\
                                        UNPROTECTED_SACL_SECURITY_INFORMATION|\
                                        UNPROTECTED_DACL_SECURITY_INFORMATION|\
index fc40b9ebf8cd580c402b245fa9c663ea55814215..2cd6b98016801944aa3d43d457b2e46ab33996b4 100644 (file)
@@ -43,7 +43,7 @@ uint32_t get_sec_info(const struct security_descriptor *sd)
        SMB_ASSERT(sd);
 
        if (sd->owner_sid == NULL) {
-               sec_info &= ~OWNER_SECURITY_INFORMATION;
+               sec_info &= ~SECINFO_OWNER;
        }
        if (sd->group_sid == NULL) {
                sec_info &= ~GROUP_SECURITY_INFORMATION;
index b6eff394c6bd249db20e65a55d5b49be2aa59571..5f404d97b332fa58d7b497942be900523b107992 100644 (file)
@@ -93,7 +93,7 @@ bool cli_set_secdesc(struct cli_state *cli, uint16_t fnum, struct security_descr
        if (sd->dacl)
                sec_info |= DACL_SECURITY_INFORMATION;
        if (sd->owner_sid)
-               sec_info |= OWNER_SECURITY_INFORMATION;
+               sec_info |= SECINFO_OWNER;
        if (sd->group_sid)
                sec_info |= GROUP_SECURITY_INFORMATION;
        SSVAL(param, 4, sec_info);
index 875f18c3b3646af8e952faa78dad9c25c39909b8..122fa9294f7f72b2a0d1cf74bae157851541d562 100644 (file)
@@ -322,7 +322,7 @@ static NTSTATUS smb_get_nt_acl_nfs4_common(const SMB_STRUCT_STAT *sbuf,
 
        DEBUG(10,("after make sec_acl\n"));
        *ppdesc = make_sec_desc(mem_ctx, SD_REVISION, SEC_DESC_SELF_RELATIVE,
-                               (security_info & OWNER_SECURITY_INFORMATION) ? &sid_owner : NULL,
+                               (security_info & SECINFO_OWNER) ? &sid_owner : NULL,
                                (security_info & GROUP_SECURITY_INFORMATION) ? &sid_group : NULL,
                                NULL, psa, &sd_size);
        if (*ppdesc==NULL) {
@@ -735,7 +735,7 @@ NTSTATUS smb_set_nt_acl_nfs4(files_struct *fsp,
        DEBUG(10, ("smb_set_nt_acl_nfs4 invoked for %s\n", fsp_str_dbg(fsp)));
 
        if ((security_info_sent & (DACL_SECURITY_INFORMATION |
-               GROUP_SECURITY_INFORMATION | OWNER_SECURITY_INFORMATION)) == 0)
+               GROUP_SECURITY_INFORMATION | SECINFO_OWNER)) == 0)
        {
                DEBUG(9, ("security_info_sent (0x%x) ignored\n",
                        security_info_sent));
index 3337dea2551cc1fcf63015ce325020d6858cf906..65e58e179701ff8291dacf961c907cdbdf3b2ca7 100644 (file)
@@ -705,7 +705,7 @@ onefs_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
        sacl = NULL;
 
        /* Copy owner into ppdesc */
-       if (security_info & OWNER_SECURITY_INFORMATION) {
+       if (security_info & SECINFO_OWNER) {
                if (!onefs_identity_to_sid(sd->owner, &owner_sid)) {
                        status = NT_STATUS_INVALID_PARAMETER;
                        goto out;
@@ -840,7 +840,7 @@ NTSTATUS onefs_samba_sd_to_sd(uint32_t security_info_sent,
        *security_info_effective = security_info_sent;
 
        /* Setup owner */
-       if (security_info_sent & OWNER_SECURITY_INFORMATION) {
+       if (security_info_sent & SECINFO_OWNER) {
                if (!onefs_og_to_identity(psd->owner_sid, &owner, false, snum))
                        return NT_STATUS_ACCESS_DENIED;
 
index a3f207738e8398fe322a3155c6229d0fece78a1e..0e408d85af8e2d80d7d582909c1a366b7a257073 100644 (file)
@@ -36,7 +36,7 @@ static NTSTATUS store_acl_blob_fsp(vfs_handle_struct *handle,
                        files_struct *fsp,
                        DATA_BLOB *pblob);
 
-#define HASH_SECURITY_INFO (OWNER_SECURITY_INFORMATION | \
+#define HASH_SECURITY_INFO (SECINFO_OWNER | \
                                GROUP_SECURITY_INFORMATION | \
                                DACL_SECURITY_INFORMATION | \
                                SACL_SECURITY_INFORMATION)
@@ -371,7 +371,7 @@ static NTSTATUS get_nt_acl_internal(vfs_handle_struct *handle,
                }
        }
 
-       if (!(security_info & OWNER_SECURITY_INFORMATION)) {
+       if (!(security_info & SECINFO_OWNER)) {
                psd->owner_sid = NULL;
        }
        if (!(security_info & GROUP_SECURITY_INFORMATION)) {
@@ -436,7 +436,7 @@ static NTSTATUS inherit_new_acl(vfs_handle_struct *handle,
        }
 
        return SMB_VFS_FSET_NT_ACL(fsp,
-                               (OWNER_SECURITY_INFORMATION |
+                               (SECINFO_OWNER |
                                 GROUP_SECURITY_INFORMATION |
                                 DACL_SECURITY_INFORMATION),
                                psd);
@@ -459,7 +459,7 @@ static NTSTATUS check_parent_acl_common(vfs_handle_struct *handle,
        status = get_nt_acl_internal(handle,
                                        NULL,
                                        parent_name,
-                                       (OWNER_SECURITY_INFORMATION |
+                                       (SECINFO_OWNER |
                                         GROUP_SECURITY_INFORMATION |
                                         DACL_SECURITY_INFORMATION),
                                        &parent_desc);
@@ -532,7 +532,7 @@ static int open_acl_common(vfs_handle_struct *handle,
        status = get_nt_acl_internal(handle,
                                NULL,
                                fname,
-                               (OWNER_SECURITY_INFORMATION |
+                               (SECINFO_OWNER |
                                 GROUP_SECURITY_INFORMATION |
                                 DACL_SECURITY_INFORMATION),
                                &pdesc);
@@ -678,10 +678,10 @@ static NTSTATUS fset_nt_acl_common(vfs_handle_struct *handle, files_struct *fsp,
 
         /* Ensure we have OWNER/GROUP/DACL set. */
 
-       if ((security_info_sent & (OWNER_SECURITY_INFORMATION|
+       if ((security_info_sent & (SECINFO_OWNER|
                                GROUP_SECURITY_INFORMATION|
                                DACL_SECURITY_INFORMATION)) !=
-                               (OWNER_SECURITY_INFORMATION|
+                               (SECINFO_OWNER|
                                 GROUP_SECURITY_INFORMATION|
                                 DACL_SECURITY_INFORMATION)) {
                /* No we don't - read from the existing SD. */
@@ -689,7 +689,7 @@ static NTSTATUS fset_nt_acl_common(vfs_handle_struct *handle, files_struct *fsp,
 
                status = get_nt_acl_internal(handle, fsp,
                                NULL,
-                               (OWNER_SECURITY_INFORMATION|
+                               (SECINFO_OWNER|
                                 GROUP_SECURITY_INFORMATION|
                                 DACL_SECURITY_INFORMATION),
                                &nc_psd);
@@ -699,10 +699,10 @@ static NTSTATUS fset_nt_acl_common(vfs_handle_struct *handle, files_struct *fsp,
                }
 
                /* This is safe as nc_psd is discarded at fn exit. */
-               if (security_info_sent & OWNER_SECURITY_INFORMATION) {
+               if (security_info_sent & SECINFO_OWNER) {
                        nc_psd->owner_sid = psd->owner_sid;
                }
-               security_info_sent |= OWNER_SECURITY_INFORMATION;
+               security_info_sent |= SECINFO_OWNER;
 
                if (security_info_sent & GROUP_SECURITY_INFORMATION) {
                        nc_psd->group_sid = psd->group_sid;
index 1f495d9448008ce66d9019e281c0737d34f96a20..7ea0eafd213fa015f0ad5fe818befb154e4c2126 100644 (file)
@@ -644,7 +644,7 @@ static size_t afs_to_nt_acl_common(struct afs_acl *afs_acl,
 
        *ppdesc = make_sec_desc(mem_ctx, SD_REVISION,
                                SEC_DESC_SELF_RELATIVE,
-                               (security_info & OWNER_SECURITY_INFORMATION)
+                               (security_info & SECINFO_OWNER)
                                ? &owner_sid : NULL,
                                (security_info & GROUP_SECURITY_INFORMATION)
                                ? &group_sid : NULL,
index 40c26f68096cc2840207dca0d981fe27a2ca9f67..1271971ac68e2da672edee06db1313cfedb64993 100644 (file)
@@ -2146,7 +2146,7 @@ WERROR _srvsvc_NetGetFileSecurity(pipes_struct *p,
        }
 
        nt_status = SMB_VFS_FGET_NT_ACL(fsp,
-                                      (OWNER_SECURITY_INFORMATION
+                                      (SECINFO_OWNER
                                        |GROUP_SECURITY_INFORMATION
                                        |DACL_SECURITY_INFORMATION), &psd);
 
@@ -2280,7 +2280,7 @@ WERROR _srvsvc_NetSetFileSecurity(pipes_struct *p,
        security_info_sent = r->in.securityinformation;
 
        if (psd->owner_sid==0) {
-               security_info_sent &= ~OWNER_SECURITY_INFORMATION;
+               security_info_sent &= ~SECINFO_OWNER;
        }
        if (psd->group_sid==0) {
                security_info_sent &= ~GROUP_SECURITY_INFORMATION;
index bc751e79b8d71ad770ee767670e362b1140d6fd0..e67ab8e8ce8db54611fdb6494f87dfe5186d7eb3 100644 (file)
@@ -926,7 +926,7 @@ WERROR _svcctl_SetServiceObjectSecurity(pipes_struct *p,
                        required_access = STD_RIGHT_WRITE_DAC_ACCESS;
                        break;
 
-               case OWNER_SECURITY_INFORMATION:
+               case SECINFO_OWNER:
                case GROUP_SECURITY_INFORMATION:
                        required_access = STD_RIGHT_WRITE_OWNER_ACCESS;
                        break;
index b487afb5e8ded49699075ec146d738e236508c1b..2404bacc38aac1ec89c134aa335f62de17d73649 100644 (file)
@@ -42,7 +42,7 @@ bool can_access_file_acl(struct connection_struct *conn,
        }
 
        status = SMB_VFS_GET_NT_ACL(conn, smb_fname->base_name,
-                                   (OWNER_SECURITY_INFORMATION |
+                                   (SECINFO_OWNER |
                                     GROUP_SECURITY_INFORMATION |
                                     DACL_SECURITY_INFORMATION),
                                    &secdesc);
index 577a7e4076ebaa1453d8552bf217a38b186dca25..9b838a616dc4525876dcb594182de35f478dc74c 100644 (file)
@@ -846,7 +846,7 @@ NTSTATUS set_sd(files_struct *fsp, uint8_t *data, uint32_t sd_len,
        }
 
        if (psd->owner_sid == NULL) {
-               security_info_sent &= ~OWNER_SECURITY_INFORMATION;
+               security_info_sent &= ~SECINFO_OWNER;
        }
        if (psd->group_sid == NULL) {
                security_info_sent &= ~GROUP_SECURITY_INFORMATION;
index ca5b133ec667b5477ed1854819de0c356caeddb9..0bec72582a6361b151268320ea491a9e9745179c 100644 (file)
@@ -89,7 +89,7 @@ NTSTATUS smbd_check_open_rights(struct connection_struct *conn,
        struct security_descriptor *sd = NULL;
 
        status = SMB_VFS_GET_NT_ACL(conn, smb_fname->base_name,
-                       (OWNER_SECURITY_INFORMATION |
+                       (SECINFO_OWNER |
                        GROUP_SECURITY_INFORMATION |
                        DACL_SECURITY_INFORMATION),&sd);
 
@@ -1413,7 +1413,7 @@ static NTSTATUS calculate_access_mask(connection_struct *conn,
                        uint32_t access_granted = 0;
 
                        status = SMB_VFS_GET_NT_ACL(conn, smb_fname->base_name,
-                                       (OWNER_SECURITY_INFORMATION |
+                                       (SECINFO_OWNER |
                                        GROUP_SECURITY_INFORMATION |
                                        DACL_SECURITY_INFORMATION),&sd);
 
@@ -3209,7 +3209,7 @@ static NTSTATUS create_file_unixpath(connection_struct *conn,
                security_acl_map_generic(sd->dacl, &file_generic_mapping);
                security_acl_map_generic(sd->sacl, &file_generic_mapping);
 
-               if (sec_info_sent & (OWNER_SECURITY_INFORMATION|
+               if (sec_info_sent & (SECINFO_OWNER|
                                        GROUP_SECURITY_INFORMATION|
                                        DACL_SECURITY_INFORMATION|
                                        SACL_SECURITY_INFORMATION)) {
index 36d18b013c01cb4f72d7adacd444265674390962..5fa8f6dc6746f96de2b5fa30abb6d8ab823624e2 100644 (file)
@@ -1197,7 +1197,7 @@ NTSTATUS unpack_nt_owners(struct connection_struct *conn,
         * This may be a group chown only set.
         */
 
-       if (security_info_sent & OWNER_SECURITY_INFORMATION) {
+       if (security_info_sent & SECINFO_OWNER) {
                sid_copy(&owner_sid, psd->owner_sid);
                if (!sid_to_uid(&owner_sid, puser)) {
                        if (lp_force_unknown_acl_user(SNUM(conn))) {
@@ -3388,7 +3388,7 @@ static NTSTATUS posix_get_nt_acl_common(struct connection_struct *conn,
        } /* security_info & DACL_SECURITY_INFORMATION */
 
        psd = make_standard_sec_desc( talloc_tos(),
-                       (security_info & OWNER_SECURITY_INFORMATION) ? &owner_sid : NULL,
+                       (security_info & SECINFO_OWNER) ? &owner_sid : NULL,
                        (security_info & GROUP_SECURITY_INFORMATION) ? &group_sid : NULL,
                        psa,
                        &sd_size);