return-path test

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

return-path test

Craig Jackson
I notice that the return-path: is often different from the from:

But my return-path: tests all fail. Here's one:

header RETPATH_NUMS_CJ Return-path =~ /[0-9]{6,}/
score RETPATH_NUMS_CJ 3.000

It will successfully match From:addr or Reply-To: but Return-path is
silent. Yes, I tried Return-Path, but I believe this is case insensitive.

Can SA do this?
Thanks,
CJ
Reply | Threaded
Open this post in threaded view
|

Re: return-path test

David B Funk
On Sat, 4 Jun 2005, Craig Jackson wrote:

> I notice that the return-path: is often different from the from:
>
> But my return-path: tests all fail. Here's one:
>
> header RETPATH_NUMS_CJ Return-path =~ /[0-9]{6,}/
> score RETPATH_NUMS_CJ 3.000
>
> It will successfully match From:addr or Reply-To: but Return-path is
> silent. Yes, I tried Return-Path, but I believe this is case insensitive.
>
> Can SA do this?

Yes, -IF- the Return-Path header is present in the stuff that gets
passed to your SA. 'Return-Path' header is usually not added by the MTA
but by the delivery agent at delivery time. If you're calling SA before
that point, then that header will not be in the stuff that SA has to
look at.
Return-Path is often used as a way to represent the envelope sender
address in the header of a message. As that may change during the
routing/processing of the message (EG a mail-list ;) it usually isn't
generated until the final delivery point.

So if you're using SA as a sendmail-milter, postfix filter, etc
it's entirely probable that the Return-Path header isn't in the
message that SA sees.

I use SA with a sendmail-milter and ran into this issue early on.
I ended up hacking the milter code to get it to synthesize a Return-Path
header in the data as it passed a message to spamd.

--
Dave Funk                                  University of Iowa
<dbfunk (at) engineering.uiowa.edu>        College of Engineering
319/335-5751   FAX: 319/384-0549           1256 Seamans Center
Sys_admin/Postmaster/cell_admin            Iowa City, IA 52242-1527
#include <std_disclaimer.h>
Better is not better, 'standard' is better. B{
Reply | Threaded
Open this post in threaded view
|

Re: return-path test

Craig Jackson
David B Funk wrote:

> On Sat, 4 Jun 2005, Craig Jackson wrote:
>
>
>>I notice that the return-path: is often different from the from:
>>
>>But my return-path: tests all fail. Here's one:
>>
>>header RETPATH_NUMS_CJ Return-path =~ /[0-9]{6,}/
>>score RETPATH_NUMS_CJ 3.000
>>
>>It will successfully match From:addr or Reply-To: but Return-path is
>>silent. Yes, I tried Return-Path, but I believe this is case insensitive.
>>
>>Can SA do this?
>
>
> Yes, -IF- the Return-Path header is present in the stuff that gets
> passed to your SA. 'Return-Path' header is usually not added by the MTA
> but by the delivery agent at delivery time. If you're calling SA before
> that point, then that header will not be in the stuff that SA has to
> look at.
> Return-Path is often used as a way to represent the envelope sender
> address in the header of a message. As that may change during the
> routing/processing of the message (EG a mail-list ;) it usually isn't
> generated until the final delivery point.
>
> So if you're using SA as a sendmail-milter, postfix filter, etc
> it's entirely probable that the Return-Path header isn't in the
> message that SA sees.
>
> I use SA with a sendmail-milter and ran into this issue early on.
> I ended up hacking the milter code to get it to synthesize a Return-Path
> header in the data as it passed a message to spamd.
>

You are right. Return-path is not being passed to Exim. RFC says it
should not be available except at delivery time according to the Exim
docs. But it can be made available simply by setting a custom header in
the RCPT acl:

warn message = X-SA-Ret: $sender_address

in the DATA acl, SA can test that header instead of the Return-path:

Thanks,
Craig