Manage spamassassin preferences in shared space
[hcoop/domtool2.git] / src / msgTypes.sml
index e0f4385..c6dcb50 100644 (file)
@@ -1,5 +1,6 @@
 (* HCoop Domtool (http://hcoop.sourceforge.net/)
  * Copyright (c) 2006, Adam Chlipala
+ * Copyright (c) 2011,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
 
 structure MsgTypes = struct
 
+datatype socket_permission =
+        Any
+       | Client
+       | Server
+       | Nada
+
 datatype query =
         QApt of string
        (* Is this apt package installed? *)
@@ -29,6 +36,12 @@ datatype query =
        (* 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 {node : string, user : string}
+       (* What firewall rules does this user have? *)
+       | QAptExists of string
+       (* Does this apt package exist *)
 
 datatype msg =
         MsgOk
@@ -66,8 +79,10 @@ datatype msg =
        * that user and no one else has rights. *)
        | 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 *)
+       | MsgCreateDb of {dbtype : string, dbname : string, encoding : string option}
+       (* 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 *)
@@ -85,6 +100,8 @@ datatype msg =
        (* Response to MsgSaQuery *)
        | MsgSaSet of string * bool
        (* Set the filtering status of a user or e-mail address *)
+       | MsgSaChanged
+       (* Reload spamassassin addrs *)
        | MsgSmtpLogReq of string
        (* Request all current SMTP log lines about a domain *)
        | MsgSmtpLogRes of string
@@ -98,5 +115,27 @@ datatype msg =
        (* Answers to boolean queries *)
        | 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 *)
+       | MsgMysqlFixperms
+       (* Run the script to grant DROP privileges on MySQL tables to owning users *)
+       | MsgDescribe of string
+       (* Ask for a listing of all of a domain's real configuration *)
+       | MsgDescription of string
+       (* Reply to MsgDescribe *)
+       | MsgReUsers
+       (* Rerun all callbacks for cases where the set of users has changed *)
+       | MsgVmailChanged
+       (* Server tells slave that vmail user information has changed *)
+       | MsgFirewallRegen
+       (* Regenerate firewall on user machines *)
+       | MsgAptQuery of {section : string, description : string}
+       (* Answer to QAptExists query *)
 
 end