Mail::MIMEDefang::Actions - actions methods for email filters
Mail::MIMEDefang::Actions are a set of methods that can be called
from mimedefang-filter to accept or reject the email message.
- action_rebuild
- Sets a flag telling MIMEDefang to rebuild message even if it is
unchanged.
- action_add_entity
- Makes a note to add a part to the message. Parts are *actually* added at
the end, which lets us correctly handle non-multipart messages or
multipart/foo where "foo" != "mixed". Sets the rebuild
flag.
- action_add_part
- Makes a note to add a part to the message. Parts are *actually* added at
the end, which lets us correctly handle non-multipart messages or
multipart/foo where "foo" != "mixed". Sets the rebuild
flag.
- process_added_parts
- Actually adds requested parts to entity. Ensures that entity is of type
multipart/mixed.
- Makes a note for milter to insert a header in the message in the specified
position. May not be supported on all versions of Sendmail; on unsupported
versions, the C milter falls back to action_add_header.
- Makes a note for milter to add a header to the message.
- Makes a note for milter to change a header in the message.
- Makes a note for milter to delete a header in the message.
- Makes a note for milter to delete all instances of header.
- action_accept
- Makes a note for milter to accept the current part.
- action_accept_with_warning
- Makes a note for milter to accept the current part, but add a warning to
the message.
- message_rejected
- Method that returns True if message has been rejected (with action_bounce
or action_tempfail), false otherwise.
- action_drop
- Makes a note for milter to drop the current part without any warning.
- action_drop_with_warning
- Makes a note for milter to drop the current part and add a warning to the
message.
- action_replace_with_warning
- Makes a note for milter to drop the current part and replace it with a
warning.
- action_defang
- Makes a note for milter to defang the current part by changing its name,
filename and possibly MIME type.
- action_external_filter
- Pipes the part through the UNIX command $cmd, and
replaces the part with the result of running the filter.
- action_quarantine
- Makes a note for milter to drop the current part, emails the MIMEDefang
administrator a notification, and quarantines the part in the quarantine
directory.
- action_sm_quarantine
- Asks Sendmail to quarantine message in mqueue using Sendmail's
smfi_quarantine facility.
- get_quarantine_dir
- Method that returns the configured quarantine directory.
- action_greylist($dbh,
$sender, $recipient, $ip, $min_retry, $max_retry)
- $dbh is a DBI handle connected to the greylist
database. $dbh object should be initialized in
filter_initialize sub. $min_delay and
$max_delay are the minimum and maximum retry
delays respectively, those parameters are optional (default values are 300
and 14400 seconds). If an SMTP client tries to deliver email faster, it
will continue to be greylisted. $ip,
$sender and $recipient are
used to identify a unique connection. If it waits longer, it will begin
the greylisting test from scratch. $ip is the IP
address of the connecting SMTP client, to greylist an entire subnet you
can pass the subnet instead. In
"filter_cleanup" sub, the database
connection should be closed.
Returns "tempfail" if a new sender sends the email
from a new ip address, "continue" if the email is allowed to
pass or "reject" if the email has been greylisted for too much
time.
- action_quarantine_entire_message
- Method that puts a copy of the entire message in the quarantine
directory.
- action_bounce
- Method that Causes the SMTP transaction to fail with an SMTP 554 failure
code and the specified reply text. If code or DSN are omitted or invalid,
use 554 and 5.7.1.
- action_discard
- Method that causes the entire message to be silently discarded without
notifying anyone.
- action_notify_sender
- Method that sends an email to the sender containing the
$msg.
- action_notify_administrator
- Method that sends an email to MIMEDefang administrator containing the
$msg.
- action_tempfail
- Method that sends a temporary failure with a 4.x.x SMTP code. If code or
DSN are omitted or invalid, use 451 and 4.3.0.
- add_recipient
- Signals to MIMEDefang to add a recipient to the envelope.
- delete_recipient
- Signals to MIMEDefang to delete a recipient from the envelope.
- change_sender
- Signals to MIMEDefang to change the envelope sender.
- action_replace_with_url
- Method that places the part in doc_root/{sha1_of_part}.ext and replaces it
with a text/plain part giving the URL for pickup.