patch-2.4.0-test10 linux/kernel/sysctl.c
Next file: linux/kernel/time.c
Previous file: linux/kernel/sys.c
Back to the patch index
Back to the overall index
- Lines: 79
- Date:
Mon Oct 30 12:24:22 2000
- Orig file:
v2.4.0-test9/linux/kernel/sysctl.c
- Orig date:
Sun Oct 8 10:50:38 2000
diff -u --recursive --new-file v2.4.0-test9/linux/kernel/sysctl.c linux/kernel/sysctl.c
@@ -1217,78 +1217,6 @@
return 1;
}
-int do_string (
- void *oldval, size_t *oldlenp, void *newval, size_t newlen,
- int rdwr, char *data, size_t max)
-{
- int l = strlen(data) + 1;
- if (newval && !rdwr)
- return -EPERM;
- if (newval && newlen >= max)
- return -EINVAL;
- if (oldval) {
- int old_l;
- if(get_user(old_l, oldlenp))
- return -EFAULT;
- if (l > old_l)
- return -ENOMEM;
- if(put_user(l, oldlenp) || copy_to_user(oldval, data, l))
- return -EFAULT;
- }
- if (newval) {
- if(copy_from_user(data, newval, newlen))
- return -EFAULT;
- data[newlen] = 0;
- }
- return 0;
-}
-
-int do_int (
- void *oldval, size_t *oldlenp, void *newval, size_t newlen,
- int rdwr, int *data)
-{
- if (newval && !rdwr)
- return -EPERM;
- if (newval && newlen != sizeof(int))
- return -EINVAL;
- if (oldval) {
- int old_l;
- if(get_user(old_l, oldlenp))
- return -EFAULT;
- if (old_l < sizeof(int))
- return -ENOMEM;
- if(put_user(sizeof(int), oldlenp)||copy_to_user(oldval, data, sizeof(int)))
- return -EFAULT;
- }
- if (newval)
- if(copy_from_user(data, newval, sizeof(int)))
- return -EFAULT;
- return 0;
-}
-
-int do_struct (
- void *oldval, size_t *oldlenp, void *newval, size_t newlen,
- int rdwr, void *data, size_t len)
-{
- if (newval && !rdwr)
- return -EPERM;
- if (newval && newlen != len)
- return -EINVAL;
- if (oldval) {
- int old_l;
- if(get_user(old_l, oldlenp))
- return -EFAULT;
- if (old_l < len)
- return -ENOMEM;
- if(put_user(len, oldlenp) || copy_to_user(oldval, data, len))
- return -EFAULT;
- }
- if (newval)
- if(copy_from_user(data, newval, len))
- return -EFAULT;
- return 0;
-}
-
#else /* CONFIG_SYSCTL */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)