[freeside-commits] branch FREESIDE_4_BRANCH updated. 842c10f453bc9f3857cfbae3c18b5ac7939f651c

Ivan Kohler ivan at freeside.biz
Sat Feb 13 09:58:02 PST 2021


The branch, FREESIDE_4_BRANCH has been updated
       via  842c10f453bc9f3857cfbae3c18b5ac7939f651c (commit)
      from  6053a0a3a5baeb1c9f55e5df39bbc999c8ec8926 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 842c10f453bc9f3857cfbae3c18b5ac7939f651c
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Sat Feb 13 09:58:02 2021 -0800

    Email::Sender::Transport::SMTP::TLS no longer needed

diff --git a/FS/FS/msg_template/email.pm b/FS/FS/msg_template/email.pm
index 12f2b2939..a9c716b6a 100644
--- a/FS/FS/msg_template/email.pm
+++ b/FS/FS/msg_template/email.pm
@@ -19,6 +19,7 @@ use Encode;
 use FS::Misc qw( generate_email );
 use FS::Conf;
 use Email::Sender::Simple qw( sendmail );
+use Email::Sender::Transport::SMTP;
 
 use FS::Record qw( qsearch qsearchs );
 
@@ -549,18 +550,20 @@ sub send_prepared {
   my($port, $enc) = split('-', ($conf->config('smtp-encryption') || '25') );
   $smtp_opt{'port'} = $port;
   
-  my $transport;
-  if ( defined($enc) && $enc eq 'starttls' ) {
-    $smtp_opt{$_} = $conf->config("smtp-$_") for qw(username password);
-    $transport = Email::Sender::Transport::SMTP::TLS->new( %smtp_opt );
-  } else {
-    if ( $conf->exists('smtp-username') && $conf->exists('smtp-password') ) {
-      $smtp_opt{"sasl_$_"} = $conf->config("smtp-$_") for qw(username password);     
-    } 
-    $smtp_opt{'ssl'} = 1 if defined($enc) && $enc eq 'tls';
-    $transport = Email::Sender::Transport::SMTP->new( %smtp_opt );
+  if ( $conf->exists('smtp-username') && $conf->exists('smtp-password') ) {
+    $smtp_opt{"sasl_$_"} = $conf->config("smtp-$_") for qw(username password);
+  } elsif ( defined($enc) && $enc eq 'starttls') {
+    $error = "SMTP settings misconfiguration: STARTTLS enabled in ".
+            "smtp-encryption but smtp-username or smtp-password missing";
+  }
+
+  if ( defined($enc) ) {
+    $smtp_opt{'ssl'} = 'starttls' if $enc eq 'starttls';
+    $smtp_opt{'ssl'} = 1          if $enc eq 'tls';
   }
 
+  my $transport = Email::Sender::Transport::SMTP->new( %smtp_opt );
+
   warn "$me sending message\n" if $DEBUG;
   my $message = join("\n\n", $cust_msg->header, $cust_msg->body);
   local $@;

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/msg_template/email.pm | 23 +++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)




More information about the freeside-commits mailing list