diff options
Diffstat (limited to 'source3')
-rw-r--r-- | source3/modules/onefs_acl.c | 6 | ||||
-rw-r--r-- | source3/modules/onefs_open.c | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/source3/modules/onefs_acl.c b/source3/modules/onefs_acl.c index 0ef7e0be51..02394794c2 100644 --- a/source3/modules/onefs_acl.c +++ b/source3/modules/onefs_acl.c @@ -619,6 +619,12 @@ onefs_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp, DEBUG(5, ("Getting sd for file %s. security_info=%u\n", fsp->fsp_name, security_info)); + if (lp_parm_bool(SNUM(fsp->conn), PARM_ONEFS_TYPE, + PARM_IGNORE_SACL, PARM_IGNORE_SACL_DEFAULT)) { + DEBUG(5, ("Ignoring SACL on %s.\n", fsp->fsp_name)); + security_info &= ~SACL_SECURITY_INFORMATION; + } + if (fsp->fh->fd == -1) { if ((fsp->fh->fd = onefs_sys_create_file(handle->conn, -1, diff --git a/source3/modules/onefs_open.c b/source3/modules/onefs_open.c index b2b11ebaac..e335dc7e28 100644 --- a/source3/modules/onefs_open.c +++ b/source3/modules/onefs_open.c @@ -744,6 +744,11 @@ NTSTATUS onefs_open_file_ntcreate(connection_struct *conn, open_access_mask |= FILE_WRITE_DATA; } + if (lp_parm_bool(SNUM(fsp->conn), PARM_ONEFS_TYPE, + PARM_IGNORE_SACL, PARM_IGNORE_SACL_DEFAULT)) { + access_mask &= ~SYSTEM_SECURITY_ACCESS; + } + DEBUG(10, ("onefs_open_file_ntcreate: fname=%s, after mapping " "open_access_mask=%#x, access_mask=0x%x\n", fname, open_access_mask, access_mask)); |