fun main () =
case CommandLine.arguments () of
[list, cmd, addr] =>
- if list <> "hcoop-discuss" andalso list <> "hcoop-misc" then
+ if list <> "hcoop-discuss" andalso list <> "hcoop-help" andalso list <> "hcoop-misc"
+ andalso list <> "hcoop-announce" andalso list <> "hcoop-sysadmin" then
(print "Bad mailing list name\n";
OS.Process.failure)
else if not (validEmail addr) then
else
OS.Process.system (String.concat ["echo ", addr, " | /usr/sbin/add_members -r - ", list])
| "rm" =>
- if isMember (list, addr) then
+ if list = "hcoop-announce" then
+ (print "You can't remove anyone from hcoop-announce.\n";
+ OS.Process.failure)
+ else if isMember (list, addr) then
OS.Process.system (String.concat ["/usr/sbin/remove_members ", list, " ", addr])
else
OS.Process.success
| _ => (print "Bad command-line arguments\n";
OS.Process.failure)
-val _ = OS.Process.exit (main ())
\ No newline at end of file
+val _ = OS.Process.exit (main ())