From cebd65565b12d2bd3155e12d6f860df7c78019a0 Mon Sep 17 00:00:00 2001 From: Chris Nighswonger Date: Mon, 7 Apr 2014 11:55:35 -0400 Subject: [PATCH] This patch adds three params to allow for SMTP authentication -username -> Username to pass to the SMTP server for authentication -password -> Password to pass to the SMTP server for authentication -method -> Method is the type of authentication. Ie. LOGIN, DIGEST-MD5, etc. See the misc/cronjobs/CONFIGURE.gmail for an example of the use of these params. Signed-off-by: Chris Nighswonger --- misc/cronjobs/runreport.pl | 55 +++++++++++++++++++++++++++++++++------------- 1 file changed, 40 insertions(+), 15 deletions(-) diff --git a/misc/cronjobs/runreport.pl b/misc/cronjobs/runreport.pl index 41e9761..0725767 100755 --- a/misc/cronjobs/runreport.pl +++ b/misc/cronjobs/runreport.pl @@ -1,6 +1,7 @@ #!/usr/bin/perl # # Copyright 2008 Liblime +# Copyright 2014 Foundations Bible College, Inc. # # This file is part of Koha. # @@ -57,6 +58,9 @@ runreport.pl [ -h | -m ] [ -v ] reportID [ reportID ... ] --format=s selects format. Choice of text, html, csv, or tsv -e --email whether to use e-mail (implied by --to or --from) + --username username to pass to the SMTP server for authentication + --password password to pass to the SMTP server for authentication + --method method is the type of authentication. Ie. LOGIN, DIGEST-MD5, etc. --to=s e-mail address to send report to --from=s e-mail address to send report from --subject=s subject for the e-mail @@ -69,11 +73,11 @@ runreport.pl [ -h | -m ] [ -v ] reportID [ reportID ... ] =over -=item B<-help> +=item B<--help> Print a brief help message and exits. -=item B<-man> +=item B<--man> Prints the manual page and exits. @@ -81,23 +85,35 @@ Prints the manual page and exits. Verbose. Without this flag set, only fatal errors are reported. -=item B<-format> +=item B<--format> Current options are text, html, csv, and tsv. At the moment, text and tsv both produce tab-separated tab-separated output. -=item B<-email> +=item B<--email> Whether to use e-mail (implied by --to or --from). -=item B<-to> +=item B<--username> + +Username to pass to the SMTP server for authentication + +=item B<--password> + +Password to pass to the SMTP server for authentication + +=item B<--method> + +Method is the type of authentication. Ie. LOGIN, DIGEST-MD5, etc. + +=item B<--to> E-mail address to send report to. Defaults to KohaAdminEmailAddress. -=item B<-from> +=item B<--from> E-mail address to send report from. Defaults to KohaAdminEmailAddress. -=item B<-subject> +=item B<--subject> Subject for the e-mail message. Defaults to "Koha Saved Report" @@ -150,15 +166,23 @@ my $subject = 'Koha Saved Report'; my $separator = ','; my $quote = '"'; +my $username = undef; +my $password = undef; +my $method = 'LOGIN'; + GetOptions( - 'help|?' => \$help, - 'man' => \$man, - 'verbose' => \$verbose, - 'format=s' => \$format, - 'to=s' => \$to, - 'from=s' => \$from, - 'subject=s' => \$subject, - 'email' => \$email, + 'help|?' => \$help, + 'man' => \$man, + 'verbose' => \$verbose, + 'format=s' => \$format, + 'to=s' => \$to, + 'from=s' => \$from, + 'subject=s' => \$subject, + 'email' => \$email, + 'username:s' => \$username, + 'password:s' => \$password, + 'method:s' => \$method, + ) or pod2usage(2); pod2usage( -verbose => 2 ) if ($man); pod2usage( -verbose => 2 ) if ($help and $verbose); @@ -260,6 +284,7 @@ foreach my $report_id (@ARGV) { Message => encode('utf8', $message ) ); } + $mail{'Auth'} = {user => $username, pass => $password, method => $method} if $username; sendmail(%mail) or carp 'mail not sent:' . $Mail::Sendmail::error; } else { print $message; -- 1.8.3.2