Add support for passing recipients to sendmail

This commit is contained in:
Jamie Cameron
2011-08-18 22:47:35 -07:00
parent 590f07e745
commit 882565c39e

View File

@@ -28,17 +28,20 @@ if ($config{'mail_system'} == 3) {
&save_module_config() if ($config{'mail_system'} != 3);
}
# send_mail_program(from, to)
# send_mail_program(from, &dests)
# Returns the command for injecting email, based on the mail system in use
sub send_mail_program
{
my ($from, $dests) = @_;
my $qdests = join(" ", map { quotemeta($_) } @$dests);
if ($config{'mail_system'} == 1 || $config{'mail_system'} == 0) {
# Use sendmail executable, or postfix wrapper
local %sconfig = &foreign_check("sendmail") &&
$config{'mail_system'} == 1 ?
&foreign_config("sendmail") : ( );
local $cmd = &has_command($sconfig{'sendmail_path'} || "sendmail");
return "$cmd -t -f".quotemeta($_[0]) if ($cmd);
return "$cmd -f".quotemeta($_[0])." ".$qdests if ($cmd);
}
elsif ($config{'mail_system'} == 2) {
# Use qmail injector
@@ -51,7 +54,7 @@ elsif ($config{'mail_system'} == 2) {
else {
# Fallback - use sendmail command
local $cmd = &has_command("sendmail");
return "$cmd -t -f".quotemeta($_[0]) if ($cmd);
return "$cmd -f".quotemeta($_[0])." ".$qdests if ($cmd);
}
return undef;
}