Community Discussions and Support
Transaction filtering - S command behavior

Yes, S in that position should stop all transaction filtering:

To understand the difference between the 'X' and 'S' actions, you need to be aware that transaction filtering is done in several "passes", each pass testing a different state of the SMTP transaction. The 'X' action only exits from the current pass, meaning that future passes will still take place. The 'S' action, however, exits from the current pass and suppresses all further transaction filtering on the message altogether.
So if that doesn't work you will need to check that the expression in "*theserver*" actually does match the server's HELO string (and of course make sure that you want the rule to trigger on no hit if you put N in the 3rd position).


/Rolf
<p>Yes, S in that position should stop all transaction filtering:</p><blockquote><i>To understand the difference between the 'X' and 'S' actions, you need to be aware that transaction filtering is done in several "passes", each pass testing a different state of the SMTP transaction. The 'X' action only exits from the current pass, meaning that future passes will still take place. The 'S' action, however, exits from the current pass and suppresses all further transaction filtering on the message altogether.</i></blockquote>So if that doesn't work you will need to check that the expression in "*theserver*" actually does match the server's HELO string (and of course make sure that you want the rule to trigger on no hit if you put N in the 3rd position). /Rolf

Hi all

I am a bit confused about the 'S' command in the transaction rules.
The rules explanation says: "The
 'S' action, however, exits from the current pass and suppresses all
 further transaction filtering on the message altogether."

I designed a filter wanting to target a specific sending smtp server, and took the following approach:

H, "*theserver*", S-N
R, "an address", R, "554 go away"


I expected this to work as follows: if the helo does not contain 'theserver' , the 'S' action would trigger, and all subsquent filters would be omitted
for this message.
But the 'R' rule is allways triggered.

What am I missing?

Henk

Hi all I am a bit confused about the 'S' command in the transaction rules. The rules explanation says: "The  'S' action, however, exits from the current pass and suppresses all  further transaction filtering on the message altogether." I designed a filter wanting to target a specific sending smtp server, and took the following approach: H, "*theserver*", S-N R, "an address", R, "554 go away" I expected this to work as follows: if the helo does not contain 'theserver' , the 'S' action would trigger, and all subsquent filters would be omitted for this message. But the 'R' rule is allways triggered. What am I missing? Henk

Transaction level filtering does unfortunately not allow combining all kinds of rules. Depending on what you want to accomplish here are some examples that should work.

 
If you want to stop all mail from 'theserver':

 H, "*theserver*", R, "554 go away"

If you want to allow all mail from 'theserver' and stop everything else sent to 'an address':

H, "*theserver*", S

R, "an address", R, "554 go away"

 /Rolf

 

<p>Transaction level filtering does unfortunately not allow combining all kinds of rules. Depending on what you want to accomplish here are some examples that should work. </p><p>  If you want to stop all mail from 'theserver':</p><blockquote><p><i> H, "*theserver*", R, "554 go away"</i></p></blockquote><p>If you want to allow all mail from 'theserver' and stop everything else sent to '<i>an address'</i>:</p><blockquote><p><i>H, "*theserver*", S</i></p><p><i>R, "an address", R, "554 go away"</i></p></blockquote><p> /Rolf</p><blockquote><p> </p></blockquote>

HI Rolf

Isn't your example exactly the same as mine?
Using:

H, "*theserver*", S-N    ( only difference is the N )

I expected the filtering to stop for that message, in this case skip the R filter. That doesn't happen.
It skips filtering the helo, but still filters other transactions in the same message.

HI Rolf Isn't your example exactly the same as mine? Using: H, "*theserver*", S-N    ( only difference is the N ) I expected the filtering to stop for that message, in this case skip the R filter. That doesn't happen. It skips filtering the helo, but still filters other transactions in the same message.
live preview
enter atleast 10 characters
WARNING: You mentioned %MENTIONS%, but they cannot see this message and will not be notified
Saving...
Saved
With selected deselect posts show selected posts
All posts under this topic will be deleted ?
Pending draft ... Click to resume editing
Discard draft