Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
sysctl_net_rose.c
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or modify
3  * it under the terms of the GNU General Public License as published by
4  * the Free Software Foundation; either version 2 of the License, or
5  * (at your option) any later version.
6  *
7  * Copyright (C) 1996 Mike Shaver ([email protected])
8  */
9 #include <linux/mm.h>
10 #include <linux/sysctl.h>
11 #include <linux/init.h>
12 #include <net/ax25.h>
13 #include <net/rose.h>
14 
15 static int min_timer[] = {1 * HZ};
16 static int max_timer[] = {300 * HZ};
17 static int min_idle[] = {0 * HZ};
18 static int max_idle[] = {65535 * HZ};
19 static int min_route[1], max_route[] = {1};
20 static int min_ftimer[] = {60 * HZ};
21 static int max_ftimer[] = {600 * HZ};
22 static int min_maxvcs[] = {1}, max_maxvcs[] = {254};
23 static int min_window[] = {1}, max_window[] = {7};
24 
25 static struct ctl_table_header *rose_table_header;
26 
27 static ctl_table rose_table[] = {
28  {
29  .procname = "restart_request_timeout",
31  .maxlen = sizeof(int),
32  .mode = 0644,
34  .extra1 = &min_timer,
35  .extra2 = &max_timer
36  },
37  {
38  .procname = "call_request_timeout",
40  .maxlen = sizeof(int),
41  .mode = 0644,
43  .extra1 = &min_timer,
44  .extra2 = &max_timer
45  },
46  {
47  .procname = "reset_request_timeout",
49  .maxlen = sizeof(int),
50  .mode = 0644,
52  .extra1 = &min_timer,
53  .extra2 = &max_timer
54  },
55  {
56  .procname = "clear_request_timeout",
58  .maxlen = sizeof(int),
59  .mode = 0644,
61  .extra1 = &min_timer,
62  .extra2 = &max_timer
63  },
64  {
65  .procname = "no_activity_timeout",
67  .maxlen = sizeof(int),
68  .mode = 0644,
70  .extra1 = &min_idle,
71  .extra2 = &max_idle
72  },
73  {
74  .procname = "acknowledge_hold_back_timeout",
76  .maxlen = sizeof(int),
77  .mode = 0644,
79  .extra1 = &min_timer,
80  .extra2 = &max_timer
81  },
82  {
83  .procname = "routing_control",
85  .maxlen = sizeof(int),
86  .mode = 0644,
88  .extra1 = &min_route,
89  .extra2 = &max_route
90  },
91  {
92  .procname = "link_fail_timeout",
94  .maxlen = sizeof(int),
95  .mode = 0644,
97  .extra1 = &min_ftimer,
98  .extra2 = &max_ftimer
99  },
100  {
101  .procname = "maximum_virtual_circuits",
102  .data = &sysctl_rose_maximum_vcs,
103  .maxlen = sizeof(int),
104  .mode = 0644,
106  .extra1 = &min_maxvcs,
107  .extra2 = &max_maxvcs
108  },
109  {
110  .procname = "window_size",
111  .data = &sysctl_rose_window_size,
112  .maxlen = sizeof(int),
113  .mode = 0644,
115  .extra1 = &min_window,
116  .extra2 = &max_window
117  },
118  { }
119 };
120 
122 {
123  rose_table_header = register_net_sysctl(&init_net, "net/rose", rose_table);
124 }
125 
127 {
128  unregister_net_sysctl_table(rose_table_header);
129 }