mysql: revoke permissions when dropping database
[hcoop/domtool2.git] / lib / mailman.dtl
index df935be..e1a8fbf 100644 (file)
@@ -4,19 +4,30 @@ extern val mailmanWebHost : domain -> [Domain];
 {{Set the hostname of the web site for administration of mailing lists for this
   domain.}}
 
-extern type mailman_web_node;
+extern type mailman_node;
 {{Like <tt>web_node</tt>, but with the possibility of using some additional
   nodes set by the admins.}}
 
-extern val mailman_web_node : mailman_web_node;
+extern val mailman_node : mailman_node;
 {{The default location for Mailman web interfaces}}
 
-extern val mailman_web_node_to_node : mailman_web_node -> node;
+extern val mailman_node_to_node : mailman_node -> node;
+
+extern type mailman_place;
+extern val mailman_place_default : mailman_node -> mailman_place;
+extern val mailman_place : mailman_node -> your_ip -> your_ipv6 -> mailman_place;
+extern val mailman_place_to_web_node : mailman_place -> web_node;
+extern val mailman_place_to_node : mailman_place -> node;
+extern val mailman_place_to_ip : mailman_place -> ip;
+extern val mailman_place_to_ipv6 : mailman_place -> ipv6;
+{{Analogous to <tt>web_place</tt>, but based on <tt>mailman_node</tt>s}}
 
 extern val mailmanVhost : host -> [Domain]
-       {MailmanWebNodes : [mailman_web_node],
-        SSL : ssl,
-        User : your_user};
+  {MailmanPlaces : [mailman_place],
+  SSL : ssl,
+  MailmanForceSSL : bool,
+  User : your_user,
+  ServerAdmin : email};
 {{Create an Apache virtual host to serve as the web interface for some Mailman
   lists.}}
 
@@ -24,12 +35,12 @@ val mailman = \ host : (host) -> begin
   let
     domainHost host;
   in
-    dnsIP host (ip_of_node (mailman_web_node_to_node mailman_web_node));
+    dnsIP host (ip_of_node (mailman_node_to_node mailman_node));
+    dnsIPv6 host (ipv6_of_node (mailman_node_to_node mailman_node));
     mwh <- Hostname;
     mailmanWebHost mwh;
     mailmanVhost host where
-      MailmanWebNodes = [mailman_web_node];
-      SSL = no_ssl
+      MailmanPlaces = [mailman_place_default mailman_node];
     end
   end
 end;