Add special case for function applications in base type rule checks
[hcoop/domtool2.git] / src / msgTypes.sml
index 480c905..1c2abcc 100644 (file)
 
 structure MsgTypes = struct
 
+datatype socket_permission =
+        Any
+       | Client
+       | Server
+       | Nada
+
+datatype query =
+        QApt of string
+       (* Is this apt package installed? *)
+       | QCron of string
+       (* Is this user allowed to use cron? *)
+       | QFtp of string
+       (* Is this user allowed to use FTP? *)
+       | QTrustedPath of string
+       (* Is this user restricted to trusted-path executables? *)
+       | QSocket of string
+       (* What socket permissions does this user have? *)
+       | QFirewall of string
+       (* What firewall rules does this user have? *)
+
 datatype msg =
         MsgOk
        (* Your request was processed successfully. *)
@@ -57,7 +77,9 @@ datatype msg =
        | MsgCreateDbUser of {dbtype : string, passwd : string option}
        (* Request creation of a user for the named DBMS type *)
        | MsgCreateDbTable of {dbtype : string, dbname : string}
-       (* Request creation of a DBMS table *)
+       (* Request creation of a DBMS database *)
+       | MsgDropDb of {dbtype : string, dbname : string}
+       (* Request dropping of a DBMS database *)
        | MsgNewMailbox of {domain : string, user : string,
                           passwd : string, mailbox : string}
        (* Request creation of a new vmail mapping *)
@@ -86,7 +108,15 @@ datatype msg =
        | MsgYes
        | MsgNo
        (* Answers to boolean queries *)
-       | MsgApt of string
-       (* Is this apt package installed on your host? *)
+       | MsgQuery of query
+       (* Ask for host-specific information *)
+       | MsgSocket of socket_permission
+       (* Answer to a QSocket query *)
+       | MsgFirewall of string list
+       (* Answer to a QFirewall query *)
+       | MsgRegenerateTc
+       (* MsgRegenerate without actual publishing of configuration *)
+       | MsgGrantDb of {dbtype : string, dbname : string}
+       (* Grant all allowed privileges on a DBMS database to the user *)
 
 end