summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-kernel/xbox-sources/files/xbox-sources.CAN-2004-0497.patch')
-rw-r--r--sys-kernel/xbox-sources/files/xbox-sources.CAN-2004-0497.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/sys-kernel/xbox-sources/files/xbox-sources.CAN-2004-0497.patch b/sys-kernel/xbox-sources/files/xbox-sources.CAN-2004-0497.patch
new file mode 100644
index 000000000000..41b3196f84ea
--- /dev/null
+++ b/sys-kernel/xbox-sources/files/xbox-sources.CAN-2004-0497.patch
@@ -0,0 +1,26 @@
+# This is a BitKeeper generated diff -Nru style patch.
+#
+# ChangeSet
+# 2004/07/02 20:55:04-07:00 chrisw@osdl.org
+# [PATCH] chown permission check fix for ATTR_GID
+#
+# SuSE discovered this problem with chown and ATTR_GID. Make sure user
+# is authorized to change the group, CAN-2004-0497.
+#
+# fs/attr.c
+# 2004/07/02 09:07:32-07:00 chrisw@osdl.org +2 -1
+# chown permission check fix for ATTR_GID
+#
+diff -Nru a/fs/attr.c b/fs/attr.c
+--- a/fs/attr.c 2004-07-08 16:35:57 -07:00
++++ b/fs/attr.c 2004-07-08 16:35:57 -07:00
+@@ -35,7 +35,8 @@
+
+ /* Make sure caller can chgrp. */
+ if ((ia_valid & ATTR_GID) &&
+- (!in_group_p(attr->ia_gid) && attr->ia_gid != inode->i_gid) &&
++ (current->fsuid != inode->i_uid ||
++ (!in_group_p(attr->ia_gid) && attr->ia_gid != inode->i_gid)) &&
+ !capable(CAP_CHOWN))
+ goto error;
+