18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * sysctl_net_atalk.c: sysctl interface to net AppleTalk subsystem.
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * Begun April 1, 1996, Mike Shaver.
68c2ecf20Sopenharmony_ci * Added /proc/sys/net/atalk directory entry (empty =) ). [MS]
78c2ecf20Sopenharmony_ci * Dynamic registration, added aarp entries. (5/30/97 Chris Horn)
88c2ecf20Sopenharmony_ci */
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci#include <linux/sysctl.h>
118c2ecf20Sopenharmony_ci#include <net/sock.h>
128c2ecf20Sopenharmony_ci#include <linux/atalk.h>
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_cistatic struct ctl_table atalk_table[] = {
158c2ecf20Sopenharmony_ci	{
168c2ecf20Sopenharmony_ci		.procname	= "aarp-expiry-time",
178c2ecf20Sopenharmony_ci		.data		= &sysctl_aarp_expiry_time,
188c2ecf20Sopenharmony_ci		.maxlen		= sizeof(int),
198c2ecf20Sopenharmony_ci		.mode		= 0644,
208c2ecf20Sopenharmony_ci		.proc_handler	= proc_dointvec_jiffies,
218c2ecf20Sopenharmony_ci	},
228c2ecf20Sopenharmony_ci	{
238c2ecf20Sopenharmony_ci		.procname	= "aarp-tick-time",
248c2ecf20Sopenharmony_ci		.data		= &sysctl_aarp_tick_time,
258c2ecf20Sopenharmony_ci		.maxlen		= sizeof(int),
268c2ecf20Sopenharmony_ci		.mode		= 0644,
278c2ecf20Sopenharmony_ci		.proc_handler	= proc_dointvec_jiffies,
288c2ecf20Sopenharmony_ci	},
298c2ecf20Sopenharmony_ci	{
308c2ecf20Sopenharmony_ci		.procname	= "aarp-retransmit-limit",
318c2ecf20Sopenharmony_ci		.data		= &sysctl_aarp_retransmit_limit,
328c2ecf20Sopenharmony_ci		.maxlen		= sizeof(int),
338c2ecf20Sopenharmony_ci		.mode		= 0644,
348c2ecf20Sopenharmony_ci		.proc_handler	= proc_dointvec,
358c2ecf20Sopenharmony_ci	},
368c2ecf20Sopenharmony_ci	{
378c2ecf20Sopenharmony_ci		.procname	= "aarp-resolve-time",
388c2ecf20Sopenharmony_ci		.data		= &sysctl_aarp_resolve_time,
398c2ecf20Sopenharmony_ci		.maxlen		= sizeof(int),
408c2ecf20Sopenharmony_ci		.mode		= 0644,
418c2ecf20Sopenharmony_ci		.proc_handler	= proc_dointvec_jiffies,
428c2ecf20Sopenharmony_ci	},
438c2ecf20Sopenharmony_ci	{ },
448c2ecf20Sopenharmony_ci};
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_cistatic struct ctl_table_header *atalk_table_header;
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ciint __init atalk_register_sysctl(void)
498c2ecf20Sopenharmony_ci{
508c2ecf20Sopenharmony_ci	atalk_table_header = register_net_sysctl(&init_net, "net/appletalk", atalk_table);
518c2ecf20Sopenharmony_ci	if (!atalk_table_header)
528c2ecf20Sopenharmony_ci		return -ENOMEM;
538c2ecf20Sopenharmony_ci	return 0;
548c2ecf20Sopenharmony_ci}
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_civoid atalk_unregister_sysctl(void)
578c2ecf20Sopenharmony_ci{
588c2ecf20Sopenharmony_ci	unregister_net_sysctl_table(atalk_table_header);
598c2ecf20Sopenharmony_ci}
60