mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-12-26 03:09:34 +03:00
Allow chown/chgrp when no ACL SAs exist.
From the comment in the commit: Some ZFS implementations (ZEVO) create neither a ZNODE_ACL nor a DACL_ACES SA in which case ENOENT is returned from zfs_acl_node_read() when the SA can't be located. Allow chown/chgrp to succeed in these cases rather than returning an error that makes no sense in the context of the caller. Signed-off-by: Tim Chase <tim@chase2k.com> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Issue zfs-osx/zfs#86 Closes #1911 Closes #2029
This commit is contained in:
parent
04aa2de8f7
commit
4461aa6118
@ -1166,6 +1166,17 @@ zfs_acl_chown_setattr(znode_t *zp)
|
|||||||
zp->z_mode = zfs_mode_compute(zp->z_mode, aclp,
|
zp->z_mode = zfs_mode_compute(zp->z_mode, aclp,
|
||||||
&zp->z_pflags, zp->z_uid, zp->z_gid);
|
&zp->z_pflags, zp->z_uid, zp->z_gid);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Some ZFS implementations (ZEVO) create neither a ZNODE_ACL
|
||||||
|
* nor a DACL_ACES SA in which case ENOENT is returned from
|
||||||
|
* zfs_acl_node_read() when the SA can't be located.
|
||||||
|
* Allow chown/chgrp to succeed in these cases rather than
|
||||||
|
* returning an error that makes no sense in the context of
|
||||||
|
* the caller.
|
||||||
|
*/
|
||||||
|
if (error == ENOENT)
|
||||||
|
return (0);
|
||||||
|
|
||||||
return (error);
|
return (error);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user