X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/9a8de13739d797ae324dcf0387f24eda3cdcb4a9..617696c652e7c2d3d651c1476bae97ec97641394:/src/plugins/firewall.sig diff --git a/src/plugins/firewall.sig b/src/plugins/firewall.sig index 3283824..8a9b6ca 100644 --- a/src/plugins/firewall.sig +++ b/src/plugins/firewall.sig @@ -1,6 +1,6 @@ (* HCoop Domtool (http://hcoop.sourceforge.net/) * Copyright (c) 2006-2007, Adam Chlipala - * Copyright (c) 2011, Clinton Ebadi + * Copyright (c) 2011,2013,2014 Clinton Ebadi * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -21,10 +21,18 @@ signature FIREWALL = sig - type firewall_rules = { server_rules : ((string * string) list DataStructures.StringMap.map), - client_rules : ((string * string) list DataStructures.StringMap.map)} + datatype user = User of string - val query : string -> string list + 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