Blame view

net/netrom/sysctl_net_netrom.c 4.22 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
  /*
   * This program is free software; you can redistribute it and/or modify
   * it under the terms of the GNU General Public License as published by
   * the Free Software Foundation; either version 2 of the License, or
   * (at your option) any later version.
   *
   * Copyright (C) 1996 Mike Shaver (shaver@zeroknowledge.com)
   */
  #include <linux/mm.h>
  #include <linux/sysctl.h>
  #include <linux/init.h>
  #include <net/ax25.h>
  #include <net/netrom.h>
  
  /*
   *	Values taken from NET/ROM documentation.
   */
  static int min_quality[] = {0}, max_quality[] = {255};
  static int min_obs[]     = {0}, max_obs[]     = {255};
  static int min_ttl[]     = {0}, max_ttl[]     = {255};
  static int min_t1[]      = {5 * HZ};
  static int max_t1[]      = {600 * HZ};
  static int min_n2[]      = {2}, max_n2[]      = {127};
  static int min_t2[]      = {1 * HZ};
  static int max_t2[]      = {60 * HZ};
  static int min_t4[]      = {1 * HZ};
  static int max_t4[]      = {1000 * HZ};
  static int min_window[]  = {1}, max_window[]  = {127};
  static int min_idle[]    = {0 * HZ};
  static int max_idle[]    = {65535 * HZ};
  static int min_route[]   = {0}, max_route[]   = {1};
  static int min_fails[]   = {1}, max_fails[]   = {10};
e21ce8c7c   Ralf Baechle   [NETROM]: Impleme...
33
  static int min_reset[]   = {0}, max_reset[]   = {1};
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
34
35
36
37
  
  static struct ctl_table_header *nr_table_header;
  
  static ctl_table nr_table[] = {
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
38
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
39
40
41
42
  		.procname	= "default_path_quality",
  		.data		= &sysctl_netrom_default_path_quality,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
43
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
44
45
46
  		.extra1		= &min_quality,
  		.extra2		= &max_quality
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
47
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
48
49
50
51
  		.procname	= "obsolescence_count_initialiser",
  		.data		= &sysctl_netrom_obsolescence_count_initialiser,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
52
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
53
54
55
  		.extra1		= &min_obs,
  		.extra2		= &max_obs
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
56
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
57
58
59
60
  		.procname	= "network_ttl_initialiser",
  		.data		= &sysctl_netrom_network_ttl_initialiser,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
61
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
62
63
64
  		.extra1		= &min_ttl,
  		.extra2		= &max_ttl
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
65
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
66
67
68
69
  		.procname	= "transport_timeout",
  		.data		= &sysctl_netrom_transport_timeout,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
70
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
71
72
73
  		.extra1		= &min_t1,
  		.extra2		= &max_t1
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
74
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
75
76
77
78
  		.procname	= "transport_maximum_tries",
  		.data		= &sysctl_netrom_transport_maximum_tries,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
79
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
80
81
82
  		.extra1		= &min_n2,
  		.extra2		= &max_n2
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
83
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
84
85
86
87
  		.procname	= "transport_acknowledge_delay",
  		.data		= &sysctl_netrom_transport_acknowledge_delay,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
88
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
89
90
91
  		.extra1		= &min_t2,
  		.extra2		= &max_t2
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
92
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
93
94
95
96
  		.procname	= "transport_busy_delay",
  		.data		= &sysctl_netrom_transport_busy_delay,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
97
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
98
99
100
  		.extra1		= &min_t4,
  		.extra2		= &max_t4
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
101
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
102
103
104
105
  		.procname	= "transport_requested_window_size",
  		.data		= &sysctl_netrom_transport_requested_window_size,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
106
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
107
108
109
  		.extra1		= &min_window,
  		.extra2		= &max_window
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
110
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
111
112
113
114
  		.procname	= "transport_no_activity_timeout",
  		.data		= &sysctl_netrom_transport_no_activity_timeout,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
115
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
116
117
118
  		.extra1		= &min_idle,
  		.extra2		= &max_idle
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
119
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
120
121
122
123
  		.procname	= "routing_control",
  		.data		= &sysctl_netrom_routing_control,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
124
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
125
126
127
  		.extra1		= &min_route,
  		.extra2		= &max_route
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
128
  	{
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
129
130
131
132
  		.procname	= "link_fails_count",
  		.data		= &sysctl_netrom_link_fails_count,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
133
  		.proc_handler	= proc_dointvec_minmax,
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
134
135
136
  		.extra1		= &min_fails,
  		.extra2		= &max_fails
  	},
5f8f59d66   YOSHIFUJI Hideaki   [NET] NETROM: Fix...
137
  	{
e21ce8c7c   Ralf Baechle   [NETROM]: Impleme...
138
139
140
141
  		.procname	= "reset",
  		.data		= &sysctl_netrom_reset_circuit,
  		.maxlen		= sizeof(int),
  		.mode		= 0644,
6d9f239a1   Alexey Dobriyan   net: '&' redux
142
  		.proc_handler	= proc_dointvec_minmax,
e21ce8c7c   Ralf Baechle   [NETROM]: Impleme...
143
144
145
  		.extra1		= &min_reset,
  		.extra2		= &max_reset
  	},
f8572d8f2   Eric W. Biederman   sysctl net: Remov...
146
  	{ }
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
147
  };
b5ccd792f   Pavel Emelyanov   [NET]: Simple ctl...
148
  static struct ctl_path nr_path[] = {
f8572d8f2   Eric W. Biederman   sysctl net: Remov...
149
150
  	{ .procname = "net", },
  	{ .procname = "netrom", },
b5ccd792f   Pavel Emelyanov   [NET]: Simple ctl...
151
  	{ }
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
152
153
154
155
  };
  
  void __init nr_register_sysctl(void)
  {
b5ccd792f   Pavel Emelyanov   [NET]: Simple ctl...
156
  	nr_table_header = register_sysctl_paths(nr_path, nr_table);
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
157
158
159
160
161
162
  }
  
  void nr_unregister_sysctl(void)
  {
  	unregister_sysctl_table(nr_table_header);
  }