X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/d541c6185fb0f426dce0b16e85327b53635169e0..99cc41443c07f97535eaeecc628d99075ca2cebf:/src/msgTypes.sml diff --git a/src/msgTypes.sml b/src/msgTypes.sml index 0c7e5fe..1c2abcc 100644 --- a/src/msgTypes.sml +++ b/src/msgTypes.sml @@ -20,6 +20,26 @@ 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. *) @@ -54,7 +74,49 @@ datatype msg = | MsgRmuser of string (* Remove all ACL entries for a user, and remove all domains to which * that user and no one else has rights. *) - | MsgCreateDbUser of string + | 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 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 *) + | MsgPasswdMailbox of {domain : string, user : string, passwd : string} + (* Change a vmail account's password *) + | MsgRmMailbox of {domain : string, user : string} + (* Remove a vmail mapping *) + | MsgListMailboxes of string + (* List all mailboxes for a domain *) + | MsgMailboxes of {user : string, mailbox : string} list + (* Reply to MsgListMailboxes *) + | MsgSaQuery of string + (* Check on the SpamAsssassin filtering status of a user or e-mail address *) + | MsgSaStatus of bool + (* Response to MsgSaQuery *) + | MsgSaSet of string * bool + (* Set the filtering status of a user or e-mail address *) + | MsgSmtpLogReq of string + (* Request all current SMTP log lines about a domain *) + | MsgSmtpLogRes of string + (* One line of a response to MsgSmtpLogReq *) + | MsgDbPasswd of {dbtype : string, passwd : string} + (* Change a DBMS user's password *) + | MsgShutdown + (* Halt the server *) + | MsgYes + | MsgNo + (* 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 *) end