diff options
Diffstat (limited to 'kernel/utsname_sysctl.c')
| -rw-r--r-- | kernel/utsname_sysctl.c | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/kernel/utsname_sysctl.c b/kernel/utsname_sysctl.c index 69eae358a726..a2cd77e70d4d 100644 --- a/kernel/utsname_sysctl.c +++ b/kernel/utsname_sysctl.c | |||
| @@ -57,78 +57,47 @@ static int proc_do_uts_string(ctl_table *table, int write, | |||
| 57 | #define proc_do_uts_string NULL | 57 | #define proc_do_uts_string NULL |
| 58 | #endif | 58 | #endif |
| 59 | 59 | ||
| 60 | |||
| 61 | #ifdef CONFIG_SYSCTL_SYSCALL | ||
| 62 | /* The generic string strategy routine: */ | ||
| 63 | static int sysctl_uts_string(ctl_table *table, | ||
| 64 | void __user *oldval, size_t __user *oldlenp, | ||
| 65 | void __user *newval, size_t newlen) | ||
| 66 | { | ||
| 67 | struct ctl_table uts_table; | ||
| 68 | int r, write; | ||
| 69 | write = newval && newlen; | ||
| 70 | memcpy(&uts_table, table, sizeof(uts_table)); | ||
| 71 | uts_table.data = get_uts(table, write); | ||
| 72 | r = sysctl_string(&uts_table, oldval, oldlenp, newval, newlen); | ||
| 73 | put_uts(table, write, uts_table.data); | ||
| 74 | return r; | ||
| 75 | } | ||
| 76 | #else | ||
| 77 | #define sysctl_uts_string NULL | ||
| 78 | #endif | ||
| 79 | |||
| 80 | static struct ctl_table uts_kern_table[] = { | 60 | static struct ctl_table uts_kern_table[] = { |
| 81 | { | 61 | { |
| 82 | .ctl_name = KERN_OSTYPE, | ||
| 83 | .procname = "ostype", | 62 | .procname = "ostype", |
| 84 | .data = init_uts_ns.name.sysname, | 63 | .data = init_uts_ns.name.sysname, |
| 85 | .maxlen = sizeof(init_uts_ns.name.sysname), | 64 | .maxlen = sizeof(init_uts_ns.name.sysname), |
| 86 | .mode = 0444, | 65 | .mode = 0444, |
| 87 | .proc_handler = proc_do_uts_string, | 66 | .proc_handler = proc_do_uts_string, |
| 88 | .strategy = sysctl_uts_string, | ||
| 89 | }, | 67 | }, |
| 90 | { | 68 | { |
| 91 | .ctl_name = KERN_OSRELEASE, | ||
| 92 | .procname = "osrelease", | 69 | .procname = "osrelease", |
| 93 | .data = init_uts_ns.name.release, | 70 | .data = init_uts_ns.name.release, |
| 94 | .maxlen = sizeof(init_uts_ns.name.release), | 71 | .maxlen = sizeof(init_uts_ns.name.release), |
| 95 | .mode = 0444, | 72 | .mode = 0444, |
| 96 | .proc_handler = proc_do_uts_string, | 73 | .proc_handler = proc_do_uts_string, |
| 97 | .strategy = sysctl_uts_string, | ||
| 98 | }, | 74 | }, |
| 99 | { | 75 | { |
| 100 | .ctl_name = KERN_VERSION, | ||
| 101 | .procname = "version", | 76 | .procname = "version", |
| 102 | .data = init_uts_ns.name.version, | 77 | .data = init_uts_ns.name.version, |
| 103 | .maxlen = sizeof(init_uts_ns.name.version), | 78 | .maxlen = sizeof(init_uts_ns.name.version), |
| 104 | .mode = 0444, | 79 | .mode = 0444, |
| 105 | .proc_handler = proc_do_uts_string, | 80 | .proc_handler = proc_do_uts_string, |
| 106 | .strategy = sysctl_uts_string, | ||
| 107 | }, | 81 | }, |
| 108 | { | 82 | { |
| 109 | .ctl_name = KERN_NODENAME, | ||
| 110 | .procname = "hostname", | 83 | .procname = "hostname", |
| 111 | .data = init_uts_ns.name.nodename, | 84 | .data = init_uts_ns.name.nodename, |
| 112 | .maxlen = sizeof(init_uts_ns.name.nodename), | 85 | .maxlen = sizeof(init_uts_ns.name.nodename), |
| 113 | .mode = 0644, | 86 | .mode = 0644, |
| 114 | .proc_handler = proc_do_uts_string, | 87 | .proc_handler = proc_do_uts_string, |
| 115 | .strategy = sysctl_uts_string, | ||
| 116 | }, | 88 | }, |
| 117 | { | 89 | { |
| 118 | .ctl_name = KERN_DOMAINNAME, | ||
| 119 | .procname = "domainname", | 90 | .procname = "domainname", |
| 120 | .data = init_uts_ns.name.domainname, | 91 | .data = init_uts_ns.name.domainname, |
| 121 | .maxlen = sizeof(init_uts_ns.name.domainname), | 92 | .maxlen = sizeof(init_uts_ns.name.domainname), |
| 122 | .mode = 0644, | 93 | .mode = 0644, |
| 123 | .proc_handler = proc_do_uts_string, | 94 | .proc_handler = proc_do_uts_string, |
| 124 | .strategy = sysctl_uts_string, | ||
| 125 | }, | 95 | }, |
| 126 | {} | 96 | {} |
| 127 | }; | 97 | }; |
| 128 | 98 | ||
| 129 | static struct ctl_table uts_root_table[] = { | 99 | static struct ctl_table uts_root_table[] = { |
| 130 | { | 100 | { |
| 131 | .ctl_name = CTL_KERN, | ||
| 132 | .procname = "kernel", | 101 | .procname = "kernel", |
| 133 | .mode = 0555, | 102 | .mode = 0555, |
| 134 | .child = uts_kern_table, | 103 | .child = uts_kern_table, |
