Thank you very much for the detailed explanation Wietse, it makes more
sense to me now re: the order of operations.

Cheers,

VM
On Aug 21, 2014 5:31 AM, "Wietse Venema" <wie...@porcupine.org> wrote:

> Venkat:
> > What I am trying to do is:
> >
> > Setup a SMTP relay for outgoing mail where:
> > (a) All From: headers of the form u...@cooldomain1.com (example) are
> > rewritten to be no-re...@cooldomain2.com
> > (b) A Reply-To: header with the original u...@cooldomain1.com is added
> >
> > I have achieved this by using this combination:
> > -- using sender_canonical_maps set to:
> > @cooldomain1.com  no-re...@cooldomain2.com
> > -- using header_checks set to:
> > /^From: (.*@cooldomain1\.com)/ PREPEND Reply-To:$1
> >
> > This seems to work. However, I am not sure if this is a good
> > approach or would using a milter (FILTER action in header_checks)
> > be a better way? If so, is there a pre-existing milter available
> > for this that is recommended? Thanks all.
>
> Your configuration should be safe, if I read Postfix documentation
> carefully. Remember, undocumented Postfix behavior is not covered
> by any promise of future compatibility.
>
> The header_checks manpage promises that PREPENDed text is not subject
> to header_checks or address rewriting, and that it does not affect
> the way that Postfix adds missing message headers.  So this part
> of your design is safe.
>
> Does Postfix documentation promise that header_checks happen before
> address rewriting? It makes that promise in a non-obvious manner.
>
> The text for the "REPLACE" action says that the replacement text
> will be subject to address rewriting (among other things). This
> suggests that header_checks happen before address rewriting.
>
> So there is an implicit promise that header_checks happen before
> address rewriting. This order should probably be documented, along
> with the relative timing of Milter activity.
>
>         Wietse
>

Reply via email to