X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/325285ab74fb24bf441fa8137556accc3a518905..850959592e3c311f4b9330ea93d3cb0d8d3892ee:/src/plugins/mailman.sml diff --git a/src/plugins/mailman.sml b/src/plugins/mailman.sml index 8cf9873..236909c 100644 --- a/src/plugins/mailman.sml +++ b/src/plugins/mailman.sml @@ -27,15 +27,15 @@ val () = Env.action_one "mailmanWebHost" ("hostname", Env.string) (fn host => let - val outf = Domain.domainFile {node = Config.Mailman.node, - name = "mailman"} + val {write, writeDom, close} = Domain.domainsFile {node = Config.Mailman.node, + name = "mailman"} in - TextIO.output (outf, "\t'"); - TextIO.output (outf, host); - TextIO.output (outf, "' : '"); - TextIO.output (outf, Domain.currentDomain ()); - TextIO.output (outf, "',\n"); - TextIO.closeOut outf + write "\t'"; + write host; + write "' : '"; + writeDom (); + write "',\n"; + close () end) val mailmanChanged = ref false @@ -55,7 +55,9 @@ val () = Slave.registerPostHandler (fn () => if !mailmanChanged then (Slave.concatTo (fn s => s = "mailman") Config.Mailman.mapFile; - Slave.shellF ([Config.Mailman.reload], + Slave.enumerateTo (fn s => s = "mailman") ":" + Config.Mailman.handleDomains; + Slave.shellF ([Config.Mailman.reload], fn cl => "Error reloading Mailman with " ^ cl)) else ())