[v13,44/51] xfs: Don't allow unmapped identifiers in richacls
diff mbox

Message ID 1446563847-14005-45-git-send-email-agruenba@redhat.com
State New
Headers show

Commit Message

Andreas Gruenbacher Nov. 3, 2015, 3:17 p.m. UTC
Don't allow acls which contain unmapped identifiers: they are meaningful
for remote file systems only.

Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
---
 fs/xfs/xfs_richacl.c | 4 ++++
 1 file changed, 4 insertions(+)

Patch
diff mbox

diff --git a/fs/xfs/xfs_richacl.c b/fs/xfs/xfs_richacl.c
index f8f5a62..4a2e21a 100644
--- a/fs/xfs/xfs_richacl.c
+++ b/fs/xfs/xfs_richacl.c
@@ -78,6 +78,10 @@  __xfs_set_richacl(struct inode *inode, struct richacl *acl, int xflags)
 	if (!acl)
 		return xfs_remove_richacl(inode);
 
+	/* Don't allow acls with unmapped identifiers. */
+	if (richacl_has_unmapped_identifiers(acl))
+		return -EINVAL;
+
 	if (richacl_equiv_mode(acl, &mode) == 0) {
 		xfs_set_mode(inode, mode);
 		return xfs_remove_richacl(inode);