nfs4acls: Add "smbacl4_vfs_params" parameter to smb_fget_nt_acl_nfs4
authorVolker Lendecke <vl@samba.org>
Tue, 9 Aug 2016 09:07:38 +0000 (11:07 +0200)
committerRalph Boehme <slow@samba.org>
Fri, 12 Aug 2016 15:15:20 +0000 (17:15 +0200)
Pure placeholder right now, this will allow vfs modules to load the params
in advance. nfs4 acl parameters should not change while a tcon is live,
and lp_parm_get_* show up in profiles. Loading the parameters once at
tcon time will remove this.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
source3/modules/nfs4_acls.c
source3/modules/nfs4_acls.h
source3/modules/vfs_aixacl2.c
source3/modules/vfs_gpfs.c
source3/modules/vfs_nfs4acl_xattr.c
source3/modules/vfs_zfsacl.c

index f5f6302d962a23a658f9161080e10ff440e0c4ac..66794fe7fbbaf79d6d4b4e3fa5d2e5ffa41a54f0 100644 (file)
@@ -533,6 +533,7 @@ static NTSTATUS smb_get_nt_acl_nfs4_common(const SMB_STRUCT_STAT *sbuf,
 }
 
 NTSTATUS smb_fget_nt_acl_nfs4(files_struct *fsp,
+                             const struct smbacl4_vfs_params *pparams,
                              uint32_t security_info,
                              TALLOC_CTX *mem_ctx,
                              struct security_descriptor **ppdesc,
index 588e8ea8e7c108c19500782df2398d2c52715e65..f8d6867a4227d56cd641ac802307937210d095e9 100644 (file)
@@ -109,6 +109,7 @@ typedef struct _SMB_ACE4PROP_T {
 
 struct SMB4ACL_T;
 struct SMB4ACE_T;
+struct smbacl4_vfs_params;
 
 struct SMB4ACL_T *smb_create_smb4acl(TALLOC_CTX *mem_ctx);
 
@@ -131,6 +132,7 @@ uint16_t smbacl4_get_controlflags(struct SMB4ACL_T *theacl);
 bool smbacl4_set_controlflags(struct SMB4ACL_T *theacl, uint16_t controlflags);
 
 NTSTATUS smb_fget_nt_acl_nfs4(files_struct *fsp,
+       const struct smbacl4_vfs_params *pparams,
        uint32_t security_info,
        TALLOC_CTX *mem_ctx,
        struct security_descriptor **ppdesc, struct SMB4ACL_T *theacl);
index 1c9f84bf2a877cac778d5d79d9b3037422fd7c52..362486b8b00b83cd1f1d535e0d617698e2145871 100644 (file)
@@ -179,7 +179,7 @@ static NTSTATUS aixjfs2_fget_nt_acl(vfs_handle_struct *handle,
                return NT_STATUS_ACCESS_DENIED;
        }
 
-       status = smb_fget_nt_acl_nfs4(fsp, security_info, ppdesc,
+       status = smb_fget_nt_acl_nfs4(fsp, NULL, security_info, ppdesc,
                                      mem_ctx, pacl);
        TALLOC_FREE(frame);
        return status;
index f096dd54abfbac2b8ca5cffcdba67852adf0871a..c3ce9e1207cede13c7c64b2c45daa06e0c171215 100644 (file)
@@ -589,8 +589,8 @@ static NTSTATUS gpfsacl_fget_nt_acl(vfs_handle_struct *handle,
        result = gpfs_get_nfs4_acl(frame, fsp->fsp_name->base_name, &pacl);
 
        if (result == 0) {
-               status = smb_fget_nt_acl_nfs4(fsp, security_info, mem_ctx,
-                                             ppdesc, pacl);
+               status = smb_fget_nt_acl_nfs4(fsp, NULL, security_info,
+                                             mem_ctx, ppdesc, pacl);
                TALLOC_FREE(frame);
                return status;
        }
index 9ab7238e0ac2770d6355724f664087ff4bf1421c..c9cae394f89f1b8842333ea789f6f5b6dac1bef4 100644 (file)
@@ -535,7 +535,8 @@ static NTSTATUS nfs4acl_xattr_fget_nt_acl(struct vfs_handle_struct *handle,
                return status;
        }
 
-       status = smb_fget_nt_acl_nfs4(fsp, security_info, mem_ctx, ppdesc, pacl);
+       status = smb_fget_nt_acl_nfs4(fsp, NULL, security_info, mem_ctx,
+                                     ppdesc, pacl);
        TALLOC_FREE(frame);
        return status;
 }
index 18f135677f9fdb2ffca7cece92aceaaa2c2c959f..0077553c9dccd01acdfeee2805e4f38b86ad4938 100644 (file)
@@ -209,7 +209,8 @@ static NTSTATUS zfsacl_fget_nt_acl(struct vfs_handle_struct *handle,
                return status;
        }
 
-       status = smb_fget_nt_acl_nfs4(fsp, security_info, mem_ctx, ppdesc, pacl);
+       status = smb_fget_nt_acl_nfs4(fsp, NULL, security_info, mem_ctx,
+                                     ppdesc, pacl);
        TALLOC_FREE(frame);
        return status;
 }