diff options
author | Jeremy Allison <jra@samba.org> | 2009-02-25 14:12:51 -0800 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2009-02-25 14:12:51 -0800 |
commit | 9b8bb1ad957f9c2d91e55ac6a27657cd8f6d4a14 (patch) | |
tree | 7af9e8f8747f935b1044dc565e87cdae0892e21e /source3/modules/vfs_acl_xattr.c | |
parent | 228e75112ffe4124748e80d6571ddde4df22881f (diff) | |
download | samba-9b8bb1ad957f9c2d91e55ac6a27657cd8f6d4a14.tar.gz samba-9b8bb1ad957f9c2d91e55ac6a27657cd8f6d4a14.tar.bz2 samba-9b8bb1ad957f9c2d91e55ac6a27657cd8f6d4a14.zip |
Ensure ACL modules work with POSIX paths.
Jeremy.
Diffstat (limited to 'source3/modules/vfs_acl_xattr.c')
-rw-r--r-- | source3/modules/vfs_acl_xattr.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/source3/modules/vfs_acl_xattr.c b/source3/modules/vfs_acl_xattr.c index 7c78b506f0..f46e4683aa 100644 --- a/source3/modules/vfs_acl_xattr.c +++ b/source3/modules/vfs_acl_xattr.c @@ -381,7 +381,11 @@ static NTSTATUS inherit_new_acl(vfs_handle_struct *handle, if (fsp && !fsp->is_directory && fsp->fh->fd != -1) { ret = SMB_VFS_FSTAT(fsp, &sbuf); } else { - ret = SMB_VFS_STAT(handle->conn,fname, &sbuf); + if (lp_posix_pathnames()) { + ret = SMB_VFS_LSTAT(handle->conn,fname, &sbuf); + } else { + ret = SMB_VFS_STAT(handle->conn,fname, &sbuf); + } } if (ret == -1) { return map_nt_error_from_unix(errno); @@ -559,7 +563,11 @@ static NTSTATUS fset_nt_acl_xattr(vfs_handle_struct *handle, files_struct *fsp, return NT_STATUS_OK; } if (fsp->is_directory || fsp->fh->fd == -1) { - ret = SMB_VFS_STAT(fsp->conn,fsp->fsp_name, &sbuf); + if (lp_posix_pathnames()) { + ret = SMB_VFS_LSTAT(fsp->conn,fsp->fsp_name, &sbuf); + } else { + ret = SMB_VFS_STAT(fsp->conn,fsp->fsp_name, &sbuf); + } } else { ret = SMB_VFS_FSTAT(fsp, &sbuf); } |