Martin Schwenke has uploaded this change for review. (
https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/535378 )
Change subject: FSAL: Fix regression in POSIX ACL mapping code
......................................................................
FSAL: Fix regression in POSIX ACL mapping code
get_entry() is called for all entries, including those with tag
ACL_USER_OBJ and ACL_GROUP_OBJ. However, acl_set_qualifier(3) will
return EINVAL if:
The value of the tag type in the ACL entry referenced by the
argument entry_d is neither ACL_USER nor ACL_GROUP.
This was OK until commit 76692cd79f31bdd097cda4503de7df956e42cecd
insisted that acl_set_qualifier(3) should succeed. Now, get_entry()
fails for entries tagged ACL_USER_OBJ and ACL_GROUP_OBJ.
The failure mode is quite spectacular, with corresponding calls to
isdeny() returning true in fsal_acl_2_posix_acl(), causing allow ACEs
for ACL_USER_OBJ and ACL_GROUP_OBJ not to be generated.
Make the call to acl_set_qualifier(3) conditional on supported tags.
Signed-off-by: Martin Schwenke <mschwenke(a)ddn.com>
Change-Id: Id401b0608212a66eb717eaec8896c5ccf006b990
---
M src/FSAL/posix_acls.c
1 file changed, 33 insertions(+), 4 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/78/535378/1
--
To view, visit
https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/535378
To unsubscribe, or for help writing mail filters, visit
https://review.gerrithub.io/settings
Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-Change-Id: Id401b0608212a66eb717eaec8896c5ccf006b990
Gerrit-Change-Number: 535378
Gerrit-PatchSet: 1
Gerrit-Owner: Martin Schwenke <martin(a)meltin.net>
Gerrit-MessageType: newchange