diff options
Diffstat (limited to 'include/linux/sysctl.h')
| -rw-r--r-- | include/linux/sysctl.h | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h index 571f01d20a86..24141b4d1a11 100644 --- a/include/linux/sysctl.h +++ b/include/linux/sysctl.h | |||
| @@ -945,11 +945,14 @@ enum | |||
| 945 | /* For the /proc/sys support */ | 945 | /* For the /proc/sys support */ |
| 946 | struct ctl_table; | 946 | struct ctl_table; |
| 947 | struct nsproxy; | 947 | struct nsproxy; |
| 948 | struct ctl_table_root; | ||
| 949 | |||
| 948 | extern struct ctl_table_header *sysctl_head_next(struct ctl_table_header *prev); | 950 | extern struct ctl_table_header *sysctl_head_next(struct ctl_table_header *prev); |
| 949 | extern struct ctl_table_header *__sysctl_head_next(struct nsproxy *namespaces, | 951 | extern struct ctl_table_header *__sysctl_head_next(struct nsproxy *namespaces, |
| 950 | struct ctl_table_header *prev); | 952 | struct ctl_table_header *prev); |
| 951 | extern void sysctl_head_finish(struct ctl_table_header *prev); | 953 | extern void sysctl_head_finish(struct ctl_table_header *prev); |
| 952 | extern int sysctl_perm(struct ctl_table *table, int op); | 954 | extern int sysctl_perm(struct ctl_table_root *root, |
| 955 | struct ctl_table *table, int op); | ||
| 953 | 956 | ||
| 954 | typedef struct ctl_table ctl_table; | 957 | typedef struct ctl_table ctl_table; |
| 955 | 958 | ||
| @@ -981,11 +984,6 @@ extern int do_sysctl (int __user *name, int nlen, | |||
| 981 | void __user *oldval, size_t __user *oldlenp, | 984 | void __user *oldval, size_t __user *oldlenp, |
| 982 | void __user *newval, size_t newlen); | 985 | void __user *newval, size_t newlen); |
| 983 | 986 | ||
| 984 | extern int do_sysctl_strategy (struct ctl_table *table, | ||
| 985 | int __user *name, int nlen, | ||
| 986 | void __user *oldval, size_t __user *oldlenp, | ||
| 987 | void __user *newval, size_t newlen); | ||
| 988 | |||
| 989 | extern ctl_handler sysctl_data; | 987 | extern ctl_handler sysctl_data; |
| 990 | extern ctl_handler sysctl_string; | 988 | extern ctl_handler sysctl_string; |
| 991 | extern ctl_handler sysctl_intvec; | 989 | extern ctl_handler sysctl_intvec; |
| @@ -1054,6 +1052,8 @@ struct ctl_table_root { | |||
| 1054 | struct list_head header_list; | 1052 | struct list_head header_list; |
| 1055 | struct list_head *(*lookup)(struct ctl_table_root *root, | 1053 | struct list_head *(*lookup)(struct ctl_table_root *root, |
| 1056 | struct nsproxy *namespaces); | 1054 | struct nsproxy *namespaces); |
| 1055 | int (*permissions)(struct ctl_table_root *root, | ||
| 1056 | struct nsproxy *namespaces, struct ctl_table *table); | ||
| 1057 | }; | 1057 | }; |
| 1058 | 1058 | ||
| 1059 | /* struct ctl_table_header is used to maintain dynamic lists of | 1059 | /* struct ctl_table_header is used to maintain dynamic lists of |
| @@ -1085,8 +1085,6 @@ struct ctl_table_header *register_sysctl_paths(const struct ctl_path *path, | |||
| 1085 | void unregister_sysctl_table(struct ctl_table_header * table); | 1085 | void unregister_sysctl_table(struct ctl_table_header * table); |
| 1086 | int sysctl_check_table(struct nsproxy *namespaces, struct ctl_table *table); | 1086 | int sysctl_check_table(struct nsproxy *namespaces, struct ctl_table *table); |
| 1087 | 1087 | ||
| 1088 | #else /* __KERNEL__ */ | ||
| 1089 | |||
| 1090 | #endif /* __KERNEL__ */ | 1088 | #endif /* __KERNEL__ */ |
| 1091 | 1089 | ||
| 1092 | #endif /* _LINUX_SYSCTL_H */ | 1090 | #endif /* _LINUX_SYSCTL_H */ |
