Allow rmdom on subdomains of those on the user's ACL
[hcoop/domtool2.git] / src / acl.sig
index fc72ab6..a88bddd 100644 (file)
@@ -30,6 +30,12 @@ signature ACL = sig
     val queryAll : string -> (string * string list) list
     (* What are all of a user's permissions, by class? *)
 
+    val users : unit -> string list
+    (* Which users have been granted privileges? *)
+
+    val whoHas : {class : string, value : string} -> string list
+    (* Which users have a permission? *)
+
     val class : {user : string, class : string} -> DataStructures.StringSet.set
     (* For what objects does the user have the permission? *)
 
@@ -37,8 +43,15 @@ signature ACL = sig
     val revoke : acl -> unit
     (* Grant/ungrant the user the permission. *)
 
+    val revokeFromAll : {class : string, value : string} -> unit
+
+    val rmuser : string -> unit
+    (* Remove all of a user's privileges. *)
+
     val read : string -> unit
     val write : string -> unit
     (* Read/write saved ACL state from/to a file *)
 
+    val queryDomain : {user : string, domain : string} -> bool
+    (* Like a call to [query] for class 'domain', but considers subdomains, too *)
 end