Return Home

Overview

<attach>
<body>
<body>
<clientip>
<comment>
<configuration>
<copy>
<delay>
<dnslookup>
<domainquery>
<email>
<expression>
<expressions>
<file>
<filter>
<filters>
<header>
<header>
<helo>
<http>
<imap>
<index>
<inputpath>
<ipquery>
<log>
<mailfrom>
<maxbuffer>
<maxlines>
<message>
<modifysource>
<multiplerecipients>
<option>
<parser>
<path>
<quickresult>
<rcptto>
<result>
<results>
<return>
<rule>
<rules>
<scope>
<select>
<smtpextendedstatuscode>
<smtpstatuscode>
<target_filter>
<target_index>
<test>
<title>

Boolean type

Macros
Regular Expressions

Node: select, target_filter, target_index

<select on="recipient_domain" regex="match_domain" behavior="single">
[target1]
[target2]
.
.
.
[targetN]
</select>

<select on="recipient_user" regex="match_user" behavior="single">
[target1]
[target2]
.
.
.
[targetN]
</select>

<select on="client_ip" regex="match_user" behavior="single">
[target1]
[target2]
.
.
.
[targetN]
</select>

<select on="client_ip" network="n.n.n.n/n" behavior="single">
[target1]
[target2]
.
.
.
[targetN]
</select>

<select on="all" behavior="single">
[target1]
[target2]
.
.
.
[targetN]
</select>

<target_filter type="content" file="filter_filename" name="filter_name"></target_filter>

<target_index file="index_filename" name="index_name"></target_index>

Attributes:

on

recipient_domain
recipient_user
client_ip
all

regex

a RegEx expression that will be tested against the domain or mailbox name portion of the recipient email address

type

content
recipient
sender
clientip

file (optional)

name of the file containing the specified index or filter (if not specified index or filter is expected in the current file)

name

name of the index or filter in the specified file to use against the email

network

IP network address in the form "n.n.n.n/n"; For example, 10.0.0.0/8 specified network 10.0.0.0 with a netmask of 255.0.0.0; For use only with <select on="client_ip">

behavior (optional)

all
single
(default)

When "all" is specified, every target is processed to find matching items to include. When "single" is specified, only the first target to return a matching item is processed at this level.

Notes

The index is used to determine the target filter to use for a particular case. It is evaluated sequentially until a <target_filter> node is found. A select node limits the evaluation of the contents of the node to only those recipient email addresses that match. If no <target_filter> is found no processing occurs against an email. It is recommended that you define a default filter with a specific action rather than allow no filter to be selected.

Use the behavior attribute to control selection of multiple target filters. For example, you might want to have a <target_filter> selected based on domain, and those domains not explicitly provided for would use a default target_filter. Create a <select> node with behavior="single" containing <select on="recipient_domain"> nodes. As the last entry have a <target_filter> node with the default target filter. When this <select> node is processed, a domain explicitly matching will select the specific target filters. If no domain matches, then the default target filter is selected. With behavior="all", you would end up with the target filters on the matched <select> nodes AND the default target filter.

This type of node can be embedded in the contents of itself to further constrain the evaluation.

Some SMTP mail servers may not provide sufficient information to the content filter for every type of <target_filter>. When information is not available, that <target_filter> type is never processed against the email.

Some SMTP mail servers may not provide sufficient information to process all <select> nodes. If no client IP address is available, "no_client_ip" is used against the regex expressions and network addresses will never match. If no recipient domain or user is available, "no_rcpt_to_domain" and "no_rcpt_to_mailbox" are used, respectively.

RegEx comparisons performed on <select> nodes are always case insensitive.

Macros are expanded in the <target_index> and <target_filter> attributes file and name.

Future Enhancements:

Revision History:

- <target_index> requires v2.0.20 or higher.