[pmg-devel] [PATCH pmg-api 0/2] fix smtputf8 handling if disabled in postfix
Stoiko Ivanov
s.ivanov at proxmox.com
Mon Jan 23 16:55:19 CET 2023
This series addresses an issue some of our users reported in our
community forum with pmg-api_7.2-3:
* the decision if smtputf8 is needed is based on the envelope-addresses
and the headers (if they contain non-ascii characters we use SMTPUTF8
* this breaks environments where SMTPUTF8 is disabled (mostly because
some downstream servers do not support this), but mails still contain
non-ascii data (while this is against the relevant rfc, which say that
header-data must contain only ascii characters (and should be encoded
with MIME-words otherwise), it is seemingly quite common in the wild)
one testmail I got from a user from the forum had the From header
correctly encoded, but added an X-DFrom header with the unencoded from.
The first patch simply drops the header-inspection and should enable
most of the reporters to receive mail again.
The second patch tries to address the smtputf8 issue a bit differently
than what we currently do
- For mails received via SMTP it simply sets SMTPUTF8 if the original
postfix processes sent pmg-smtp-filter the mail with the flag, and
does not set it otherwise
- For locally generated mail it detects if its needed by checking the
envelope-addresses and the headers for non-ascii characters.
This should follow postfix own functioning quite closely:
https://www.postfix.org/SMTPUTF8_README.html
processing by pmg-smtp-filter should not change the need for the flag,
since we don't rewrite envelope-addresses, and modify filed does
mime-encode the resulting header.
Sending as two patches, since the first one would be good to get out
soon (as it's affecting a few setups), while the second one might
benefit from a bit more testing (I did some tests, which all looked
good, but might have overlooked some cases)
Stoiko Ivanov (2):
utils: skip checking headers for non-ascii characters
smtputf8: keep smtputf8 from incoming postfix, detect for local mail
src/PMG/API2/Quarantine.pm | 7 ++++++-
src/PMG/RuleDB/Notify.pm | 6 +++++-
src/PMG/SMTP.pm | 7 ++++++-
src/PMG/Utils.pm | 12 +++++++++---
4 files changed, 26 insertions(+), 6 deletions(-)
--
2.30.2
More information about the pmg-devel
mailing list