[pbs-devel] [PATCH proxmox 0/4] improve mail compatability
Shannon Sterz
s.sterz at proxmox.com
Wed Oct 8 10:49:06 CEST 2025
this series tries to improve compatability with more mail servers. this
is done in three ways:
- patch 1: base64 encode filenames of attachments
- patch 2: check whether the html or text bodies of an email are ascii
only. if they are, we can safely declare 7bit encoding which should be
more broadly compatability than the previous 8bit encoding. if the
text is not ascii only, encode it as base64 and declare base64
encoding.
- patch 3: splits the Content-Disposition header of attached files over
two lines, to avoid longer files possibly triggering a line length
limit.
- patch 4: allows setting the masked recipient so that users of this
crate can specify somethings more appropriate for their use case.
this should specifically make it possible to support mail servers that
don't support SMTPUTF8, as now no part of the header or body should
contain plain utf8 characters directly.
i tested these patches against the following mail clients:
- bluemind
- Thunderbird
- aerc
- canary [1]
- iOS Mail app
- gmail.com
- outlook.com
all of them seemed to receive the email and display it properly (note
that aerc prefers the TXT part of the mime alternative parts even if the
html part should be preferred, due to being a terminal based mua).
[1]: https://canarymail.io/
Changelog
---------
changes since v1:
- rebased on current master
- added a patch that allows setting the noreply recipient for mails send
in undisclosed recipient mode
Note: the need for this series was identified internally as some mails
send with out internal tools would to be received properly.
Shannon Sterz (4):
sendmail: encode non-ascii filenames to improve compatability
sendmail: encode non-ascii bodies as base64 to improve comptability
sendmail: break content disposition headers for attachments
sendmail: allow specifying the masked receiver
proxmox-sendmail/src/lib.rs | 258 ++++++++++++++++++++++++++++--------
1 file changed, 206 insertions(+), 52 deletions(-)
--
2.47.3
More information about the pbs-devel
mailing list