static BOOL vfswrap_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp, int fd, uint32 security_info_sent, SEC_DESC *psd) { BOOL result; START_PROFILE(fset_nt_acl); result = set_nt_acl(fsp, security_info_sent, psd); END_PROFILE(fset_nt_acl); return result; }
BOOL vfswrap_set_nt_acl(vfs_handle_struct *handle, files_struct *fsp, const char *name, uint32 security_info_sent, SEC_DESC *psd) { BOOL result; START_PROFILE(set_nt_acl); result = set_nt_acl(fsp, security_info_sent, psd); END_PROFILE(set_nt_acl); return result; }
static NTSTATUS gpfsacl_set_nt_acl_internal(files_struct *fsp, uint32 security_info_sent, const SEC_DESC *psd) { struct gpfs_acl *acl; NTSTATUS result = NT_STATUS_ACCESS_DENIED; acl = gpfs_getacl_alloc(fsp->fsp_name, 0); if (acl == NULL) return result; if (acl->acl_version&GPFS_ACL_VERSION_NFS4) { result = smb_set_nt_acl_nfs4( fsp, security_info_sent, psd, gpfsacl_process_smbacl); } else { /* assume POSIX ACL - by default... */ result = set_nt_acl(fsp, security_info_sent, psd); } return result; }
static NTSTATUS aixjfs2_set_nt_acl_common(files_struct *fsp, uint32 security_info_sent, const struct security_descriptor *psd) { acl_type_t acl_type_info; NTSTATUS result = NT_STATUS_ACCESS_DENIED; int rc; rc = aixjfs2_query_acl_support( fsp->fsp_name, ACL_NFS4, &acl_type_info); if (rc==0) { result = smb_set_nt_acl_nfs4( fsp, security_info_sent, psd, aixjfs2_process_smbacl); } else if (rc==1) { /* assume POSIX ACL - by default... */ result = set_nt_acl(fsp, security_info_sent, psd); } else result = map_nt_error_from_unix(errno); /* query failed */ return result; }