2 * sysctl_net_core.c: sysctl interface to net core subsystem.
4 * Begun April 1, 1996, Mike Shaver.
5 * Added /proc/sys/net/core directory entry (empty =) ). [MS]
9 #include <linux/sysctl.h>
10 #include <linux/module.h>
11 #include <linux/socket.h>
16 extern int netdev_max_backlog
;
19 extern __u32 sysctl_wmem_max
;
20 extern __u32 sysctl_rmem_max
;
22 extern int sysctl_core_destroy_delay
;
25 extern u32 sysctl_xfrm_aevent_etime
;
26 extern u32 sysctl_xfrm_aevent_rseqth
;
27 extern int sysctl_xfrm_larval_drop
;
30 ctl_table core_table
[] = {
33 .ctl_name
= NET_CORE_WMEM_MAX
,
34 .procname
= "wmem_max",
35 .data
= &sysctl_wmem_max
,
36 .maxlen
= sizeof(int),
38 .proc_handler
= &proc_dointvec
41 .ctl_name
= NET_CORE_RMEM_MAX
,
42 .procname
= "rmem_max",
43 .data
= &sysctl_rmem_max
,
44 .maxlen
= sizeof(int),
46 .proc_handler
= &proc_dointvec
49 .ctl_name
= NET_CORE_WMEM_DEFAULT
,
50 .procname
= "wmem_default",
51 .data
= &sysctl_wmem_default
,
52 .maxlen
= sizeof(int),
54 .proc_handler
= &proc_dointvec
57 .ctl_name
= NET_CORE_RMEM_DEFAULT
,
58 .procname
= "rmem_default",
59 .data
= &sysctl_rmem_default
,
60 .maxlen
= sizeof(int),
62 .proc_handler
= &proc_dointvec
65 .ctl_name
= NET_CORE_DEV_WEIGHT
,
66 .procname
= "dev_weight",
68 .maxlen
= sizeof(int),
70 .proc_handler
= &proc_dointvec
73 .ctl_name
= NET_CORE_MAX_BACKLOG
,
74 .procname
= "netdev_max_backlog",
75 .data
= &netdev_max_backlog
,
76 .maxlen
= sizeof(int),
78 .proc_handler
= &proc_dointvec
81 .ctl_name
= NET_CORE_MSG_COST
,
82 .procname
= "message_cost",
83 .data
= &net_msg_cost
,
84 .maxlen
= sizeof(int),
86 .proc_handler
= &proc_dointvec_jiffies
,
87 .strategy
= &sysctl_jiffies
,
90 .ctl_name
= NET_CORE_MSG_BURST
,
91 .procname
= "message_burst",
92 .data
= &net_msg_burst
,
93 .maxlen
= sizeof(int),
95 .proc_handler
= &proc_dointvec
,
98 .ctl_name
= NET_CORE_OPTMEM_MAX
,
99 .procname
= "optmem_max",
100 .data
= &sysctl_optmem_max
,
101 .maxlen
= sizeof(int),
103 .proc_handler
= &proc_dointvec
107 .ctl_name
= NET_CORE_AEVENT_ETIME
,
108 .procname
= "xfrm_aevent_etime",
109 .data
= &sysctl_xfrm_aevent_etime
,
110 .maxlen
= sizeof(u32
),
112 .proc_handler
= &proc_dointvec
115 .ctl_name
= NET_CORE_AEVENT_RSEQTH
,
116 .procname
= "xfrm_aevent_rseqth",
117 .data
= &sysctl_xfrm_aevent_rseqth
,
118 .maxlen
= sizeof(u32
),
120 .proc_handler
= &proc_dointvec
123 .ctl_name
= CTL_UNNUMBERED
,
124 .procname
= "xfrm_larval_drop",
125 .data
= &sysctl_xfrm_larval_drop
,
126 .maxlen
= sizeof(int),
128 .proc_handler
= &proc_dointvec
130 #endif /* CONFIG_XFRM */
131 #endif /* CONFIG_NET */
133 .ctl_name
= NET_CORE_SOMAXCONN
,
134 .procname
= "somaxconn",
135 .data
= &sysctl_somaxconn
,
136 .maxlen
= sizeof(int),
138 .proc_handler
= &proc_dointvec
141 .ctl_name
= NET_CORE_BUDGET
,
142 .procname
= "netdev_budget",
143 .data
= &netdev_budget
,
144 .maxlen
= sizeof(int),
146 .proc_handler
= &proc_dointvec
149 .ctl_name
= NET_CORE_WARNINGS
,
150 .procname
= "warnings",
151 .data
= &net_msg_warn
,
152 .maxlen
= sizeof(int),
154 .proc_handler
= &proc_dointvec