xfs
[Top] [All Lists]

[PATCH] xfs: change the immutable in xfs_open_by_handle

To: xfs@xxxxxxxxxxx
Subject: [PATCH] xfs: change the immutable in xfs_open_by_handle
From: Mark Tinguely <tinguely@xxxxxxx>
Date: Tue, 10 Sep 2013 13:47:20 -0500
Cc: Greg Banks <gbanks@xxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
User-agent: quilt/0.51-1
This patch allows clients like DMF to modify an immutable file
without changing the immutable capability on the file, which
would expose the file to change.

This patch is restricted to holders of the CAP_LINUX_IMMUTABLE,
so no addition security risk has been introduced.

Signed-off-by: Greg Banks <gbanks@xxxxxxx>
Singed-off-by: Mark Tinguely <tinguely@xxxxxxx>
---
 fs/xfs/xfs_ioctl.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Index: b/fs/xfs/xfs_ioctl.c
===================================================================
--- a/fs/xfs/xfs_ioctl.c
+++ b/fs/xfs/xfs_ioctl.c
@@ -237,7 +237,9 @@ xfs_open_by_handle(
                goto out_dput;
        }
 
-       if ((fmode & FMODE_WRITE) && IS_IMMUTABLE(inode)) {
+       if ((permflag & FMODE_WRITE) &&
+           IS_IMMUTABLE(inode) &&
+           !capable(CAP_LINUX_IMMUTABLE)) {
                error = -XFS_ERROR(EACCES);
                goto out_dput;
        }


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