Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
[linux-drm-fsl-dcu.git] / net / ipx / sysctl_net_ipx.c
1 /* -*- linux-c -*-
2  * sysctl_net_ipx.c: sysctl interface to net IPX subsystem.
3  *
4  * Begun April 1, 1996, Mike Shaver.
5  * Added /proc/sys/net/ipx directory entry (empty =) ). [MS]
6  * Added /proc/sys/net/ipx/ipx_pprop_broadcasting - acme March 4, 2001
7  */
8
9 #include <linux/mm.h>
10 #include <linux/sysctl.h>
11
12 #ifndef CONFIG_SYSCTL
13 #error This file should not be compiled without CONFIG_SYSCTL defined
14 #endif
15
16 /* From af_ipx.c */
17 extern int sysctl_ipx_pprop_broadcasting;
18
19 static struct ctl_table ipx_table[] = {
20         {
21                 .ctl_name       = NET_IPX_PPROP_BROADCASTING,
22                 .procname       = "ipx_pprop_broadcasting",
23                 .data           = &sysctl_ipx_pprop_broadcasting,
24                 .maxlen         = sizeof(int),
25                 .mode           = 0644,
26                 .proc_handler   = &proc_dointvec,
27         },
28         { 0 },
29 };
30
31 static struct ctl_table ipx_dir_table[] = {
32         {
33                 .ctl_name       = NET_IPX,
34                 .procname       = "ipx",
35                 .mode           = 0555,
36                 .child          = ipx_table,
37         },
38         { 0 },
39 };
40
41 static struct ctl_table ipx_root_table[] = {
42         {
43                 .ctl_name       = CTL_NET,
44                 .procname       = "net",
45                 .mode           = 0555,
46                 .child          = ipx_dir_table,
47         },
48         { 0 },
49 };
50
51 static struct ctl_table_header *ipx_table_header;
52
53 void ipx_register_sysctl(void)
54 {
55         ipx_table_header = register_sysctl_table(ipx_root_table, 1);
56 }
57
58 void ipx_unregister_sysctl(void)
59 {
60         unregister_sysctl_table(ipx_table_header);
61 }