Skip to content

Multiple .forward aliases sometimes give pysrs the wrong destination domain. #7

@asciipip

Description

@asciipip

If a person has a .forward file in their home directory and that .forward file contains multiple email addresses with different domains, pysrs will sometimes get the domains mixed up.

e.g. if the .forward file contains this:

Sometimes the SRS address for the email sent to [email protected] will use the hash for [email protected].

This is particularly problematic when one of the addresses is local, e.g.

\person, [email protected]

In that case, sometimes the email to [email protected] doesn't have a destination domain, so pysrs simply doesn't do SRS on the address. (And that, of course, causes problem if the destination domain does SPF checking.)

Sometimes things do work, but sometimes they don't. If I understand the process correctly (and this is the first time I've delved past sendmail.mc into sendmail.cf rules), I suspect that the order in which sendmail is running the EnvFromSMTP ruleset and ruleset zero is non-deterministic. I'm hoping you have a deeper understanding of this level of communication, though.

I'm running pysrs on Scientific Linux 6 (a RHEL 6 clone). /wtc/mail/sendmail.cf contains (excerpted):

MAILER(smtp)dnl
define(`NO_SRS_FILE',`/etc/mail/no-srs-mailers')dnl
HACK(`pysrs',`/var/run/milter/pysrs')dnl

Here's an excerpt from pysrs.log, with domains sanitized:

2018Nov19 11:32:28 make_srs example.com.�phil<@sender.com.>
2018Nov19 11:32:28 h = example.com.
2018Nov19 11:32:28 OK SRS0=dWVaj=N6=sender.com=phil<@forwarder.com.>
2018Nov19 11:32:30 make_srs example.com.�phil<@sender.com.>
2018Nov19 11:32:30 h = example.com.
2018Nov19 11:32:30 OK SRS0=dWVaj=N6=sender.com=phil<@forwarder.com.>

Although the .forward file for the account on "forwarder.com" contained two email addresses with different domains, only one domain was used for both message forwards.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions