Hi,
I recently noticed some (for me) unexpected behavior with address
verification probes (reject_unverified_recipient in
smtpd_relay_restrictions). Given an envelope recipient with a local part
in Quoted-String format
(https://datatracker.ietf.org/doc/html/rfc5321#page-41) that contains a
colon, the verify daemon unconditionally replaces that colon by an
underscore; e.g., specifying the following recipient during the SMTP
conversation
RCPT TO: <"a:b"@example.org>
causes the verify daemon to initiate the sending of a probe to
<a...@example.org>. Using postfix's verbose debug output I verified that
the smtpd passes the address as a:b...@example.org to the verify daemon,
which then changes that.
In postfix/src/verify/verify.c --> static void verify_query_service(...)
I find
translit(STR(addr), ":", "_");
which I would deem the code responsible for the observed behavior.
I'd expect the verify daemon to re-quote the local part when sending out
a probe in that case, i.e. transmit a probe for <"a:b"@example.org>. Am
I overlooking some obvious issue here why this would be a bad idea?
Kind regards,
Andreas Weigel