cifs: don't override the uid/gid in getattr when cifsacl is enabled
If we're using cifsacl, then we don't want to override the uid/gid with the current uid/gid, since that would prevent you from being able to upcall for this info. Reviewed-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com> Signed-off-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Steve French <smfrench@gmail.com>
This commit is contained in:
parent
b1a6dc21d1
commit
d3d1fce11d
@ -1791,11 +1791,12 @@ int cifs_getattr(struct vfsmount *mnt, struct dentry *dentry,
|
|||||||
stat->ino = CIFS_I(inode)->uniqueid;
|
stat->ino = CIFS_I(inode)->uniqueid;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If on a multiuser mount without unix extensions, and the admin hasn't
|
* If on a multiuser mount without unix extensions or cifsacl being
|
||||||
* overridden them, set the ownership to the fsuid/fsgid of the current
|
* enabled, and the admin hasn't overridden them, set the ownership
|
||||||
* process.
|
* to the fsuid/fsgid of the current process.
|
||||||
*/
|
*/
|
||||||
if ((cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MULTIUSER) &&
|
if ((cifs_sb->mnt_cifs_flags & CIFS_MOUNT_MULTIUSER) &&
|
||||||
|
!(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_CIFS_ACL) &&
|
||||||
!tcon->unix_ext) {
|
!tcon->unix_ext) {
|
||||||
if (!(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_OVERR_UID))
|
if (!(cifs_sb->mnt_cifs_flags & CIFS_MOUNT_OVERR_UID))
|
||||||
stat->uid = current_fsuid();
|
stat->uid = current_fsuid();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user