selinux: do not check open perm on ftruncate call
Use the ATTR_FILE attribute to distinguish between truncate() and ftruncate() system calls. The two other cases where do_truncate is called with a filp (and therefore ATTR_FILE is set) are for coredump files and for open(O_TRUNC). In both of those cases the open permission has already been checked during file open and therefore does not need to be repeated. Commit 95dbf739 ("SELinux: check OPEN on truncate calls") fixed a major issue where domains were allowed to truncate files without the open permission. However, it introduced a new bug where a domain with the write permission can no longer ftruncate files without the open permission, even when they receive an already open file. (cherry picked from commit b21800f304392ee5d20f411c37470183cc779f11) Bug: 22567870 Change-Id: I2525a0e244c8d635b2d0c1f966071edbb365a43a Signed-off-by:Jeff Vander Stoep <jeffv@google.com> Acked-by:
Stephen Smalley <sds@tycho.nsa.gov> Signed-off-by:
Paul Moore <pmoore@redhat.com> Git-commit: e9e500827b871459306974c32a0b6398375ce7d5 Git-repo: https://android.googlesource.com/kernel/common/ Signed-off-by:
David Ng <dave@codeaurora.org> Signed-off-by:
Aravind Asam <aasam@codeaurora.org> Signed-off-by:
Bharat Pawar <bpawar@codeaurora.org>
Loading
Please register or sign in to comment