sysctl net: Remove unused binary sysctl code
Now that sys_sysctl is a compatiblity wrapper around /proc/sys all sysctl strategy routines, and all ctl_name and strategy entries in the sysctl tables are unused, and can be revmoed. In addition neigh_sysctl_register has been modified to no longer take a strategy argument and it's callers have been modified not to pass one. Cc: "David Miller" <davem@davemloft.net> Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> Cc: netdev@vger.kernel.org Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
This commit is contained in:
@@ -89,7 +89,6 @@ static struct dn_dev_parms dn_dev_list[] = {
|
||||
.t2 = 1,
|
||||
.t3 = 10,
|
||||
.name = "ethernet",
|
||||
.ctl_name = NET_DECNET_CONF_ETHER,
|
||||
.up = dn_eth_up,
|
||||
.down = dn_eth_down,
|
||||
.timer3 = dn_send_brd_hello,
|
||||
@@ -101,7 +100,6 @@ static struct dn_dev_parms dn_dev_list[] = {
|
||||
.t2 = 1,
|
||||
.t3 = 10,
|
||||
.name = "ipgre",
|
||||
.ctl_name = NET_DECNET_CONF_GRE,
|
||||
.timer3 = dn_send_brd_hello,
|
||||
},
|
||||
#if 0
|
||||
@@ -112,7 +110,6 @@ static struct dn_dev_parms dn_dev_list[] = {
|
||||
.t2 = 1,
|
||||
.t3 = 120,
|
||||
.name = "x25",
|
||||
.ctl_name = NET_DECNET_CONF_X25,
|
||||
.timer3 = dn_send_ptp_hello,
|
||||
},
|
||||
#endif
|
||||
@@ -124,7 +121,6 @@ static struct dn_dev_parms dn_dev_list[] = {
|
||||
.t2 = 1,
|
||||
.t3 = 10,
|
||||
.name = "ppp",
|
||||
.ctl_name = NET_DECNET_CONF_PPP,
|
||||
.timer3 = dn_send_brd_hello,
|
||||
},
|
||||
#endif
|
||||
@@ -135,7 +131,6 @@ static struct dn_dev_parms dn_dev_list[] = {
|
||||
.t2 = 1,
|
||||
.t3 = 120,
|
||||
.name = "ddcmp",
|
||||
.ctl_name = NET_DECNET_CONF_DDCMP,
|
||||
.timer3 = dn_send_ptp_hello,
|
||||
},
|
||||
{
|
||||
@@ -145,7 +140,6 @@ static struct dn_dev_parms dn_dev_list[] = {
|
||||
.t2 = 1,
|
||||
.t3 = 10,
|
||||
.name = "loopback",
|
||||
.ctl_name = NET_DECNET_CONF_LOOPBACK,
|
||||
.timer3 = dn_send_brd_hello,
|
||||
}
|
||||
};
|
||||
@@ -166,10 +160,6 @@ static int max_priority[] = { 127 }; /* From DECnet spec */
|
||||
|
||||
static int dn_forwarding_proc(ctl_table *, int,
|
||||
void __user *, size_t *, loff_t *);
|
||||
static int dn_forwarding_sysctl(ctl_table *table,
|
||||
void __user *oldval, size_t __user *oldlenp,
|
||||
void __user *newval, size_t newlen);
|
||||
|
||||
static struct dn_dev_sysctl_table {
|
||||
struct ctl_table_header *sysctl_header;
|
||||
ctl_table dn_dev_vars[5];
|
||||
@@ -177,44 +167,36 @@ static struct dn_dev_sysctl_table {
|
||||
NULL,
|
||||
{
|
||||
{
|
||||
.ctl_name = NET_DECNET_CONF_DEV_FORWARDING,
|
||||
.procname = "forwarding",
|
||||
.data = (void *)DN_DEV_PARMS_OFFSET(forwarding),
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = dn_forwarding_proc,
|
||||
.strategy = dn_forwarding_sysctl,
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_CONF_DEV_PRIORITY,
|
||||
.procname = "priority",
|
||||
.data = (void *)DN_DEV_PARMS_OFFSET(priority),
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_minmax,
|
||||
.strategy = sysctl_intvec,
|
||||
.extra1 = &min_priority,
|
||||
.extra2 = &max_priority
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_CONF_DEV_T2,
|
||||
.procname = "t2",
|
||||
.data = (void *)DN_DEV_PARMS_OFFSET(t2),
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_minmax,
|
||||
.strategy = sysctl_intvec,
|
||||
.extra1 = &min_t2,
|
||||
.extra2 = &max_t2
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_CONF_DEV_T3,
|
||||
.procname = "t3",
|
||||
.data = (void *)DN_DEV_PARMS_OFFSET(t3),
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_minmax,
|
||||
.strategy = sysctl_intvec,
|
||||
.extra1 = &min_t3,
|
||||
.extra2 = &max_t3
|
||||
},
|
||||
@@ -230,9 +212,9 @@ static void dn_dev_sysctl_register(struct net_device *dev, struct dn_dev_parms *
|
||||
#define DN_CTL_PATH_DEV 3
|
||||
|
||||
struct ctl_path dn_ctl_path[] = {
|
||||
{ .procname = "net", .ctl_name = CTL_NET, },
|
||||
{ .procname = "decnet", .ctl_name = NET_DECNET, },
|
||||
{ .procname = "conf", .ctl_name = NET_DECNET_CONF, },
|
||||
{ .procname = "net", },
|
||||
{ .procname = "decnet", },
|
||||
{ .procname = "conf", },
|
||||
{ /* to be set */ },
|
||||
{ },
|
||||
};
|
||||
@@ -248,10 +230,8 @@ static void dn_dev_sysctl_register(struct net_device *dev, struct dn_dev_parms *
|
||||
|
||||
if (dev) {
|
||||
dn_ctl_path[DN_CTL_PATH_DEV].procname = dev->name;
|
||||
dn_ctl_path[DN_CTL_PATH_DEV].ctl_name = dev->ifindex;
|
||||
} else {
|
||||
dn_ctl_path[DN_CTL_PATH_DEV].procname = parms->name;
|
||||
dn_ctl_path[DN_CTL_PATH_DEV].ctl_name = parms->ctl_name;
|
||||
}
|
||||
|
||||
t->dn_dev_vars[0].extra1 = (void *)dev;
|
||||
@@ -317,44 +297,6 @@ static int dn_forwarding_proc(ctl_table *table, int write,
|
||||
#endif
|
||||
}
|
||||
|
||||
static int dn_forwarding_sysctl(ctl_table *table,
|
||||
void __user *oldval, size_t __user *oldlenp,
|
||||
void __user *newval, size_t newlen)
|
||||
{
|
||||
#ifdef CONFIG_DECNET_ROUTER
|
||||
struct net_device *dev = table->extra1;
|
||||
struct dn_dev *dn_db;
|
||||
int value;
|
||||
|
||||
if (table->extra1 == NULL)
|
||||
return -EINVAL;
|
||||
|
||||
dn_db = dev->dn_ptr;
|
||||
|
||||
if (newval && newlen) {
|
||||
if (newlen != sizeof(int))
|
||||
return -EINVAL;
|
||||
|
||||
if (get_user(value, (int __user *)newval))
|
||||
return -EFAULT;
|
||||
if (value < 0)
|
||||
return -EINVAL;
|
||||
if (value > 2)
|
||||
return -EINVAL;
|
||||
|
||||
if (dn_db->parms.down)
|
||||
dn_db->parms.down(dev);
|
||||
dn_db->parms.forwarding = value;
|
||||
if (dn_db->parms.up)
|
||||
dn_db->parms.up(dev);
|
||||
}
|
||||
|
||||
return 0;
|
||||
#else
|
||||
return -EINVAL;
|
||||
#endif
|
||||
}
|
||||
|
||||
#else /* CONFIG_SYSCTL */
|
||||
static void dn_dev_sysctl_unregister(struct dn_dev_parms *parms)
|
||||
{
|
||||
|
@@ -131,39 +131,6 @@ static int parse_addr(__le16 *addr, char *str)
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int dn_node_address_strategy(ctl_table *table,
|
||||
void __user *oldval, size_t __user *oldlenp,
|
||||
void __user *newval, size_t newlen)
|
||||
{
|
||||
size_t len;
|
||||
__le16 addr;
|
||||
|
||||
if (oldval && oldlenp) {
|
||||
if (get_user(len, oldlenp))
|
||||
return -EFAULT;
|
||||
if (len) {
|
||||
if (len != sizeof(unsigned short))
|
||||
return -EINVAL;
|
||||
if (put_user(decnet_address, (__le16 __user *)oldval))
|
||||
return -EFAULT;
|
||||
}
|
||||
}
|
||||
if (newval && newlen) {
|
||||
if (newlen != sizeof(unsigned short))
|
||||
return -EINVAL;
|
||||
if (get_user(addr, (__le16 __user *)newval))
|
||||
return -EFAULT;
|
||||
|
||||
dn_dev_devices_off();
|
||||
|
||||
decnet_address = addr;
|
||||
|
||||
dn_dev_devices_on();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int dn_node_address_handler(ctl_table *table, int write,
|
||||
void __user *buffer,
|
||||
size_t *lenp, loff_t *ppos)
|
||||
@@ -215,65 +182,6 @@ static int dn_node_address_handler(ctl_table *table, int write,
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int dn_def_dev_strategy(ctl_table *table,
|
||||
void __user *oldval, size_t __user *oldlenp,
|
||||
void __user *newval, size_t newlen)
|
||||
{
|
||||
size_t len;
|
||||
struct net_device *dev;
|
||||
char devname[17];
|
||||
size_t namel;
|
||||
int rv = 0;
|
||||
|
||||
devname[0] = 0;
|
||||
|
||||
if (oldval && oldlenp) {
|
||||
if (get_user(len, oldlenp))
|
||||
return -EFAULT;
|
||||
if (len) {
|
||||
dev = dn_dev_get_default();
|
||||
if (dev) {
|
||||
strcpy(devname, dev->name);
|
||||
dev_put(dev);
|
||||
}
|
||||
|
||||
namel = strlen(devname) + 1;
|
||||
if (len > namel) len = namel;
|
||||
|
||||
if (copy_to_user(oldval, devname, len))
|
||||
return -EFAULT;
|
||||
|
||||
if (put_user(len, oldlenp))
|
||||
return -EFAULT;
|
||||
}
|
||||
}
|
||||
|
||||
if (newval && newlen) {
|
||||
if (newlen > 16)
|
||||
return -E2BIG;
|
||||
|
||||
if (copy_from_user(devname, newval, newlen))
|
||||
return -EFAULT;
|
||||
|
||||
devname[newlen] = 0;
|
||||
|
||||
dev = dev_get_by_name(&init_net, devname);
|
||||
if (dev == NULL)
|
||||
return -ENODEV;
|
||||
|
||||
rv = -ENODEV;
|
||||
if (dev->dn_ptr != NULL) {
|
||||
rv = dn_dev_set_default(dev, 1);
|
||||
if (rv)
|
||||
dev_put(dev);
|
||||
}
|
||||
}
|
||||
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
||||
static int dn_def_dev_handler(ctl_table *table, int write,
|
||||
void __user *buffer,
|
||||
size_t *lenp, loff_t *ppos)
|
||||
@@ -339,138 +247,112 @@ static int dn_def_dev_handler(ctl_table *table, int write,
|
||||
|
||||
static ctl_table dn_table[] = {
|
||||
{
|
||||
.ctl_name = NET_DECNET_NODE_ADDRESS,
|
||||
.procname = "node_address",
|
||||
.maxlen = 7,
|
||||
.mode = 0644,
|
||||
.proc_handler = dn_node_address_handler,
|
||||
.strategy = dn_node_address_strategy,
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_NODE_NAME,
|
||||
.procname = "node_name",
|
||||
.data = node_name,
|
||||
.maxlen = 7,
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dostring,
|
||||
.strategy = sysctl_string,
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_DEFAULT_DEVICE,
|
||||
.procname = "default_device",
|
||||
.maxlen = 16,
|
||||
.mode = 0644,
|
||||
.proc_handler = dn_def_dev_handler,
|
||||
.strategy = dn_def_dev_strategy,
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_TIME_WAIT,
|
||||
.procname = "time_wait",
|
||||
.data = &decnet_time_wait,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_minmax,
|
||||
.strategy = sysctl_intvec,
|
||||
.extra1 = &min_decnet_time_wait,
|
||||
.extra2 = &max_decnet_time_wait
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_DN_COUNT,
|
||||
.procname = "dn_count",
|
||||
.data = &decnet_dn_count,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_minmax,
|
||||
.strategy = sysctl_intvec,
|
||||
.extra1 = &min_state_count,
|
||||
.extra2 = &max_state_count
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_DI_COUNT,
|
||||
.procname = "di_count",
|
||||
.data = &decnet_di_count,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_minmax,
|
||||
.strategy = sysctl_intvec,
|
||||
.extra1 = &min_state_count,
|
||||
.extra2 = &max_state_count
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_DR_COUNT,
|
||||
.procname = "dr_count",
|
||||
.data = &decnet_dr_count,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_minmax,
|
||||
.strategy = sysctl_intvec,
|
||||
.extra1 = &min_state_count,
|
||||
.extra2 = &max_state_count
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_DST_GC_INTERVAL,
|
||||
.procname = "dst_gc_interval",
|
||||
.data = &decnet_dst_gc_interval,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_minmax,
|
||||
.strategy = sysctl_intvec,
|
||||
.extra1 = &min_decnet_dst_gc_interval,
|
||||
.extra2 = &max_decnet_dst_gc_interval
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_NO_FC_MAX_CWND,
|
||||
.procname = "no_fc_max_cwnd",
|
||||
.data = &decnet_no_fc_max_cwnd,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec_minmax,
|
||||
.strategy = sysctl_intvec,
|
||||
.extra1 = &min_decnet_no_fc_max_cwnd,
|
||||
.extra2 = &max_decnet_no_fc_max_cwnd
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_MEM,
|
||||
.procname = "decnet_mem",
|
||||
.data = &sysctl_decnet_mem,
|
||||
.maxlen = sizeof(sysctl_decnet_mem),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec,
|
||||
.strategy = sysctl_intvec,
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_RMEM,
|
||||
.procname = "decnet_rmem",
|
||||
.data = &sysctl_decnet_rmem,
|
||||
.maxlen = sizeof(sysctl_decnet_rmem),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec,
|
||||
.strategy = sysctl_intvec,
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_WMEM,
|
||||
.procname = "decnet_wmem",
|
||||
.data = &sysctl_decnet_wmem,
|
||||
.maxlen = sizeof(sysctl_decnet_wmem),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec,
|
||||
.strategy = sysctl_intvec,
|
||||
},
|
||||
{
|
||||
.ctl_name = NET_DECNET_DEBUG_LEVEL,
|
||||
.procname = "debug",
|
||||
.data = &decnet_debug_level,
|
||||
.maxlen = sizeof(int),
|
||||
.mode = 0644,
|
||||
.proc_handler = proc_dointvec,
|
||||
.strategy = sysctl_intvec,
|
||||
},
|
||||
{0}
|
||||
{ }
|
||||
};
|
||||
|
||||
static struct ctl_path dn_path[] = {
|
||||
{ .procname = "net", .ctl_name = CTL_NET, },
|
||||
{ .procname = "decnet", .ctl_name = NET_DECNET, },
|
||||
{ .procname = "net", },
|
||||
{ .procname = "decnet", },
|
||||
{ }
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user