[RFC][PATCH] UDF filesystem uid fix

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I would appreciate if someone with file system knowledge could review
this patch from Phillip Susi.


From: Phillip Susi <[email protected]>

The UDF filesystem refused to update the file's uid and gid on the
disk if the in memory inode's id matched the values in the uid= and
gid= mount options.  This was causing the owner to change from the
desktop user to root when the volume was ejected and remounted.  I
changed this so that if the inode's id matches the mount option, it
writes a -1 to disk, because when the filesystem reads a -1 from disk,
it uses the mount option for the in memory inode.  This allows you to
use the uid/gid mount options in the way you would expect.
---

 fs/udf/inode.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/fs/udf/inode.c b/fs/udf/inode.c
index 395e582..f892948 100644
--- a/fs/udf/inode.c
+++ b/fs/udf/inode.c
@@ -1337,9 +1337,13 @@ udf_update_inode(struct inode *inode, in
 
 	if (inode->i_uid != UDF_SB(inode->i_sb)->s_uid)
 		fe->uid = cpu_to_le32(inode->i_uid);
+	else
+		fe->uid = cpu_to_le32(-1);
 
 	if (inode->i_gid != UDF_SB(inode->i_sb)->s_gid)
 		fe->gid = cpu_to_le32(inode->i_gid);
+	else
+		fe->gid = cpu_to_le32(-1);
 
 	udfperms =	((inode->i_mode & S_IRWXO)     ) |
 			((inode->i_mode & S_IRWXG) << 2) |

-- 
Peter Osterlund - [email protected]
http://web.telia.com/~u89404340
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux