sample-regexp-body.cf   [plain text]


# Sample regexp message body filter lookup "table". See regexp_table(5)
# for a description of the syntax.
#
# Mail body lines are filtered one line at a time. MIME headers are
# filtered as message headers, i.e. not as part of the mail body.
#
# The general format of a table entry is PATTERN RESULT.
#
# The pattern format is `/regexp/flags' or `!/regexp/flags' where regexp
# is a regular expression as found in re_format(7), and flags are
#   i: toggle ignore case (REG_ICASE - default is to ignore case)
#   x: toggle extended expression (REG_EXTENDED - default is extended)
#   m: toggle multiline mode (REG_NEWLINE - default is non-multiline mode)
#
# In order for a line to match, the regexp must match. If the regexp
# is prefixed with !, it must not match.  The first line with a successful
# (non)match wins, terminating processing of the ruleset.
#
# A block of table entries may be "enclosed" by a line with `if
# /pattern/flags' or `if !/pattern/flags' and a line with `endif'.
# This causes the block of table entries to be examined only when
# the pattern produces a successful (non)match. The `if..endif' may
# be nested. There currently is no `else' operator.
#
# The result is one of the following:
# REJECT [optional text...]
#       Reject the entire message. The optional text is sent to the
#       originator and is logged to the maillog file.
# IGNORE Silently ignore the body line.
# WARN [optional text...]
#       Log the body line and the optional text. This is useful
#       for testing. When the pattern is OK, change the WARN into a
#       REJECT or into a DISCARD.
# HOLD [optional text...]
#       Place the message on the hold queue. Mail on hold can be
#       inspected with the postcat command, and can be destroyed or
#       taken off hold (i.e. delivered) with the postsuper command.
#       The matched body line is logged together with the optional text.
# DISCARD [optional text...]
#       Claim successful delivery and silently discard the message.
#       The matched body line is logged together with the optional text.
# FILTER transport:nexthop
#       After the message is queued, send the entire message through
#       a content filter. This requires different cleanup servers
#       before and after the filter, with header/body checks turned
#       off in the second cleanup server. This overrides the main.cf
#	content filter setting.

# Skip over base 64 encoded blocks. This saves lots of CPU cycles.
# Expressions by Liviu Daia. Amended by Victor Duchovni.
~^[[:alnum:]+/]{60,}[[:space:]]*$~	OK

# Your own body patterns go here.