s3/modules: make chmod_acl_module_common less strict so fchmod can run
authorNoel Power <noel.power@suse.com>
Wed, 7 Apr 2021 15:02:15 +0000 (16:02 +0100)
committerNoel Power <npower@samba.org>
Sun, 11 Apr 2021 22:27:34 +0000 (22:27 +0000)
Signed-off-by: Noel Power <noel.power@suse.com>
Reviewed-by: Ralph Boehme <slow@samba.org>
source3/modules/vfs_acl_common.c

index db6f40d3adf19458530ef611a1408df8c9162436..f5933e68ae1bbfc9db629ca3f75fc5896fc28744 100644 (file)
@@ -1374,7 +1374,8 @@ int chmod_acl_module_common(struct vfs_handle_struct *handle,
 int fchmod_acl_module_common(struct vfs_handle_struct *handle,
                             struct files_struct *fsp, mode_t mode)
 {
-       if (fsp->posix_flags & FSP_POSIX_FLAGS_OPEN) {
+       if (fsp->posix_flags & FSP_POSIX_FLAGS_PATHNAMES
+           || fsp->fsp_name->flags & SMB_FILENAME_POSIX_PATH) {
                /* Only allow this on POSIX opens. */
                return SMB_VFS_NEXT_FCHMOD(handle, fsp, mode);
        }