Merge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
[linux-2.6] / net / appletalk / sysctl_net_atalk.c
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_table atalk_dir_table[] = {
53         {
54                 .ctl_name       = NET_ATALK,
55                 .procname       = "appletalk",
56                 .mode           = 0555,
57                 .child          = atalk_table,
58         },
59         { 0 },
60 };
61
62 static struct ctl_table atalk_root_table[] = {
63         {
64                 .ctl_name       = CTL_NET,
65                 .procname       = "net",
66                 .mode           = 0555,
67                 .child          = atalk_dir_table,
68         },
69         { 0 },
70 };
71
72 static struct ctl_table_header *atalk_table_header;
73
74 void atalk_register_sysctl(void)
75 {
76         atalk_table_header = register_sysctl_table(atalk_root_table, 1);
77 }
78
79 void atalk_unregister_sysctl(void)
80 {
81         unregister_sysctl_table(atalk_table_header);
82 }