xfs
[Top] [All Lists]

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

To: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>, "Theodore Ts'o" <tytso@xxxxxxx>, Andreas Dilger <adilger.kernel@xxxxxxxxx>, "J. Bruce Fields" <bfields@xxxxxxxxxxxx>, Jeff Layton <jlayton@xxxxxxxxxxxxxxx>, Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>, Anna Schumaker <anna.schumaker@xxxxxxxxxx>, Dave Chinner <david@xxxxxxxxxxxxx>, linux-ext4@xxxxxxxxxxxxxxx, xfs@xxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, linux-fsdevel@xxxxxxxxxxxxxxx, linux-nfs@xxxxxxxxxxxxxxx, linux-cifs@xxxxxxxxxxxxxxx, linux-api@xxxxxxxxxxxxxxx
Subject: [PATCH v13 44/51] xfs: Don't allow unmapped identifiers in richacls
From: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
Date: Tue, 3 Nov 2015 16:17:20 +0100
Cc: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1446563847-14005-1-git-send-email-agruenba@xxxxxxxxxx>
References: <1446563847-14005-1-git-send-email-agruenba@xxxxxxxxxx>
Don't allow acls which contain unmapped identifiers: they are meaningful
for remote file systems only.

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

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);
-- 
2.5.0

<Prev in Thread] Current Thread [Next in Thread>