Fix missing copyright info
[hcoop/domtool2.git] / src / plugins / firewall.sig
index ec30375..8a9b6ca 100644 (file)
@@ -1,5 +1,6 @@
 (* HCoop Domtool (http://hcoop.sourceforge.net/)
  * Copyright (c) 2006-2007, Adam Chlipala
+ * Copyright (c) 2011,2013,2014 Clinton Ebadi <clinton@unknownlamer.org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  *)
 
-(* Firewall rule querying *)
+(* Firewall rule querying/generation *)
 
 signature FIREWALL = sig
 
-    val query : string -> string list
+    datatype user = User of string
+
+    datatype fwnode = FirewallNode of string
+
+    datatype fwrule = Client of int list * string list
+                   | Server of int list * string list
+                   | ProxiedServer of int list
+                   | LocalServer of int list
+
+    type firewall_rules = (user * fwnode * fwrule) list
+
+    val query : string * string -> string list
     (* List a user's local firewall rules. *)
 
+    val parseRules : unit -> firewall_rules
+    val generateFirewallConfig : firewall_rules -> bool
+
+    val publishConfig : unit -> bool
+
 end