diff options
| author | Ivan Kohler <ivan@freeside.biz> | 2021-02-13 09:58:02 -0800 | 
|---|---|---|
| committer | Ivan Kohler <ivan@freeside.biz> | 2021-02-13 09:58:02 -0800 | 
| commit | 842c10f453bc9f3857cfbae3c18b5ac7939f651c (patch) | |
| tree | a3a1acd3748301d387f0fb317a9a22cffe79cad0 | |
| parent | 6053a0a3a5baeb1c9f55e5df39bbc999c8ec8926 (diff) | |
Email::Sender::Transport::SMTP::TLS no longer needed
| -rw-r--r-- | FS/FS/msg_template/email.pm | 23 | 
1 files changed, 13 insertions, 10 deletions
| 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 $@; | 
