Cron and FTP queries
[hcoop/domtool2.git] / src / main.sig
index 1d084b8..db8eea5 100644 (file)
 
 signature MAIN = sig
 
-    val tInit : unit -> Ast.typ
-    val registerDefault : string * Ast.typ * (unit -> Ast.exp) -> unit
+    val init : unit -> unit
 
     val check : string -> Env.env * Ast.exp option
     val check' : Env.env -> string -> Env.env
+    val checkDir : string -> unit
 
     val basis : unit -> Env.env
 
@@ -32,6 +32,44 @@ signature MAIN = sig
     val eval : string -> unit
 
     val request : string -> unit
-    val serviceOne : unit -> unit
+    val requestDir : string -> unit
 
+    val requestPing : unit -> OS.Process.status
+    val requestShutdown : unit -> unit
+    val requestGrant : Acl.acl -> unit
+    val requestRevoke : Acl.acl -> unit
+    val requestListPerms : string -> (string * string list) list option
+    val requestWhoHas : {class : string, value : string} -> string list option
+    val requestRmdom : string list -> unit
+    val requestRegen : unit -> unit
+    val requestRmuser : string -> unit
+
+    val requestSlavePing : unit -> OS.Process.status
+    val requestSlaveShutdown : unit -> unit
+
+    val service : unit -> unit
+    val slave : unit -> unit
+
+    val listBasis : unit -> string list
+    val autodocBasis : string -> unit
+
+    val requestDbUser : {dbtype : string, passwd : string option} -> unit
+    val requestDbPasswd : {dbtype : string, passwd : string} -> unit
+    val requestDbTable : {dbtype : string, dbname : string} -> unit
+
+    val requestListMailboxes : string -> Vmail.listing
+    val requestNewMailbox : {domain : string, user : string,
+                            passwd : string, mailbox : string} -> unit
+    val requestPasswdMailbox : {domain : string, user : string, passwd : string}
+                              -> unit
+    val requestRmMailbox : {domain : string, user : string} -> unit
+
+    val requestSaQuery : string -> unit
+    val requestSaSet : string * bool -> unit
+
+    val requestSmtpLog : string -> unit
+
+    val requestApt : {node : string, pkg : string} -> OS.Process.status
+    val requestCron : {node : string, uname : string} -> OS.Process.status
+    val requestFtp : {node : string, uname : string} -> OS.Process.status
 end