From: Moritz Bunkus Date: Mon, 6 Feb 2017 08:12:55 +0000 (+0100) Subject: Mailer: nur Adress-Anteil als Absender im SMTP-Dialog verwenden & nicht encodieren X-Git-Tag: release-3.5.4~1534 X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/commitdiff_plain/895ccd7f588590ba383a739702aba12b035f8fb4?ds=inline Mailer: nur Adress-Anteil als Absender im SMTP-Dialog verwenden & nicht encodieren Der SMTP-Dialog nutzt beim MAIL FROM nur den Adress-Anteil einer E-Mail-Adresse: MAIL FROM: Daher sollte auch nur dieser Anteil übergeben werden, auch wenn in $self->{from} potenziell eine komplette Adresse steht. Da dieser Adress-Anteil ausschließlich aus ASCII-Zeichen besteht, muss er dann auch nicht encodiert werden. Das macht die Strings im Log leserlicher, und vermutlich sind MIME-Q-/-B-Encodings auch im SMTP-Standard eigentlich nicht erlaubt (siehe RFC 5321). --- diff --git a/SL/Mailer.pm b/SL/Mailer.pm index b8b8b1775..abc25f7ce 100644 --- a/SL/Mailer.pm +++ b/SL/Mailer.pm @@ -245,7 +245,9 @@ sub send { #$::lxdebug->message(0, "message: " . $email->as_string); # return "boom"; - $self->{driver}->start_mail(from => encode('MIME-Header',$self->{from}), to => [ $self->_all_recipients ]); + my $from_obj = (Email::Address->parse($self->{from}))[0]; + + $self->{driver}->start_mail(from => $from_obj->address, to => [ $self->_all_recipients ]); $self->{driver}->print($email->as_string); $self->{driver}->send;