Commit | Line | Data |
---|---|---|
f9548f16 AC |
1 | (* HCoop Domtool (http://hcoop.sourceforge.net/) |
2 | * Copyright (c) 2006-2007, Adam Chlipala | |
617696c6 | 3 | * Copyright (c) 2011,2013,2014 Clinton Ebadi <clinton@unknownlamer.org> |
f9548f16 AC |
4 | * |
5 | * This program is free software; you can redistribute it and/or | |
6 | * modify it under the terms of the GNU General Public License | |
7 | * as published by the Free Software Foundation; either version 2 | |
8 | * of the License, or (at your option) any later version. | |
9 | * | |
10 | * This program is distributed in the hope that it will be useful, | |
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 | * GNU General Public License for more details. | |
14 | * | |
15 | * You should have received a copy of the GNU General Public License | |
16 | * along with this program; if not, write to the Free Software | |
17 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | |
18 | *) | |
19 | ||
73b95423 | 20 | (* Firewall rule querying/generation *) |
f9548f16 AC |
21 | |
22 | signature FIREWALL = sig | |
23 | ||
1a03ee46 CE |
24 | datatype user = User of string |
25 | ||
26 | datatype fwnode = FirewallNode of string | |
27 | ||
28 | datatype fwrule = Client of int list * string list | |
29 | | Server of int list * string list | |
30 | | ProxiedServer of int list | |
31 | | LocalServer of int list | |
32 | ||
33 | type firewall_rules = (user * fwnode * fwrule) list | |
73b95423 | 34 | |
167cffff | 35 | val query : string * string -> string list |
f9548f16 AC |
36 | (* List a user's local firewall rules. *) |
37 | ||
73b95423 CE |
38 | val parseRules : unit -> firewall_rules |
39 | val generateFirewallConfig : firewall_rules -> bool | |
40 | ||
41 | val publishConfig : unit -> bool | |
ec95f39f | 42 | |
f9548f16 | 43 | end |