-
- Downloads
[PATCH] sanitize proc_sysctl
* keep references to ctl_table_head and ctl_table in /proc/sys inodes
* grab the former during operations, use the latter for access to
entry if that succeeds
* have ->d_compare() check if table should be seen for one who does lookup;
that allows us to avoid flipping inodes - if we have the same name resolve
to different things, we'll just keep several dentries and ->d_compare()
will reject the wrong ones.
* have ->lookup() and ->readdir() scan the table of our inode first, then
walk all ctl_table_header and scan ->attached_by for those that are
attached to our directory.
* implement ->getattr().
* get rid of insane amounts of tree-walking
* get rid of the need to know dentry in ->permission() and of the contortions
induced by that.
Signed-off-by:
Al Viro <viro@zeniv.linux.org.uk>
Showing
- fs/proc/inode.c 5 additions, 0 deletionsfs/proc/inode.c
- fs/proc/proc_sysctl.c 192 additions, 235 deletionsfs/proc/proc_sysctl.c
- include/linux/proc_fs.h 5 additions, 0 deletionsinclude/linux/proc_fs.h
- include/linux/sysctl.h 1 addition, 0 deletionsinclude/linux/sysctl.h
- kernel/sysctl.c 15 additions, 0 deletionskernel/sysctl.c
Loading
Please register or sign in to comment