23 lines
581 B
Groff
23 lines
581 B
Groff
diff --git a/fs/proc/base.c b/fs/proc/base.c
|
|
index 5a8b89a..f801693 100644
|
|
--- a/fs/proc/base.c
|
|
+++ b/fs/proc/base.c
|
|
@@ -1404,8 +1404,8 @@ static int pid_revalidate(struct dentry
|
|
} else {
|
|
inode->i_uid = 0;
|
|
inode->i_gid = 0;
|
|
- inode->i_mode = 0;
|
|
}
|
|
+ inode->i_mode &= ~(S_ISUID | S_ISGID);
|
|
security_task_to_inode(task, inode);
|
|
return 1;
|
|
}
|
|
@@ -1433,6 +1433,7 @@ static int tid_fd_revalidate(struct dent
|
|
inode->i_uid = 0;
|
|
inode->i_gid = 0;
|
|
}
|
|
+ inode->i_mode &= ~(S_ISUID | S_ISGID);
|
|
security_task_to_inode(task, inode);
|
|
return 1;
|
|
}
|