* fhandler_disk_file.cc (fhandler_disk_file::facl): Pretend successful
SETACL if no acls are available. * fhandler.cc (fhandler_base::facl): Implement to return sensible values on GETACL and GETACLCNT. Pretend successful SETACL. * fhandler_virtual.cc (fhandler_virtual::facl): Ditto.
This commit is contained in:
		| @@ -247,7 +247,12 @@ fhandler_virtual::fchown (__uid32_t uid, __gid32_t gid) | ||||
| int | ||||
| fhandler_virtual::facl (int cmd, int nentries, __aclent32_t *aclbufp) | ||||
| { | ||||
|   /* Same as on Linux. */ | ||||
|   set_errno (EPERM); | ||||
|   return -1; | ||||
|   int res = fhandler_base::facl (cmd, nentries, aclbufp); | ||||
|   if (res >= 0 && cmd == GETACL) | ||||
|     { | ||||
|       aclbufp[0].a_perm = (S_IRUSR | (pc.isdir () ? S_IXUSR : 0)) >> 6; | ||||
|       aclbufp[1].a_perm = (S_IRGRP | (pc.isdir () ? S_IXGRP : 0)) >> 3; | ||||
|       aclbufp[2].a_perm = S_IROTH | (pc.isdir () ? S_IXOTH : 0); | ||||
|     } | ||||
|   return res; | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user