Return-Path: Received: from mx1.redhat.com ([209.132.183.28]:48796 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751257AbcI1X3s (ORCPT ); Wed, 28 Sep 2016 19:29:48 -0400 From: Andreas Gruenbacher To: Alexander Viro Cc: Andreas Gruenbacher , Christoph Hellwig , "Theodore Ts'o" , Andreas Dilger , "J. Bruce Fields" , Jeff Layton , Trond Myklebust , Anna Schumaker , Dave Chinner , linux-ext4@vger.kernel.org, xfs@oss.sgi.com, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-nfs@vger.kernel.org, linux-cifs@vger.kernel.org, linux-api@vger.kernel.org Subject: [PATCH v25 00/21] Richacls (Core and Ext4) Date: Thu, 29 Sep 2016 01:29:19 +0200 Message-Id: <1475105380-22837-1-git-send-email-agruenba@redhat.com> Sender: linux-nfs-owner@vger.kernel.org List-ID: Here is another update of the richacl patches. Changes since the last posting (http://lwn.net/Articles/697320/): * Rebase on top of the VFS for-next branch (git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git for-next; hash 6731cb0f). (This patch queue does not conflict with the xattr inode operation removal patches.) * Adjust for the {inode_change_ok => setattr_prepare} rename. The complete patch queue is available here: git://git.kernel.org/pub/scm/linux/kernel/git/agruen/linux-richacl.git \ richacl-2016-09-29 The richacl user-space utilitites, man pages, and test suite are available here: https://github.com/andreas-gruenbacher/richacl Changes to other user-space packages for richacl: https://github.com/andreas-gruenbacher/coreutils https://github.com/andreas-gruenbacher/e2fsprogs https://github.com/andreas-gruenbacher/samba https://github.com/andreas-gruenbacher/xfsprogs-dev https://github.com/andreas-gruenbacher/nfs-utils Please see the richacl homepage for more information: http://www.bestbits.at/richacl/ Thanks, Andreas Andreas Gruenbacher (19): vfs: Add IS_ACL() and IS_RICHACL() tests vfs: Add MAY_CREATE_FILE and MAY_CREATE_DIR permission flags vfs: Add MAY_DELETE_SELF and MAY_DELETE_CHILD permission flags vfs: Add permission flags for setting file attributes richacl: In-memory representation and helper functions richacl: Permission mapping functions richacl: Permission check algorithm richacl: Compute maximum file masks from an acl vfs: Cache base_acl objects in inodes vfs: Add get_richacl and set_richacl inode operations vfs: Cache richacl in struct inode richacl: Update the file masks in chmod() richacl: Check if an acl is equivalent to a file mode richacl: Create-time inheritance richacl: Automatic Inheritance richacl: xattr mapping functions richacl: Add richacl xattr handler vfs: Add richacl permission checking vfs: Move check_posix_acl and check_richacl out of fs/namei.c Aneesh Kumar K.V (2): ext4: Add richacl support ext4: Add richacl feature flag drivers/staging/lustre/lustre/llite/llite_lib.c | 2 +- fs/9p/acl.c | 8 +- fs/Kconfig | 3 + fs/Makefile | 1 + fs/attr.c | 79 +- fs/ext4/Kconfig | 11 + fs/ext4/Makefile | 1 + fs/ext4/ext4.h | 6 +- fs/ext4/file.c | 3 + fs/ext4/ialloc.c | 11 +- fs/ext4/inode.c | 5 +- fs/ext4/namei.c | 5 + fs/ext4/richacl.c | 134 ++++ fs/ext4/richacl.h | 40 + fs/ext4/super.c | 49 +- fs/ext4/xattr.c | 7 + fs/f2fs/acl.c | 4 +- fs/inode.c | 43 +- fs/jffs2/acl.c | 6 +- fs/namei.c | 114 +-- fs/nfs/nfs3acl.c | 14 +- fs/posix_acl.c | 97 ++- fs/richacl.c | 937 ++++++++++++++++++++++++ fs/richacl_xattr.c | 222 ++++++ include/linux/acl.h | 15 + include/linux/fs.h | 63 +- include/linux/posix_acl.h | 24 +- include/linux/richacl.h | 218 ++++++ include/linux/richacl_xattr.h | 31 + include/uapi/linux/Kbuild | 2 + include/uapi/linux/fs.h | 3 +- include/uapi/linux/richacl.h | 152 ++++ include/uapi/linux/richacl_xattr.h | 44 ++ include/uapi/linux/xattr.h | 2 + 34 files changed, 2195 insertions(+), 161 deletions(-) create mode 100644 fs/ext4/richacl.c create mode 100644 fs/ext4/richacl.h create mode 100644 fs/richacl.c create mode 100644 fs/richacl_xattr.c create mode 100644 include/linux/acl.h create mode 100644 include/linux/richacl.h create mode 100644 include/linux/richacl_xattr.h create mode 100644 include/uapi/linux/richacl.h create mode 100644 include/uapi/linux/richacl_xattr.h -- 2.7.4