BadVPN – Blame information for rev 1

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 office 1 /**
2 * @file modules.h
3 * @author Ambroz Bizjak <ambrop7@gmail.com>
4 *
5 * @section LICENSE
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions are met:
9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 * 3. Neither the name of the author nor the
15 * names of its contributors may be used to endorse or promote products
16 * derived from this software without specific prior written permission.
17 *
18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21 * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
22 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 */
29  
30 #ifndef BADVPN_NCD_MODULES_MODULES_H
31 #define BADVPN_NCD_MODULES_MODULES_H
32  
33 #include <stddef.h>
34  
35 #include <ncd/NCDModule.h>
36  
37 extern const struct NCDModuleGroup ncdmodule_var;
38 extern const struct NCDModuleGroup ncdmodule_list;
39 extern const struct NCDModuleGroup ncdmodule_depend;
40 extern const struct NCDModuleGroup ncdmodule_multidepend;
41 extern const struct NCDModuleGroup ncdmodule_dynamic_depend;
42 extern const struct NCDModuleGroup ncdmodule_concat;
43 extern const struct NCDModuleGroup ncdmodule_if;
44 extern const struct NCDModuleGroup ncdmodule_strcmp;
45 extern const struct NCDModuleGroup ncdmodule_logical;
46 extern const struct NCDModuleGroup ncdmodule_sleep;
47 extern const struct NCDModuleGroup ncdmodule_print;
48 extern const struct NCDModuleGroup ncdmodule_blocker;
49 extern const struct NCDModuleGroup ncdmodule_spawn;
50 extern const struct NCDModuleGroup ncdmodule_imperative;
51 extern const struct NCDModuleGroup ncdmodule_ref;
52 extern const struct NCDModuleGroup ncdmodule_index;
53 extern const struct NCDModuleGroup ncdmodule_alias;
54 extern const struct NCDModuleGroup ncdmodule_process_manager;
55 extern const struct NCDModuleGroup ncdmodule_ondemand;
56 extern const struct NCDModuleGroup ncdmodule_foreach;
57 extern const struct NCDModuleGroup ncdmodule_choose;
58 extern const struct NCDModuleGroup ncdmodule_from_string;
59 extern const struct NCDModuleGroup ncdmodule_to_string;
60 extern const struct NCDModuleGroup ncdmodule_value;
61 extern const struct NCDModuleGroup ncdmodule_try;
62 extern const struct NCDModuleGroup ncdmodule_exit;
63 extern const struct NCDModuleGroup ncdmodule_getargs;
64 extern const struct NCDModuleGroup ncdmodule_arithmetic;
65 extern const struct NCDModuleGroup ncdmodule_parse;
66 extern const struct NCDModuleGroup ncdmodule_valuemetic;
67 extern const struct NCDModuleGroup ncdmodule_file;
68 extern const struct NCDModuleGroup ncdmodule_netmask;
69 extern const struct NCDModuleGroup ncdmodule_implode;
70 extern const struct NCDModuleGroup ncdmodule_call2;
71 extern const struct NCDModuleGroup ncdmodule_assert;
72 extern const struct NCDModuleGroup ncdmodule_explode;
73 extern const struct NCDModuleGroup ncdmodule_net_ipv4_addr_in_network;
74 extern const struct NCDModuleGroup ncdmodule_net_ipv6_addr_in_network;
75 extern const struct NCDModuleGroup ncdmodule_timer;
76 extern const struct NCDModuleGroup ncdmodule_file_open;
77 extern const struct NCDModuleGroup ncdmodule_backtrack;
78 extern const struct NCDModuleGroup ncdmodule_depend_scope;
79 extern const struct NCDModuleGroup ncdmodule_substr;
80 extern const struct NCDModuleGroup ncdmodule_log;
81 extern const struct NCDModuleGroup ncdmodule_getenv;
82 extern const struct NCDModuleGroup ncdmodule_basic_functions;
83 extern const struct NCDModuleGroup ncdmodule_objref;
84 #ifndef BADVPN_EMSCRIPTEN
85 extern const struct NCDModuleGroup ncdmodule_regex_match;
86 extern const struct NCDModuleGroup ncdmodule_run;
87 extern const struct NCDModuleGroup ncdmodule_runonce;
88 extern const struct NCDModuleGroup ncdmodule_daemon;
89 extern const struct NCDModuleGroup ncdmodule_net_backend_waitdevice;
90 extern const struct NCDModuleGroup ncdmodule_net_backend_waitlink;
91 extern const struct NCDModuleGroup ncdmodule_net_backend_badvpn;
92 extern const struct NCDModuleGroup ncdmodule_net_backend_wpa_supplicant;
93 #ifdef BADVPN_USE_LINUX_RFKILL
94 extern const struct NCDModuleGroup ncdmodule_net_backend_rfkill;
95 #endif
96 extern const struct NCDModuleGroup ncdmodule_net_up;
97 extern const struct NCDModuleGroup ncdmodule_net_dns;
98 extern const struct NCDModuleGroup ncdmodule_net_iptables;
99 extern const struct NCDModuleGroup ncdmodule_net_ipv4_addr;
100 extern const struct NCDModuleGroup ncdmodule_net_ipv4_route;
101 extern const struct NCDModuleGroup ncdmodule_net_ipv4_dhcp;
102 extern const struct NCDModuleGroup ncdmodule_net_ipv4_arp_probe;
103 extern const struct NCDModuleGroup ncdmodule_net_watch_interfaces;
104 extern const struct NCDModuleGroup ncdmodule_sys_watch_input;
105 extern const struct NCDModuleGroup ncdmodule_sys_watch_usb;
106 #ifdef BADVPN_USE_LINUX_INPUT
107 extern const struct NCDModuleGroup ncdmodule_sys_evdev;
108 #endif
109 #ifdef BADVPN_USE_INOTIFY
110 extern const struct NCDModuleGroup ncdmodule_sys_watch_directory;
111 #endif
112 extern const struct NCDModuleGroup ncdmodule_sys_request_server;
113 extern const struct NCDModuleGroup ncdmodule_net_ipv6_wait_dynamic_addr;
114 extern const struct NCDModuleGroup ncdmodule_sys_request_client;
115 extern const struct NCDModuleGroup ncdmodule_reboot;
116 extern const struct NCDModuleGroup ncdmodule_net_ipv6_addr;
117 extern const struct NCDModuleGroup ncdmodule_net_ipv6_route;
118 extern const struct NCDModuleGroup ncdmodule_socket;
119 extern const struct NCDModuleGroup ncdmodule_sys_start_process;
120 extern const struct NCDModuleGroup ncdmodule_load_module;
121 #endif
122  
123 static const struct NCDModuleGroup *ncd_modules[] = {
124 &ncdmodule_var,
125 &ncdmodule_list,
126 &ncdmodule_depend,
127 &ncdmodule_multidepend,
128 &ncdmodule_dynamic_depend,
129 &ncdmodule_concat,
130 &ncdmodule_if,
131 &ncdmodule_strcmp,
132 &ncdmodule_logical,
133 &ncdmodule_sleep,
134 &ncdmodule_print,
135 &ncdmodule_blocker,
136 &ncdmodule_spawn,
137 &ncdmodule_imperative,
138 &ncdmodule_ref,
139 &ncdmodule_index,
140 &ncdmodule_alias,
141 &ncdmodule_process_manager,
142 &ncdmodule_ondemand,
143 &ncdmodule_foreach,
144 &ncdmodule_choose,
145 &ncdmodule_from_string,
146 &ncdmodule_to_string,
147 &ncdmodule_value,
148 &ncdmodule_try,
149 &ncdmodule_exit,
150 &ncdmodule_getargs,
151 &ncdmodule_arithmetic,
152 &ncdmodule_parse,
153 &ncdmodule_valuemetic,
154 &ncdmodule_file,
155 &ncdmodule_netmask,
156 &ncdmodule_implode,
157 &ncdmodule_call2,
158 &ncdmodule_assert,
159 &ncdmodule_explode,
160 &ncdmodule_net_ipv4_addr_in_network,
161 &ncdmodule_net_ipv6_addr_in_network,
162 &ncdmodule_timer,
163 &ncdmodule_file_open,
164 &ncdmodule_backtrack,
165 &ncdmodule_depend_scope,
166 &ncdmodule_substr,
167 &ncdmodule_log,
168 &ncdmodule_getenv,
169 &ncdmodule_basic_functions,
170 &ncdmodule_objref,
171 #ifndef BADVPN_EMSCRIPTEN
172 &ncdmodule_regex_match,
173 &ncdmodule_run,
174 &ncdmodule_runonce,
175 &ncdmodule_daemon,
176 &ncdmodule_net_backend_waitdevice,
177 &ncdmodule_net_backend_waitlink,
178 &ncdmodule_net_backend_badvpn,
179 &ncdmodule_net_backend_wpa_supplicant,
180 #ifdef BADVPN_USE_LINUX_RFKILL
181 &ncdmodule_net_backend_rfkill,
182 #endif
183 &ncdmodule_net_up,
184 &ncdmodule_net_dns,
185 &ncdmodule_net_iptables,
186 &ncdmodule_net_ipv4_addr,
187 &ncdmodule_net_ipv4_route,
188 &ncdmodule_net_ipv4_dhcp,
189 &ncdmodule_net_ipv4_arp_probe,
190 &ncdmodule_net_watch_interfaces,
191 &ncdmodule_sys_watch_input,
192 &ncdmodule_sys_watch_usb,
193 #ifdef BADVPN_USE_LINUX_INPUT
194 &ncdmodule_sys_evdev,
195 #endif
196 #ifdef BADVPN_USE_INOTIFY
197 &ncdmodule_sys_watch_directory,
198 #endif
199 &ncdmodule_sys_request_server,
200 &ncdmodule_net_ipv6_wait_dynamic_addr,
201 &ncdmodule_sys_request_client,
202 &ncdmodule_reboot,
203 &ncdmodule_net_ipv6_addr,
204 &ncdmodule_net_ipv6_route,
205 &ncdmodule_socket,
206 &ncdmodule_sys_start_process,
207 &ncdmodule_load_module,
208 #endif
209 NULL
210 };
211  
212 #endif