1 /* 2 * sysctl_net_atalk.c: sysctl interface to net AppleTalk subsystem. 3 * 4 * Begun April 1, 1996, Mike Shaver. 5 * Added /proc/sys/net/atalk directory entry (empty =) ). [MS] 6 * Dynamic registration, added aarp entries. (5/30/97 Chris Horn) 7 */ 8 9 #include <linux/sysctl.h> 10 #include <net/sock.h> 11 #include <linux/atalk.h> 12 13 static struct ctl_table atalk_table[] = { 14 { 15 .ctl_name = NET_ATALK_AARP_EXPIRY_TIME, 16 .procname = "aarp-expiry-time", 17 .data = &sysctl_aarp_expiry_time, 18 .maxlen = sizeof(int), 19 .mode = 0644, 20 .proc_handler = &proc_dointvec_jiffies, 21 .strategy = &sysctl_jiffies, 22 }, 23 { 24 .ctl_name = NET_ATALK_AARP_TICK_TIME, 25 .procname = "aarp-tick-time", 26 .data = &sysctl_aarp_tick_time, 27 .maxlen = sizeof(int), 28 .mode = 0644, 29 .proc_handler = &proc_dointvec_jiffies, 30 .strategy = &sysctl_jiffies, 31 }, 32 { 33 .ctl_name = NET_ATALK_AARP_RETRANSMIT_LIMIT, 34 .procname = "aarp-retransmit-limit", 35 .data = &sysctl_aarp_retransmit_limit, 36 .maxlen = sizeof(int), 37 .mode = 0644, 38 .proc_handler = &proc_dointvec, 39 }, 40 { 41 .ctl_name = NET_ATALK_AARP_RESOLVE_TIME, 42 .procname = "aarp-resolve-time", 43 .data = &sysctl_aarp_resolve_time, 44 .maxlen = sizeof(int), 45 .mode = 0644, 46 .proc_handler = &proc_dointvec_jiffies, 47 .strategy = &sysctl_jiffies, 48 }, 49 { 0 }, 50 }; 51 52 static struct ctl_path atalk_path[] = { 53 { .procname = "net", .ctl_name = CTL_NET, }, 54 { .procname = "appletalk", .ctl_name = NET_ATALK, }, 55 { } 56 }; 57 58 static struct ctl_table_header *atalk_table_header; 59 60 void atalk_register_sysctl(void) 61 { 62 atalk_table_header = register_sysctl_paths(atalk_path, atalk_table); 63 } 64 65 void atalk_unregister_sysctl(void) 66 { 67 unregister_sysctl_table(atalk_table_header); 68 } 69