1 structure MailingList
=
4 structure R
= Request(struct
5 val table
= "MailingList"
6 val adminGroup
= "lists"
7 fun subject list
= "Mailman list request: " ^ list
9 val descr
= "mailing list"
11 fun body (mail
, lst
) =
12 (Mail
.mwrite (mail
, "List name: ");
13 Mail
.mwrite (mail
, lst
);
14 Mail
.mwrite (mail
, "\n"))
18 fun listWebHost name
=
19 case String.tokens (fn ch
=> ch
= #
"@") name
of
22 val mmf
= Util
.domainDir dom ^
"/.mailman"
24 if Posix
.FileSys
.access (mmf
, []) then
26 val inf
= TextIO.openIn mmf
28 (case TextIO.inputLine inf
of
31 (user
, String.substring (line
, 0, size line
- 1)))
32 before TextIO.closeIn inf
33 end handle _
=> (user
, dom
)
37 | _
=> raise (Fail
"Bad mailing list name")