mirror of
https://github.com/samba-team/samba.git
synced 2025-01-08 21:18:16 +03:00
s3: smbd: Ensure POSIX default ACL is mapped into returned Windows ACL for directory handles.
Remove knownfail. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14708 Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Noel Power <npower@samba.org> Autobuild-User(master): Noel Power <npower@samba.org> Autobuild-Date(master): Wed May 19 09:22:56 UTC 2021 on sn-devel-184
This commit is contained in:
parent
544289b54b
commit
b7f62e1393
@ -1,2 +0,0 @@
|
||||
^samba3.smbtorture_s3.plain.POSIX-DIR-DEFAULT-ACL.smbtorture\(nt4_dc_smb1\)
|
||||
^samba3.smbtorture_s3.crypt.POSIX-DIR-DEFAULT-ACL.smbtorture\(nt4_dc_smb1\)
|
@ -3426,6 +3426,7 @@ NTSTATUS posix_fget_nt_acl(struct files_struct *fsp, uint32_t security_info,
|
||||
{
|
||||
SMB_STRUCT_STAT sbuf;
|
||||
SMB_ACL_T posix_acl = NULL;
|
||||
SMB_ACL_T def_acl = NULL;
|
||||
struct pai_val *pal;
|
||||
TALLOC_CTX *frame = talloc_stackframe();
|
||||
NTSTATUS status;
|
||||
@ -3444,10 +3445,19 @@ NTSTATUS posix_fget_nt_acl(struct files_struct *fsp, uint32_t security_info,
|
||||
/* Get the ACL from the fd. */
|
||||
posix_acl = SMB_VFS_SYS_ACL_GET_FD(fsp, frame);
|
||||
|
||||
/* If it's a directory get the default POSIX ACL. */
|
||||
if(fsp->fsp_flags.is_directory) {
|
||||
def_acl = SMB_VFS_SYS_ACL_GET_FILE(fsp->conn,
|
||||
fsp->fsp_name,
|
||||
SMB_ACL_TYPE_DEFAULT,
|
||||
frame);
|
||||
def_acl = free_empty_sys_acl(fsp->conn, def_acl);
|
||||
}
|
||||
|
||||
pal = fload_inherited_info(fsp);
|
||||
|
||||
status = posix_get_nt_acl_common(fsp->conn, fsp->fsp_name->base_name,
|
||||
&sbuf, pal, posix_acl, NULL,
|
||||
&sbuf, pal, posix_acl, def_acl,
|
||||
security_info, mem_ctx, ppdesc);
|
||||
TALLOC_FREE(frame);
|
||||
return status;
|
||||
|
Loading…
Reference in New Issue
Block a user