Hi,
at http://arnt.gulbrandsen.priv.no/tmp/postfix-eai-patch you will find a
patch to add unicode email support to Postfix. The patch is relative to
postfix-2.12-20140316.
I tried to append it to a list posting, but the result was too large for
the list, hence the URL.
A short overview of the RFCs: You can use naked UTF8 in localparts and
domain, and you can usually forget about quoted-printable. There's an
interlock to make sure that UTF8 messages are only ever sent to servers
that understand UTF8 addresses. There is no fallback to ASCII addresses
(there was an experiment with fallbacks and that was doubleplusunfun).
An overview of the patch: There is one new named attribute to the queue
file, smtputf8. If that is present, then the message can only be passed on
to remote servers if they support the SMTPUTF8 extension. Local delivery
always works. Mail from local senders (sendmail -bm) gets the attribute if
it uses any unicode address. Postfix tries to use ASCII only as long as
that's possible, but either the sender or any recipient needs UTF8, then
UTF8 it is.
Postfix implements most of the RFCs' rules. There are at a few exceptions:
Postfix doesn't have EXPN, so I didn't implement unicode EXPN either. VRFY
was much more flexible than in the RFC, so I made the extension
correspondingly flexible. Postfix' smtpd will use 8-bit in error messages
sometimes, which RFC6531 says it should only do when the client declares
support for it. I think Postfix behaves correctly and left it.
RFC 6533 contains some combinations of features that I don't think Postfix
can reach and therefore did not implement.
Postfix accepts UTF8 in myorigin and in mystdestination, but not in
myhostname. Myhostname is sent in the EHLO argument, and I'm not man enough
to send either UTF8 or xn--barf-barf in the EHLO argument.
I'm sure this will need minor improvements, and there might be bugs. Please
let me know.
Arnt
- Patch: Unicode email support (RFC 6531, 6532, 6533) Arnt Gulbrandsen
-