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