mirror of
https://github.com/samba-team/samba.git
synced 2025-01-11 05:18:09 +03:00
s3: VFS: aixacl2: Add aixjfs2_get_nt_acl_at().
Not yet used. Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
This commit is contained in:
parent
373843f5fb
commit
cbfbc40434
@ -221,6 +221,46 @@ static NTSTATUS aixjfs2_get_nt_acl(vfs_handle_struct *handle,
|
||||
pacl);
|
||||
}
|
||||
|
||||
static NTSTATUS aixjfs2_get_nt_acl_at(vfs_handle_struct *handle,
|
||||
struct files_struct *dirfsp,
|
||||
const struct smb_filename *smb_fname,
|
||||
uint32_t security_info,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
struct security_descriptor **ppdesc)
|
||||
{
|
||||
struct SMB4ACL_T *pacl = NULL;
|
||||
bool result;
|
||||
bool retryPosix = False;
|
||||
|
||||
SMB_ASSERT(dirfsp == handle->conn->cwd_fsp);
|
||||
|
||||
*ppdesc = NULL;
|
||||
result = aixjfs2_get_nfs4_acl(mem_ctx,
|
||||
smb_fname->base_name,
|
||||
&pacl,
|
||||
&retryPosix);
|
||||
if (retryPosix)
|
||||
{
|
||||
DEBUG(10, ("retrying with posix acl...\n"));
|
||||
return posix_get_nt_acl(handle->conn,
|
||||
smb_fname,
|
||||
security_info,
|
||||
mem_ctx,
|
||||
ppdesc);
|
||||
}
|
||||
if (result==False)
|
||||
return NT_STATUS_ACCESS_DENIED;
|
||||
|
||||
return smb_get_nt_acl_nfs4(handle->conn,
|
||||
smb_fname,
|
||||
NULL,
|
||||
security_info,
|
||||
mem_ctx,
|
||||
ppdesc,
|
||||
pacl);
|
||||
}
|
||||
|
||||
|
||||
static int aixjfs2_sys_acl_blob_get_file(vfs_handle_struct *handle,
|
||||
const struct smb_filename *smb_fname,
|
||||
TALLOC_CTX *mem_ctx,
|
||||
@ -557,6 +597,7 @@ int aixjfs2_sys_acl_delete_def_file(vfs_handle_struct *handle,
|
||||
static struct vfs_fn_pointers vfs_aixacl2_fns = {
|
||||
.fget_nt_acl_fn = aixjfs2_fget_nt_acl,
|
||||
.get_nt_acl_fn = aixjfs2_get_nt_acl,
|
||||
.get_nt_acl_at_fn = aixjfs2_get_nt_acl_at,
|
||||
.fset_nt_acl_fn = aixjfs2_fset_nt_acl,
|
||||
.sys_acl_get_file_fn = aixjfs2_sys_acl_get_file,
|
||||
.sys_acl_get_fd_fn = aixjfs2_sys_acl_get_fd,
|
||||
|
Loading…
Reference in New Issue
Block a user