diff options
author | Eric W. Biederman <ebiederm@xmission.com> | 2007-10-18 03:05:23 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-18 14:37:22 -0700 |
commit | 49a0c45833c9aa9852ba02c9df0f18029509d0a9 (patch) | |
tree | 0884aec3c522e495aa8a412b44fc6c8c24522639 /include/linux | |
parent | d8217f076b73441dd3869c0c880df000655084cc (diff) |
sysctl: Factor out sysctl_data.
There as been no easy way to wrap the default sysctl strategy routine except
for returning 0. Which is not always what we want. The few instances I have
seen that want different behaviour have written their own version of
sysctl_data. While not too hard it is unnecessary code and has the potential
for extra bugs.
So to make these situations easier and make that part of sysctl more symetric
I have factord sysctl_data out of do_sysctl_strategy and exported as a
function everyone can use.
Further having sysctl_data be an explicit function makes checking for badly
formed sysctl tables much easier.
Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Cc: Alexey Dobriyan <adobriyan@sw.ru>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/sysctl.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h index f73be4cd662..5ca510b3cbe 100644 --- a/include/linux/sysctl.h +++ b/include/linux/sysctl.h @@ -972,6 +972,7 @@ extern int do_sysctl_strategy (struct ctl_table *table, void __user *oldval, size_t __user *oldlenp, void __user *newval, size_t newlen); +extern ctl_handler sysctl_data; extern ctl_handler sysctl_string; extern ctl_handler sysctl_intvec; extern ctl_handler sysctl_jiffies; |