summaryrefslogtreecommitdiff
path: root/sys/gnu/fs
diff options
context:
space:
mode:
authorPawel Jakub Dawidek <pjd@FreeBSD.org>2007-03-01 20:38:24 +0000
committerPawel Jakub Dawidek <pjd@FreeBSD.org>2007-03-01 20:38:24 +0000
commit3b2eb461e0ceecbb2f0bb227bb07f6a3e0c21f06 (patch)
tree63f80dc58e09bd7368c1fc36f80e0a5cb3f09a2b /sys/gnu/fs
parent6f7ca813c4c223d95a2539d0a9b26e127cdf7a18 (diff)
Notes
Diffstat (limited to 'sys/gnu/fs')
-rw-r--r--sys/gnu/fs/ext2fs/ext2_vnops.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/gnu/fs/ext2fs/ext2_vnops.c b/sys/gnu/fs/ext2fs/ext2_vnops.c
index 5ed7d117b2c8..c95777b26587 100644
--- a/sys/gnu/fs/ext2fs/ext2_vnops.c
+++ b/sys/gnu/fs/ext2fs/ext2_vnops.c
@@ -596,7 +596,7 @@ ext2_chown(vp, uid, gid, cred, td)
ip->i_gid = gid;
ip->i_uid = uid;
ip->i_flag |= IN_CHANGE;
- if (ouid != uid || ogid != gid) {
+ if ((ip->i_mode & (ISUID | ISGID)) && (ouid != uid || ogid != gid)) {
if (priv_check_cred(cred, PRIV_VFS_CLEARSUGID,
SUSER_ALLOWJAIL) != 0)
ip->i_mode &= ~(ISUID | ISGID);