[freeside-commits] branch master updated. 103dfde149eec5034696d073253255f508a1be78

Ivan Kohler ivan at freeside.biz
Sat Feb 13 09:57:59 PST 2021


The branch, master has been updated
       via  103dfde149eec5034696d073253255f508a1be78 (commit)
      from  c2dbe36096332d1e09bc58d7d9903e05247f0c9b (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 103dfde149eec5034696d073253255f508a1be78
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Sat Feb 13 09:57:58 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 c2c370760..53a13aebc 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", $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