our
$VERSION
=
'0.016'
;
sub
mail {
my
$self
=
shift
;
my
$mailer
=
$self
->{sendemailbin};
my
$subject
=
$self
->fetch_report();
my
$cc
=
$self
->_get_cc(
$subject
);
my
$cmdline
=
qq|$mailer -u "$subject"|
;
$self
->{swcc} ||=
'-cc'
,
$cmdline
.=
qq| $self->{swcc} "$cc"|
if
$cc
;
$self
->{swbcc} ||=
'-bcc'
,
$cmdline
.=
qq| $self->{swbcc} "$self->{bcc}"|
if
$self
->{bcc};
$cmdline
.=
qq| -t "$self->{to}"|
;
$cmdline
.=
qq| -f "$self->{from}"|
if
$self
->{from};
if
(
$self
->{mserver}) {
my
$mserver
=
$self
->{mserver};
if
(
$self
->{msport}) {
$mserver
.=
":$self->{msport}"
;
}
$cmdline
.=
qq| -s "$mserver"|
;
}
$cmdline
.=
qq| -xu "$self->{msuser}"|
if
$self
->{msuser};
$cmdline
.=
qq| -xp "$self->{mspass}"|
if
defined
$self
->{mspass};
$cmdline
.=
qq| -o message-file="$self->{file}"|
;
$self
->{v} > 1 and
print
"[$cmdline]\n"
;
$self
->{v} and
print
"Sending report to $self->{to}\n"
;
system
$cmdline
;
if
($?) {
$self
->{error} =
"Error executing '$mailer': "
. $?>>8;
}
$self
->{v} and
print
$self
->{error} ?
"not OK\n"
:
"OK\n"
;
return
!
$self
->{error};
}
1;